iOS/UIKit2 DataSource말고 DiffableDataSource로 DiffableDataSource DiffableDataSource의 정의 먼저 봐보자(나는 UITableView를 예시로 삼아 글을 작성할꺼다!, UICollectionView도 거의 동일) @preconcurrency @MainActor class UITableViewDiffableDataSource : NSObject where SectionIdentifierType : Hashable, SectionIdentifierType : Sendable, ItemIdentifierType : Hashable, ItemIdentifierType : Sendable 내 블로그에서 조금 다뤄봤던 @MainActor로 선언되어 있고, DataSource를 구성하는 값은 2개를 받는데, 한개는 SectionIden.. 2023. 1. 6. delegate가 weak, optional타입을 가지는 이유 정처 없이 delegate에 대해 알고싶어서 'cmd + 클릭'로 정의되어 있는 코드들을 탐색하다.. 문득! 어.. 근데 왜 delegate가 'weak'에 타입은 옵셔널(?)이지..? 라는 생각이 들어 잘성하는 글이다ㅎㅎ vc.delegate = self vc의 delegate를 현재의 ViewController에서 구현하고 싶어 선언해주려 할때, 위의 코드처럼 무의식적으로 작성하는 과거의 나를 떠올리며, 왜 그동안 수긍했나 라는 생각이 든다ㅎㅎ 우선 "왜 옵셔널인가?"에 대한 답은 delegate가 채택이 안된상태로 존재할 수 있기 때문이다. delegate가 있지만, 선언을 해 구현할 필요가 없을 경우가 있고, delegate가 선언되어 있었지만, 구현을 맡고있던 객체를 빼내어 nil값을 갖게 되는.. 2022. 8. 30. 이전 1 다음