iOS 시스템 디자인
모바일 기능 구현 청사진
은행 앱의 카드 동결 기능을 1시간 시스템 디자인에서 설명합니다. 화면, 도메인 유스케이스, API, 분석을 어떤 인터페이스로 분리하겠습니까?
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
은행 앱의 카드 동결 기능을 1시간 시스템 디자인에서 설명합니다. 화면, 도메인 유스케이스, API, 분석을 어떤 인터페이스로 분리하겠습니까?
유스케이스, Repository, ViewModel, Analytics 네 개의 protocol로 자른다. 유스케이스가 CardRepository protocol을 통해 API를 부르고 결과를 도메인 값으로 돌려주며, ViewModel은 그 유스케이스만 알고 화면 상태를 만든다. 분석 이벤트는 유스케이스 결과를 받는 분석 protocol로 보내 화면이 API나 분석 SDK를 모르게 한다.
아키텍처주관식딥다이브
Clean Architecture를 iOS에 적용할 때 레이어와 의존 규칙을 설명해 주세요.
#use-case
아키텍처주관식심화
테크리드가 "iOS 개발할 때 클린 아키텍처의 원(동심원 다이어그램)과 사용자 관점이 잘 안 맞는 것 같다"고 말합니다. 사용자가 겪는 흐름은…
#use-case
빌드·배포주관식심화
App Store에는 롤백이 없습니다. 새 버전에 치명적 버그가 있을 때 피해를 최소화하려면 출시 과정에 어떤 장치를 두겠습니까?
#rollback
보안주관식심화
iOS 뱅킹 앱의 송금 기능을 설계합니다. 송금 요청 한 건을 지키기 위해 클라이언트와 서버에 어떤 방어층을 두겠습니까?
#banking