💫 Project
아웃소싱 프로젝트 설계
MNY
2024. 6. 20. 00:02
728x90
반응형
2024.06.19.(수)
팀 프로젝트
- 진행 상황
// ✨표시는 새롭게 알게 된 것- 주제 정하기 ex) 배민, 요기요, ...
- 패키지 도메인 형으로 결정
- API 명세서 작성
- ERD 다이어그램 작성
- 역할 분담
- Github Issue TEMPLATE 생성
- ✨ Github Projects 생성
- ✨ PullRequest TEMPLATE 생성
- 주제 정하기
- 프로젝트 명 : 욕심쟁이(GreedyPeople)
- 소개
- 한 줄 정리 : 욕심내서 일한자 욕심내서 먹어라! 🍔🍖🍱🍦🍨
- 내용 : 음식 주문 및 리뷰 작성이 가능한 음식 배달 어플리케이션
- API 명세서 & ERD 다이어그램 작성
- figma board : API 명세서 & erd 설계
- erd cloud : erd 다이어그램 연관관계 정리
- 역할 분담
- 사용자 인증 기능 & 프로필 관리 기능
- 백 오피스 : Me
- 좋아요 & 팔로우 기능 / 소셜 로그인(못하면 어쩔 수...)
- 가게 및 메뉴 조회 / order & review CRUD 기능
- 중요한 부분 // github 활용
- Github Issue TEMPLATE 생성
Task | Bug |
- Github Projects 생성
- PullRequest TEMPLATE 생성
- 튜터님의 피드백
- varchar 범위 수정 고려해볼것!
- enum은 mysql에서만 사용가능한 것 알고 있나? (인덱스로 사용할 수 있는 장점)
- price를 int로 설정한 이유가 있나?
- <코드 컨벤션> : @JsonInclude(JsonInclude.Include.NON_NULL) 여부 고민
- NULL 값이 아닌 값들은 JSON 형태로 가지 않겠죠?
- 프론트엔드 입장에서는 찾으려는 데이터 없어서 undefined 오류가 날수도!
- 제목을 바로 보면 알게끔 내용 추가
- 개발환경의 패키지?도 고려해보세요 (패키지 구조!!!-생각보다 중요! 설계를 가늠할 수 있기 때문)
클래스나 다른 네이밍 잘 고려해볼 것
- 튜터님과 질의 응답
- Q : 좋아요 테이블이 두 개면 좋은 이유가 무엇인가요?
- A : 한개의 테이블 이면 여러 테이블이 하나의 테이블을 바라보고 데이터 적재
- 테이블을 스캔한다고 생각했을때 성능이 떨어질 것을 고려해서 하나로 통합하여 사용하는 것은 좋지 않음
- 그렇기에 해당 주 테이블이 될 수 있는 테이블에 서브 테이블 정도로 생각해서 만드는 것이 성능이나 관리측면에서 더 나을수있다
- Q : 좋아요 생성일자가 필요할까요?
- A : 대부분의 테이블에는 생성일자가 필요하다 언제 발생이 되었는지 알아야하기 때문에 추적을 위해서
- 생성된 로우의 상태가 변화할때같은 경우에는 생성일자가 필요함
- 변경되지 않고 축척되는 데이터일 경우에는 불필요함(?)
- Q : 리뷰 수정(배민에서 리뷰 수정이 된다면 참사가 되지 않을까요? )
- A : 프로그램 상이 아닌 정책 상 한 번 작성하면 수정이 불가능하지만 저장했을 때는 그냥 저장만 한 상태고 등록확정을 하면 그 때 부터는 수정이 불가능하게 설정하는 것을 고려하면 좋을 것 같다
- 패키지 설계의 중요성
- 패키지만 보고도 이게 어떤 프로젝트인지 알 수 있기에 중요
- Q : 좋아요 테이블이 두 개면 좋은 이유가 무엇인가요?
코드 카타
* 프로그래머스로 진행
- SQL
- 없어진 기록 찾기
- 과일로 만든 아이스크림 고르기
- 재구매가 일어난 상품과 회원 리스트 구하기
- 최댓값 구하기
오늘의 회고
- 12시간 중 얼마나 몰입했는가?
역시 프로젝트 펏 날은 12시간을 모두 몰입하지..
하얗게 불태웠다..
- 오늘의 생각
백오피스 부분이 좀 많긴한데..
낮까지만 해도 다 할 수 있어! 였는데
갑자기 꺽였다.. 주말에 카페가서 코딩해야지...
- 내일 학습할 것은 무엇인지
일단, github 이슈 작성이랑 환경설정 그리고 개인 환경 구축 완료!!!
728x90
반응형