## :smiley: 참여자
- S010 김승언 👑
- S015 류연수 👑
- S018 박재현 👑
- S065 홍동현 👑
<br>
## :file_cabinet: 과정
- 각자의 코드를 공유
- 구현 중 이슈에 대해 토론
<br>
## :open_book: 피어세션 의견
### Sigleton
- 싱글턴을 쓰면 프로토콜 추상화를 하자 꼭! 테스트가 가능해진다.
- 근데, 주입에 대해 많은 고민을 하게 됨... 그냥 사용을 최소화하는 방법을 생각하자
-
### 네트워크 레이어
- API 요청, 응답에 대한 계층을 나누고 프로토콜로 추상화하여, 테스트 가능한 구조로 구현
- 원하는 결과값을 반환하는 모의 객체를 만들어 주입해주는 방식으로 테스트
### Rechability
- status 확인은 어디서? AppDelegate? SceneDelegate?
### Cache
- downLoadTask로 받아온 Data는 Temp에 저장해 두고 다운로드 완료가 되었다면 Temp에서 사라진다.
- NSCache는 메모리에 저장
- FileManager를 사용해서 CachesDirectory에 저장(Disk)
### CollectionView
- collectionView cell delete시, 데이터 삭제 후 cell.deleteItems
(fade 애니매이션 후 reloadItem을 해주는 느낌으로 동작함)
- compositional layout을 사용할 때 group의 count를 지정하는 것 말고 column의 개수를 화면 크기에 맞춰 자동으로 증가시키는 방법은 없을까? (flowlayout처럼)
### Navigation push / pop
- pop(animated: false)과 push(animated: true)를 순서대로 호출하면 navigation이 사라져 push가 작동되지 않는다.
<br>
## :honeybee: 꿀팁
### 다크모드
시뮬레이터에서 아래 단축키를 누르면 `다크모드` <-> `라이트모드` 전환이 가능하다.
`Command`+ `Shift`+ `a`
### NumberFormatter
```swift
let numberFormatter = NumberFormatter()
numberFormatter.numberStyle = .decimal
guard let result = numberFormatter.string(from: NSNumber(value: total)) else { return "0" }
```
### 맥북 터치바가 뜨끈뜨끈해지면 하리보를 올려 먹으면 맛있다.
**!주의, 너무 뜨거우면 하리보 사망**