iOS 캠프 TIL - 2020.12.02 수

Updated:

SOLID 강의

  • 객체 설계의 5가지 원칙에 대한 리뷰어 “붱이”의 특강
  • 5가지 원칙에 대한 설명과 예시를 보았지만 머리로만 이해가 될 것 같으면서도 모르겠다
  • 5가지 원칙을 무조건 지켜야 되는 것은 아니다. 어차피 완벽한 코드, 정답 코드는 없다.
  • 핵심은 코드를 작성할 때 많은 생각을 해봐야 한다는 것이고, 처한 상황에 맞게 주어진 시간안에 최선의 답을 찾고 그 근거를 알고 있으면 된다는 것이라고 생각된다.
  • 리뷰어 붱이는 소스파일당 200줄 이내로 제한하는 룰을 해봤을 때, 200줄 넘어가면 분리해야 하는 부분을 찾아보게 됐고, 대부분 분리할 수 있었다고 한다. 이 방식을 그대로 해봐도 좋을 것 같고, 함수 단위로 줄 수 제한을 둬 보는 것도 도전해 볼 수 있을 것 같다.

탭 제스처 기능 구현 Tap Gesture Recognizer VS touchesBegan

회원가입 화면 Step 2의 키보드 숨김 기능을 각자 구현해보았고 두 가지 방식으로 갈렸다. Tap Gesture Recognizer VS touchesBegan. 나는 Tap Gesture Recognizer로 구현했는데, 글렌이 UIViewController의 touchesBegan()함수로 간단하게 처리한 것을 보고서 저 함수의 존재를 알게됐다. 기능을 구현할 때는 무작정 하지말고 개발자 문서부터 잘 확인해야겠다. 어쨌든 내가 한 방식도 오답은 아닌데, 어떤 방식으로 정할지 논의하며 찾아봤다.

touchesBegan()은 인식하는 제스처가 Tap Gesture Recognizer 보다 적지만 더 빨랐다. 그래서 인식해야 하는 제스처가 많다면 Tap Gesture Recognizer가 좋지만, 지금 구현해야 할 기능은 그저 탭 하는 것만 인식하면 되기기에 touchesBegan()을 사용하기로 결정했다.

Leave a comment