iOS Design Patterns
Singleton, Factory, Builder, Observer, Coordinator, Repository, Dependency Injection, SOLID
24 면접 질문·
Senior
1애플리케이션 전체에서 클래스의 인스턴스를 하나만 보장하는 패턴은 무엇입니까?
1
애플리케이션 전체에서 클래스의 인스턴스를 하나만 보장하는 패턴은 무엇입니까?
답변
Singleton 패턴은 인스턴스화를 단일 전역 인스턴스로 제한합니다. iOS에서는 설정이나 매니저 같은 공유 리소스에 대한 접근을 중앙화할 수 있습니다. 하지만 Singleton은 모킹하기 어려운 전역 의존성을 만들어 테스트 용이성을 떨어뜨립니다.
2정확한 인스턴스화 로직을 노출하지 않고 객체 생성을 추상화하는 패턴은 무엇입니까?
2
정확한 인스턴스화 로직을 노출하지 않고 객체 생성을 추상화하는 패턴은 무엇입니까?
답변
Factory 패턴은 객체 생성을 전용 메서드나 클래스에 캡슐화합니다. 이를 통해 클라이언트 코드에 영향을 주지 않고 생성 로직을 수정할 수 있습니다. iOS에서 factory method는 복잡한 의존성 관리를 단순화하고 쉬운 대체를 통해 테스트를 용이하게 합니다.
3구성과 표현을 분리하면서 복잡한 객체를 단계별로 생성하는 패턴은 무엇입니까?
3
구성과 표현을 분리하면서 복잡한 객체를 단계별로 생성하는 패턴은 무엇입니까?
답변
Builder 패턴은 생성자를 오버로딩하지 않고도 많은 선택적 매개변수를 가진 객체를 생성할 수 있게 합니다. iOS에서는 코드 명확성을 높이고 유지보수를 용이하게 합니다. 즉시 객체를 반환하는 Factory와 달리 Builder는 점진적이고 유연한 구성을 허용합니다.
4
옵저버가 변경 사항을 자동으로 통지받는 일대다 의존성을 정의하는 패턴은 무엇입니까?
5
조건부 로직으로 객체를 생성하는 Factory의 주된 용도는 무엇입니까?
+21 면접 질문
기타 iOS 면접 주제
Swift 기초
Junior
25개 질문Swift 언어 기초
Junior
15개 질문UIKit 기초
Junior
18개 질문UIViewController 생명주기
Junior
20개 질문UserDefaults & Keychain
Junior
20개 질문애플리케이션 생명 주기
Junior
20개 질문Auto Layout & Constraints
Mid-Level
24개 질문UITableView & UICollectionView
Mid-Level
25개 질문SwiftUI 기초
Mid-Level
18개 질문SwiftUI 상태 관리
Mid-Level
22개 질문SwiftUI 내비게이션
Mid-Level
18개 질문Networking & URLSession
Mid-Level
20개 질문Codable 및 JSON 파싱
Mid-Level
20개 질문Core Data
Mid-Level
22개 질문프로토콜 지향 프로그래밍
Mid-Level
20개 질문MVVM 아키텍처
Mid-Level
20개 질문푸시 알림
Mid-Level
18개 질문단위 테스트와 XCTest
Mid-Level
20개 질문UI 테스트
Mid-Level
18개 질문Xcode 및 빌드 시스템
Mid-Level
16개 질문Swift Package Manager
Mid-Level
16개 질문Memory Management & ARC
Senior
22개 질문Combine Framework
Senior
24개 질문Concurrency & async/await
Senior
26개 질문성능 최적화
Senior
22개 질문보안 및 암호화
Senior
20개 질문SwiftUI Advanced
Senior
22개 질문iOS 애플리케이션 아키텍처
Senior
22개 질문