셀을 탭 하여 DetailView라는 곳으로 이동하게 해 보자 설계 DetailView를 만들기 위해 어떤 걸 만들어야 할까? MVVM 구조를 채택하고 있는 우리 구조에서 먼저 새로운 VC, View, VM을 만들어야 한다. 이때, Delegate를 이용하여 탭 했을 때 정보를 전달하는 구조를 만든다. 델리게이트를 다룰 때는 VM에서 델리게이트 처리하고 -> ListView에서 다시 델리게이트 처리하고 VC에서 다시 델리게이트 처리하는 순서로 나아갈 것이다. 사소한 UI 수정 디테일 뷰를 만들기 전에 우리가 생각 못 한 부분을 처리하자. 현재 컬렉션 뷰를 최하단으로 내리면 가장 아래 셀은 그림자가 약간 잘린다. collectionView UI 잡는 곳으로 가서 sectionInset의 bottom을 10..
진짜 오랜만에 블로그에 글을 적는다. 사실 공부 활동은 깃헙으로 계속하고 있었지만 블로그에는 완성된 글을 적어어 한다고 생각하고 있었기 때문에 이런 지체가 생긴거 같다. 앞으로도 code & 디자인패턴 등은 계속 깃헙과 노션으로 정리를 할거 같지만 하루를 마감하는 용도로 블로그를 사용하고자 한다. 방치하던 MVVM도 마찬가지고 1. MVVM에 빠져서 헤어나오질 못하고 있다. MVVM의 명확한 예시라는게 존재하지 않는 거 같다. 예시를 다섯가지 들어 코드를 작성해봤는데 다 다루고 있는 모양이 달랐다. 내가 알기론 MVC 패턴에서의 다양한 문제를 Rx 프로그래밍을 적용하여 해결하기 위해 만들어진 디자인 패턴이 MVVM으로 알고 있는데 같은 문제를 프로토콜, 델리게이트, RxSwift 다양한 문제로 해결하고 ..
delegate는 대표, 위임자를 뜻하는 단어입니다. 델리게이트 패턴이란 하나의 객체가 모든 해야 할 일을 모두 정의하고 처리하는 것이 아니라 특정 행동에 대해서는 그것만을 전담하는 객체에게 일을 넘기는 것을 말합니다. 생산성 향상을 위해서 도입하는 패턴이라고 보시면 될 듯합니다. 상속만큼 강력한 재사용성을 보여주기도 하는 패턴으로 GUI 환경에서 많이 쓰입니다. 대표적으로 이벤트 리스너(Event Listener)에서 사용되고 있고 이미 우리는 이 패턴에 따라 생성된 함수들(onClick() 같은)을 호출해서 코드를 작성하고 있습니다. iOS 개발(UIKit)에서도 예외가 아닙니다. 그래서 어떻게 사용할까요? 1. 원하는 객체의 뒤에 Delegate를 붙여 프로토콜을 선언합니다. 때로는 이 단계에서 무..
1. 스타일 선언은 중요하다. 이미 위에서 스타일을 plain으로 두면 무슨 짓을 해도 insetGrouped로 형태가 나오지 않는다. 3시간을 낭비한거 같다.. 이 문제를 심각하게 느끼는건 내가 이미 insetGrouped라는 키워드를 알고 있었음에도 정작 구현할때는 이걸 찾아볼 생각을 안 했던 것이다. 항상 기록과 다시 보는걸 습관화 해야겠다. 2. NavigationBar와 Modal을 구현했다. Navigation의 경우 영역별로 나뉘어지고 선언은 어디서 해야하는지를 알았다. Modal의 경우 half가 아니라 full로 구현할 경우 훨씬 용이하게 구현이 가능하다는 수확을 얻었다. 3. Xcode용 단축키 몇가지와 MARK: - 사용법을 알았다. 4. NavigationBar의 경우 왼쪽 끝에 버..