## FE
- 지금까지 어떻게 구현됐나 (시연)
- develop/web 기준으로 시연
- 네이버 아이디 로그인
- 캘린더
- 구현하면서 특별히 힘준💪 부분이 어딘가
- 상태 관리와 컴포넌트 재랜더링에 대해 고민하며 코드를 작성하였습니다.
- 앞으로 남은 부분, 계획, 어려운 점/막혀있는 부분은
- 남은 부분 및 계획
- css 디자인 통일, 색상 변경 css
- 메인 페이지, 보드 상세 페이지
- 어려운 점 / 막힌 부분
- 상태 관리하는 부분이 어려웠습니다.
- 로그인이 안 되어있을 때 화면이 깜빡 거리며 로그인 화면으로 전환
- 리스트, 카드 순서 유지? 변경? 구현방법에 대해서..,,
- 코드 레벨에서 꼭 피드백 받고 싶었던 부분은 어딘가 <- 이건 길어지면 개별 코칭으로 따로 이어가겠습니다.
- API 호출 시 에러 처리는 어떻게?
## BE
- 지금까지 어떻게 구현됐나 (시연)
- 전체 보드 조회 API
- 보드 생성 API
- 본인 정보 조회 API
- 일별 카드 개수 조회 API
- 보드 상세 조회 API
- 네이버 클라우드 배포
- 구현하면서 특별히 힘준💪 부분이 어딘가
- 테스트 코드 작성
- 에러 처리
- 데이터베이스 접근
- 앞으로 남은 부분, 계획, 어려운 점/막혀있는 부분은 뭔가
- 남은 부분 및 계획
- 남은 API...를 테스트 코드와 함께 구현
- 어려운 점 / 막힌 부분
- typeORM으로 복잡한 쿼리를 작성하는 것이 어려웠습니다.
- 객체지향적으로 개발하기 어려웠습니다.
- 코드 레벨에서 꼭 피드백 받고 싶었던 부분은 어딘가 <- 이건 길어지면 개별 코칭으로 따로 이어가겠습니다.
- 요청 유효성 검사
- dto 활용
## iOS
- 지금까지 어떻게 구현됐나 (시연)
- 구현하면서 특별히 힘준 부분이 어딘가
- 코드 모듈화: 뷰의 속성들을 적용하는 코드를 분리하려고 했습니다.
- 코드 컨벤션: 주기적으로 페어프로그래밍을 통해 리팩토링하는 시간을 가졌습니다
- 테스트 가능한 구조로 짜기 위해 노력했습니다.
1. 의존성 역전 원칙 + 주입
2. 역할 분리(단일 책임 원칙)
1. 프레젠테이션 로직은 Coordinator
2. 비즈니스 로직은 ViewModel
3. UI 로직은 ViewController
- 앞으로 남은 부분, 계획, 어려운 점/막혀있는 부분은 뭔가
- 계획
- HIG: accessibility
- WidgetKit
- PushKit
- 오프라인 기능: Realm
- 어려운 점 / 막혀있는 부분
- 테스트코드 작성: ViewModel 을 제대로 테스트하는 방법
- API 호출 시점
1. 업데이트API를 호출하고 로컬에서만 바꿔주고 detailcard를 나간 후 다시 들어오면 fetch
2. 업데이트API를 호출하고 detailcard의 viewWillappear에서 다시 fetch
- 코드 레벨에서 꼭 피드백 받고 싶었던 부분은 어딘가
- view가 CollectionView를 갖는 것에 대해(DataSource, Delegate 포함)
- DataSource 를 서브클래싱해서 DataSource 의 메소드(numberOfItemsInSection, cellForItemAt) 를 분리하는 것이 좋을까요 ?
- shadowOffset 쓰면 UI Debugging 할 때 비효율적이라는 경고창이 나오는데 shadowPath 를 쓰는 것이 좋을까요 ?
# FE 피드백
- 같은 기능이 두 개가 존재한다면 혼란을 일으킬 수 있음
- 보드 생성 버튼이 로그아웃 근처에 있음
- UI 깔끔함
- 캘린더 바디에 너무 많은 기능을 담당하고 있음
- row로 묶어 놓을 필요 없음 -> date 단위로
- axios interceptor request, 글로벌 설정이 존재함
- request라는 axios wrapper를 사용하게 되면 부가적인 axios 설정을 사용하지 못함
- document.location vs window.location.href
- Modal 구현 시 dialog (native element로 사용할 수 있음)
- 카드, 리스트 이동 -> integer
- 대기 중일 때 로그인 버튼 disable, 로딩 중 페이지 띄워주기
- API 호출 중이라는 피드백을 사용자에게 줘야 함
# BE 피드백
-