4/1 TIL
금일의 목표 과제 및 진행 상황
목표 과제 :
오늘은 실전 프로젝트 2일차로 도서관 서비스를 위한 기본 프론트 영역 작업을 실시 했습니다. 프론트 영역은 js를 제외하고 html과 css를 가지고 실시 했으며, css는 주로 부트스트랩을 사용.
진행 상황
프론트 영역 작업 페이지 <구현 완료> :
로그인, 회원가입,메인 페이지, 검색 결과 페이지, 마이 페이지
참고 내용
오늘 새롭게 배우고 성장한 부분
프로젝트의 품질을 높이기 위한 고민과 방안
현재 98만건의 도서 데이터 확보 완료. csv → RDBMS import 작업까지 완료. (23/4/1 인준)
→ 우리가 4/1 적용하고 업데이트 한 git flow에 대한 내용 노션에 명시 필요.
→ 트래픽에 대한 부하 관련 슈팅을 위해 구체적인 부하 테스트 계획 필요.
코드 통합 방법(브랜치 전략)은 좀 더 디테일해질 필요가 있을 것 같습니다. 대부분은 Github을 사용하고 있으므로, Git flow나 Trunk based development 등 몇 가지 코드 통합 방법을 한번 빠르게 학습해보시고, 프로젝트에 적합한 방안으로 확립해주시면 좋겠습니다. 일반적으로 Git flow 전략으로 대부분의 프로젝트는 커버가 가능하니, 학습할 시간이 많지 않다면 Git flow로 진행하셔도 좋습니다.
→ git flow
→ 과제 : git flow 정리해서 노션에 작성 작업.
학습자료 항목에 적어두신 2개의 책은 지금 읽기엔 별로 추천드리고 싶진 않습니다. Mysql 같은 경우는 결국 공식 문서(https://dev.mysql.com/doc/refman/8.0/en/)를 읽는게 가장 바람직하고, 선택적으로 필요하신 부분을 학습하셔야 할 때에도 마찬가지입니다. 가상 면접... 이 책은 실제로 제가 약 3회독을 한 책인데, 지금 읽으시는 것보다는 현재 백엔드 아키텍쳐에 들어가는 주요한 요소들(Java, Spring ...)에 먼저 집중해서 학습하시는게 좋습니다. 즉, 설계를 완성한뒤에 구현까지 다 하시고 난 뒤에 읽으셔도 늦지 않습니다.
요구사항은 명확하고 자세하게 잘 정의해주셨습니다. MVP 스코프도 적절합니다. 추후에 기능을 구현하면서 더 추가적인 요구사항들이 생길 수 있는데, 그런 여지를 고려하면서 인터페이스를 설계해주시는게 중요합니다. 유연한 인터페이스 설계에 대한 한 가지 팁을 드리자면 처음부터 모든걸 다 정의하려고 하기 보다 반드시 필요한 것들만 정의하고, 나머지는 아무것도 없는 상태로 유지하면서 코드 구조에서 어디에서 반복되거나 중복되는 부분이 발생하는지를 관찰해보시기 바랍니다. 그런데, 구현 계획에서 내용들이 다소 추상적입니다. 검색 엔진 구현에서 어떤 DB를 사용하고, 도서 데이터를 인덱싱한다면 어떤 필드를 기준으로 인덱싱을 할 것인지 등의 좀 더 구체적인 구현 계획이 나와있어야 합니다. 다른 항목들도 마찬가지입니다. 구현 계획의 각 요소에 대해 최대한 자세하게 서술해주세요. 그 내용을 기반으로 1주차부터 더 심층적인 피드백을 드리면 좋을 것 같습니다. 그리고 API 명세와 ERD가 없는 상태이기 때문에 추상적으로 나올수밖에 없는걸로 보이는데, 현재 기획안과 요구사항을 기반으로 API 명세서와 ERD
를 반드시 작성해주시기 바랍니다.
→ 구현 계획에 적힌 필요 기술들에 대한 상세한 내용이 부족하다. 어떤 라이브러리를 쓸지, 어떤 기술들이 흐름으로 흘러갈지.
→ 구현 기술에 대한 정보 파악을 위해 전 기수의 깃 코드들을 살펴보자.