---
# System prepended metadata

title: '[38번 회의실] 5주차 피어세션'

---

# [38번 회의실] 5주차 피어세션

## 참여자
- S014 남기범
- S015 류연수
- S030 양어진
- S057 조정래

## 목적
- 공부하면서 캠퍼가 '삽질' 하며 배운 지식들을 공유하며 팀원들의 향후 개발에 도움
- 캠퍼 개인이 개발 과정 및 공부 하며 얻은 꿀팁들을 공유하며 향후 개발에 도움
- 서로의 코드에 대해 이야기를 나누며 향후 개발 방향성 설정
- 서로 프로그램 설계의 다른점을 비교 분석해보며 새로운 관점 찾아보기

## 과정 & 결과
- label border
    - label의 width에 대한 constraint를 지정해주면 label에 inset을 설정하지 않아도 여백이 생성된다.
- delegate 분리
    - collectionView의 delegate를 viewController에서 처리하지 않고, 다른 클래스에 위임하여 처리할 수 있다.
- CollectionView 내부에 (Static) View 삽입 시 Reusable 하는 과정에서 중첩 될 수 있다.
    - 해결법 : prepareForReuse 단계에서 SubView를 모두 초기화해줌

- UserDefaults에 직접 생성한 구조체를 저장하는 방법
    - Codable을 채택하고, 따로 save, get, remove하는 코드를  추가해주어야 한다.
- ToastCenter에서 Toast Queue를 따로 관리하는데 ClickEvent 발생 시 마다 바로 출력하려면 다음과 같이 하면 됨
~~~ swift
    if let currentToast.ToastCenter.default.currentToast {
        currentToast.cancel()
    }
~~~
- 비동기 처리
    - json을 url 통신으로 받아오는 과정에서 비동기로 처리하여야 한다.
    - 콜백으로 데이터를 받아오고 이 때 콜렉션뷰를 리로드해야한다.
- 직접참조가 무조건 나쁜 것만은 아니다.....!


## 느낀점
- S014 남기범 : 아.. 정말 한 주 고생 많았다. 다음엔 UI 하지 말아야겠다.. 왜했는지 현자타임만 가득한 일주일이었다.. 🤯
- S015 류연수 : 아키텍쳐 공부를 열심히 해야겠다...주말동안 아키텍쳐, 비동기를 중심으로 공부해야겠다.
- S030 양어진 : 나름 열심히 한 줄 알았는데 다른분들 보고 더 열심히해야겠다 생각했다!..ㅎ 담주엔 무슨 과제가 나올까~ :cry: 
- S057 조정래 : Autolayout UI 구성이 생각보다 많이 어려웠다. 다음주에는 비동기 관련 처리가 많이 나올것 같은 예감이 든다. (Rx 공부를 해야겠다...!)
