Daily iOS
UIKit

dataSource와 delegate 분리 설계

Apple은 왜 UITableView에 데이터 배열을 그냥 넘기게 하지 않고, dataSource와 delegate라는 두 프로토콜로 나눠 설계했을까요?

면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
짧은 답 보기

dataSource는 '무엇을 몇 개 보여 줄지', delegate는 '어떻게 보이고 어떻게 반응할지'라는 서로 다른 변경 이유를 분리한 것이다. 배열이 아닌 프로토콜이라 테이블뷰가 데이터 타입을 모르고 필요한 셀만 지연 요청한다.

받은 질문 공유