Good

  • 내가 원하는 일정까지 업무를 완료했다.
  • 6개월동안 내가 하고 싶은 대로 타협없이 일을 진행했다.

Bad

  • 설계적인 측면에서 미쳐 못봤던 것들이 있다.
  • 아직 앱의 모든 부분을 본것이 아니기 때문에 당연하지만, 조금더 면밀히 보았다면 팀의 전체 생산성에 기여할 수 있었을 듯 하다.

Learns

  • if문 여러개는 protocol 선언 후 채택하여 해결할 수 있다.
  • 객체지향적으로 동작하게 하면 분기를 없앨 수 있다. (ItemComposable)
  • 공유 변수를 가지고 다양한 결과값을 만들게 하는 것이 플라이급 패턴이다. (NSAttributedString.makeSpace())
  • 더블 디스패치는 Visitor 패턴이다. (Layouts().apply())
    • 객체의 책임을 나누고 이를 적용하기 위한 방법
  • 값의 변경 정도가 잦다면 switch말고 객체지향 방법으로 처리한다.
  • 패턴 매칭은 무엇인가? 조건문 보다 조금 상위 개념?
  • Layout 코드 분석
  • lint error는 분명 바꿀 수 있음을 알려주는 포인트이다.
  • 모든 주석을 지우자.

Commitment

  • 장소상세 끝나고는 다시 책읽고 정리하자.
  • 클린코더 다시 읽기
  • 사토시의 서 읽기
  • 디자인 패턴 다시 정리하고 내면화하기.
  • WWDC를 이제 봐야할 듯하다. 새로운 밥줄을 위해.