Daily iOS
아키텍처

프로토콜 지향 기능 조합

경로 안내, 요금 계산, 실시간 위치 갱신을 가진 iOS 이동 서비스 기능에서 상속 계층이 복잡해졌습니다. 프로토콜 지향 설계로 공통 능력과 서비스별 차이를 어떻게 조합하겠습니까?

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

상속 계층 대신 위치 스트리밍, 요금 계산, 경로 안내처럼 능력 하나당 작은 프로토콜을 둔다. 택시나 대리 같은 서비스 타입은 필요한 프로토콜만 조합해 채택하고, 공통 구현은 protocol extension의 기본 구현이나 프로퍼티로 소유하는 구체 객체에 넣는다.

받은 질문 공유