Skip to content

Conversation

@danikim8
Copy link
Collaborator

@danikim8 danikim8 commented Jun 22, 2025

🏁 스프린트 미션 11 - 시안 확인

🔗 참고 링크

스프린트 미션 11 Figma 디자인 확인하러 바로가기


✅ 요구사항 체크리스트

기본 요구사항

공통

  • Github에 위클리 미션 PR을 만들어 주세요.
  • React 및 Express를 사용해 진행합니다.
  • TypeScript를 활용해 프로젝트의 필요한 곳에 타입을 명시해 주세요.
  • any 타입의 사용은 최소화해 주세요.
  • 복잡한 객체 구조나 배열 구조를 가진 변수에 인터페이스 또는 타입 별칭을 사용하세요.
  • Union, Intersection, Generics 등 고급 타입을 적극적으로 사용해 주세요.
  • 타입 별칭 또는 유틸리티 타입을 사용해 타입 복잡성을 줄여주세요.
  • 타입스크립트 컴파일러가 에러 없이 정상적으로 작동해야 합니다.

프론트엔드

  • 기존 React(혹은 Next) 프로젝트를 타입스크립트 프로젝트로 마이그레이션 해주세요.
  • TypeScript를 활용해 프로젝트의 필요한 곳에 타입을 명시해 주세요.

백엔드

  • 기존 Express.js 프로젝트를 타입스크립트 프로젝트로 마이그레이션 해주세요.
  • tsconfig.json 파일을 생성하고, 필요한 컴파일러 옵션을 설정해야 합니다. (예: outDir).
  • TypeScript 관련 명령어를 package.json에 설정해 주세요. (예: 빌드 및 개발 서버 실행 명령어).
  • ts-node와 nodemon을 사용하여 개발 환경을 구성합니다.
  • nodemon과 함께 ts-node를 사용하여 .ts 파일이 변경될 때 서버를 자동으로 재시작하도록 설정합니다.
  • Mongoose나 Prisma 등 ORM을 사용하는 경우, 모델에 대한 인터페이스 또는 타입을 정의합니다.
  • 필요한 경우, declare를 사용하여 타입을 오버라이드하거나 확장합니다.


📸 스크린샷

스프린트 미션 11


📝 멘토님에게 남길 메시지

  • 셀프 코드 리뷰를 통해 질문 이어가겠습니다. 🚀
  • 에러 수정이 아직 안됐습니다.... ㅜㅜ

@danikim8 danikim8 changed the title Sprint 11 작업 완료 [김단이] Sprint11 Jun 22, 2025
});

export type SignUpDTO = z.infer<typeof SignUpSchema>;
export type SignInDTO = z.infer<typeof SignInSchema>; No newline at end of file
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

zod 활용 잘 하셨어요!!

userId: number;
};
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

generic 활용 너무 잘 하셨어요. 팀 프로젝트 시 팀원들한테 지식공유 해주시면 더 좋을 것 같아요.

code?: number;
};
error.code = 403;
throw error;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

에러 처리도 깔끔합니다!

export async function getArticleById(
id: number,
userId?: number
): Promise<any | null> {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

다른 코드에서는 generic 등 잘 쓰셨는데 any를 지양하는 방법 한번 고민해보세요!

import multer from "multer";
import multer, { StorageEngine } from "multer";
import path from "path";
import fs from "fs";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fs/promise를 안 쓰시고 동기를 쓰신 이유가 궁금합니다!

@loquemedalagana loquemedalagana merged commit ded7b1e into codeit-sprint-fullstack:express-김단이 Jun 25, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants