Notice
Recent Posts
Recent Comments
Link
Tags
- HIG
- 디자인패턴
- UILabel
- UIKit
- Human Interface Guidelines
- 애플
- Swift
- Split View
- iPad
- Combine+UIKit
- IOS
- CollectionView
- github
- 스위프트
- TOSS
- 애플사이다
- lineBreakStrategy
- WWDC
- Keychain
- iTerm
- Apple
- 전달인자 레이블
- 앱개발
- LanguageGuide
- lineBreakMode
- Accessibility
- GOF
- orthogonalScrollingBehavior
- 야곰아카데미
- DiffableDataSource
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Today
- Total
목록Builder (1)
애플사이다의 iOS 개발 일지
[디자인 패턴] Builder - 초기화 과정이 복잡할 때
문제 상황 여러 개의 프로퍼티, 중첩 타입 등을 지정해야 하므로 초기화 과정이 복잡한 객체가 존재한다. 이때 모든 가능한 매개변수를 포함하는 거대한 생성자를 만들게 되는데, 가독성이 떨어지고, 사용하지 않는 매개변수가 존재하므로 비효율적이라는 문제가 있다. 패턴 설명 복잡한 객체를 단계별로 생성하는 패턴이다. 객체를 생성하는 과정에서 해당 객체에 접근 불가하도록 막는다. Builder를 통해 객체를 초기화하고, 외부에서 프로퍼티값을 메서드 주입받아 객체를 완성한다. Director를 선택적으로 활용할 수 있다. Build 관련 메서드들의 실행 순서를 정의하는 역할을 담당한다. 객체를 종류별로 구분하여 생성 과정을 분기처리하고자 할 때 활용하면 좋다. 장점 복잡한 객체를 단계적으로 생성하거나, 생성 단계를..
프로그래밍 철학
2023. 2. 20. 19:45