-
Notifications
You must be signed in to change notification settings - Fork 10
3주차 발표자료 및 피드백
dailynj edited this page Nov 12, 2021
·
2 revisions
- 지하 공유오피스를 싼 가격에 계약했어요!
- 입주기념 치킨회식도 하고 다같이 모여서 열심히 개발했습니다.
- 빼뺴로데이에는 빼뺴로로 당충전도 했어요~
- 지난주에 분량을 모두 마무리하지 못했어서 해당 분량도 함께 구현하며 이번주를 보냈습니다.
- 그 결과 지난주 분량은 모두 마무리하고 이번주 분량은 76.19% 진행했습니다.
- 이번주에 진행하지 못한 분량은 주말과 다음주를 이용해 채워나갈 예정입니다.
- 저희는 그라운드룰로 PR마다 리뷰를 달도록 했어요
- 다른 팀도 많이하는 것같긴한데, 혹시 안하는 팀이 있으면 해보세요. 서로의 코드에 대한 이해도가 높아지고 코드 퀄리티도 개선됩니다!
- 어플이 처음 켜지면 오늘 날짜로 해당 달의 CoreData 만을 가져오고 이전달, 다음달 버튼을 누르면 해당 달만을 fetch 해옴
- viewModel에 이를 저장하고 있다가 cell에 날짜, face image 를 보내주어 달력을 그립니다.
- cell 을 클릭하면 선택한 날의 정보를 delegate 를 통해 modal 로 띄워줍니다.
- modal 에 저장되었는 날짜를 viewModel에서 검색해서 해당 날의 모임목록만을 보여줍니다.
- listCollectionCiewCell 을 재사용하여 사용했습니다.
- 기존 등록화면의 ViewController를 버디 선택화면의 delegate로 주입하여 사용합니다.
- 따라서 사용자가 버디를 체크하고 완료버튼을 누르면 이 delegate를 통해 기존의 등록화면에도 체크된 버디를 반영해줍니다.
- registerViewModel에 현재 등록 화면에 필요한 값들이 있습니다.
- 값이 바뀔때마다 publish 해주고 있고, registerViewController에서는 이를 Combine을 이용해 화면에 바뀐 값들을 보여줍니다.
- 시작 날짜, 종료 날짜, 모임 목적, 버디 목록, 메모, 사진목록은 @Published property wrapper를 사용하였습니다.
- 모임 등록이 성공하거나, 실패해했을 경우는 Combine의 PassthroughSubject를 이용해 Publish해 주어, 마찬가지로 Combine을 이용RegisterViewController에서 이를 통해 alert를 띄어주는 것과 navigation pop 되도록 하였습니다.
- CoreDataManager에 Gathering 객체를 이용해 CoreData Enity인 GatheringEnity형태로 저장하는 메서드를 구현하였고, gatheringUseCase에서 CoreDataManager를 이용해 저장하도록 구조를 잡은 상태입니다.
- CoreData에 저장된 내용을 불러와 목록 형태로 보여주는 화면입니다.
- DiffableDataSource로 되어있으며, textFieldDidChangeSelection을 이용하여 검색어를 filter 해주는 방법으로 검색기능을 구현 하였습니다.
- Bubble chart 부분을 제외한 통계 화면의 뷰는 구현이 완료된 상태입니다.
- 현재는 데이터를 받아오지 못하는 상태이기 때문에 구현한 뷰를 isHidden = true를 한 후 데이터가 없다는 화면을 표시해 주었습니다.
- ViewModel에 저장되어있는 데이터를 filtering
- 매번 CoreData에서 fetch해오는게 리스크가 크다고 판단