본문 바로가기
반응형

디자인패턴3

Swift 패턴 이야기- 빌더 패턴(builder) 빌더 패턴은 복잡한 객체의 생성을 도우면서 어떻게 이러한 객체들을 생성하는지에 대한 프로세스를 강제한다. 일반적으로 빌더 패턴에서는 복잡한 타입으로부터 생성 로직을 분리하며, 다른 타입을 추가한다. 빌더 패턴은 타입의 서로 다른 결과물을 생성하는 데 동일한 생성 프로세스를 사용하게 해준다. 빌더 패턴을 구현하는데 사용할 수 있는 방법에는 두 가지가 있다. 첫 번째 방법은 구체적인 방법으로, 원래의 복잡한 객체를 설정하는 정보를 가진 여러 가지의 빌더 타입을 갖는 방식이다. 두 번째 방법은 모든 설정 가능한 옵션을 기본 값으로 설장하는 단일 빌더 타입을 사용해 빌더 패턴을 구현하며 필요하다면 옵션 값을 변경하는 방식이다. 빌더 패턴 구현 struct BugerOld { var name: String var.. 2021. 7. 21.
Swift 패턴 이야기- 싱글턴 패턴(singleton) 싱글턴 패턴은 애플리케이션 생애 동안 클래스 인스턴스화를 단일 인스턴스로 제한한다. 이 패턴은 애플리케이션에서 행위를 조직화하기 위해 하나의 인스턴스만 필요ㅛ로 하는 경우에 매우 유용하다. 애플리케이션이 블루투스로 원격 장치와 통신하면서 애플리케이션 곳곳에서 연결을 유지하고 싶을 경우가 싱글턴을 사용하는 좋은 예가 된다. 누군가는 연결 클래스의 인스턴스를 한 페이지에서 다음 페이지로 전달해 줄 수 있다. 싱글턴 패턴은 참조 타입에서만 구현할 수 있다. 싱글턴 패턴 구현하기 class MySingleton { static let sharedInstance == MySingleton() var number = 0 private init() {} } 싱글턴 사용 예 var singleA = MySingleto.. 2021. 7. 21.
퍼사드 패턴(Facade Pattern) 어쩌다 보니 내 수준보다 더 높고 높은 책을 읽고 있다. '클린 아키텍처' 라는 책인데 매번 '아키텍처'라는 단어는 사용하면서도 정작 제대로 알고 사용은 하는건지 의문이 들 때가 있다. 따라서 이번에는 확실히 개념을 잡고 넘어가리라는 마음을 먹고 읽지만 이내 졸립고 따분하고 어렵고 그렇다. 3부 설계 원칙의 '단일 책임 원칙' 부분을 읽으면서 제시된 해결책으로 '퍼사드 패턴'을 이해하고 넘어가자는 의도에서 책과 구글링을 통해 개념을 익혀보기로 했다. 실제 업무중에 적용한 사례가 있나 곰곰히 떠올려보지만 기억이 잘 나지 않는다. 또 어디에 어떻게 이 패턴을 적용해볼까도 고민했지만 막연하기만한데... 퍼사드 패턴은 다음과 같이 정의된다. /* * 퍼사드(Facade)란 프랑스어 Facade에서 유래된 단어로.. 2020. 11. 3.
반응형