TIL - 2024.01.10 수요일

 

 

· 성취/개선/학습한 내용 🏆

 

 평소에도 가장 약한 부분이 '기본기'라고 생각하고 있었다. 개발에 있어서 가장 기본이 되는 부분들은 개념들이다. 예를 들자면 프로퍼티, 메서드를 비롯해서 프로토콜 등이 있다. 이런 부분들을 정확하게 알지 못해서 항상 다른 사람의 코드를 보았을 때, 앱의 큰 틀인 protocol, class 이런 부분들을 보면 이해가 되지 않았다. 하지만 오늘 Protocol을 비롯해 Extension을 학습하였고, 이를 기점으로 왜 코드가 그렇게 쓰였는지 이해가 되었고, 이를 직접 써봄으로써 체화를 하였다. 오늘의 가장 큰 성취는 기본 개념들을 채우면서 이해가 되기 시작한다는 점이다. 이 경험을 통해 모르는 건 찾아보고 공부하고 넘어가야겠다는 생각을 했다. 몰라도 제대로 공부하지 않았던 지난 나날들이 아깝기도 하다. 

 

  • Protocol
    • Property Requirements
    • Method Requirements
    • Optional Requirements
  • Entension
  • InputView
  • Storyboard Reference

 


· 어려웠던 내용 😵😵‍💫

 

 사실 오늘 어려웠던 내용들은 없다. 다만 모든 것을 당연하다 생각하지 말고 이렇게 저렇게 시도해 보면 좋겠다

 

· 궁금한 내용과 부족한 내용 ⁉️🤔

 

  •  Protocol을 준수하여 만든 뷰의 Extension에서는 저장 프로퍼티(Stored Property)를 초기화할 수 없다. 그래서 연산 프로퍼티를 이용해야 한다는데 이 부분은 내일 배울 예정이다.
  • 아직 라이프사이클에 대해서 정확하게 어떤 게 먼저이고 어떤 게 나중인지 좀 헷갈린다. 예를 들어 awakeFromNib이 언제 실행되는지 그리고 앱으로 따지자면 어떤 화면이 나타나기 전인지 정확히 모르겠다.
  • 많은 부분을 info.plist에서 변경해서 설정을 바꾸는데 코드로는 안 되는 건가? 편해서 info.plist에서 하는 건지 궁금하다.

 


· 느낀점 🌟

 

 개념을 공부하면서 부족했던 부분들이 하나하나 채워진다는 느낌을 받았다. 조금만 더 갈고닦으면 처음 보는 코드도 잘 이해할 수 있겠구나라는 생각도 드는 하루였다. 또 Extension이나 Protocol을 공부하면서 개발자는 작가와 비슷하다는 생각을 했다. 작가도 자신의 이야기를 설계하고 만들어낸다. 그리고 이를 고치고 고치는 퇴고 작업을 많으면 몇백 번 이상 한다고 알고 있다. 개발자도 이와 마찬가지란 생각이 들었다. 조금 더 효율적으로 재활용할 수 있게, 조금 더 가독성 있게 코드를 짜는 모습이 퇴고 과정과 똑같다고 생각을 했다. 그리고 새로운 기능을 만들어내는 시간도 중요하지만 리펙토링 하는 것 역시 중요하겠다는 느낌을 받았다. (아직 제대로 해보지 않아서 얼마나 중요할지는 감이 잡히지는 않는다!) 마지막으로 역시 기본기가 제일 중요하다!

'# TIL (Today I Learned)' 카테고리의 다른 글

TIL - 2024.01.15 월요일  (0) 2024.01.15
TIL - 2024.01.14 일요일  (1) 2024.01.14
TIL - 2024.01.12 금요일  (0) 2024.01.12
TIL - 2024.01.11 목요일  (0) 2024.01.11
TIL?! 뭘 써야 할까..?  (0) 2024.01.10