designpattern 3

Swift 디자인패턴 Command Pattern (복합체 패턴)

Swift 디자인패턴 Command Pattern (복합체 패턴) Command 패턴은 행동 패턴 중 하나로, 특정 작업을 수행하기 위한 정보를 명령 객체에 캡슐화하는 방식. 히스토리2022-07-05: 디자인 패턴 스터디 정리2024-11-26: 포스팅 글 재정리 및 조금 더 실용적인 예제 코드로 변경   Command PatternCommand Pattern은 일반적으로 3개지 개념으로 구성됨Command: 특정 작업을 수행하는 메서드를 호출하는 객체. 실행할 작업에 대한 정보를 포함Invoker(호출자): Command 객체를 호출하여 작업을 실행하는 역할. Invoker는 명령을 실행하기 위해 Command 객체를 참조Receiver(수신자): 실제 작업을 수행하는 객체. 명령 객체는 Receiv..

Swift 디자인패턴 State Pattern (상태 패턴)

Swift 디자인패턴 State Pattern (상태 패턴) State Pattern은 객체의 내부 상태에 따라 동작이 변경되도록 설계하는 행동 패턴.  히스토리2022-05-30: 디자인 패턴 스터디 정리2024-11-27: 포스팅 글 재정리 및 조금 더 실용적인 예제 코드로 변경  State Pattern상태 패턴을 사용하면 객체의 상태를 별도의 상태 클래스로 추상화하고, 객체는 자신의 상태를 바꾸면서 동작을 동적으로 변경할 수 있음Context: 상태를 관리하고, 현재 상태에 따라 행동을 위임하는 클래스State: 공통 인터페이스 또는 추상 클래스 정의 모든 Concrete 클래스는 해당 인터페이스 구현Concrete State: State 인터페이스를 구현한 클래스로 상태별 고유 동작 저의상태..

Swift 디자인패턴 Singleton Pattern (싱글톤 패턴)

Swift 디자인패턴 Singleton Pattern (싱글톤 패턴) Singleton 패턴은 애플리케이션 전체에서 하나의 인스턴스만 생성되도록 보장하며, 전역적으로 접근할 수 있는 접근점을 제공.Swift 6부터는 동시성 문제가 발생할 수 있어서 주의해서 사용 히스토리2022-04-12: 디자인 패턴 스터디 정리2024-11-29: 포스팅 글 재정리 및 조금 더 실용적인 예제 코드로 변경   Singleton PatternSingleton Pattern은 아래의 특성을 가짐전역 접근성: 인스턴스를 전역적으로 접근 가능.하나의 인스턴스: 클래스의 인스턴스는 프로그램 내에서 단 하나만 존재.필요할 때 객체를 생성하며, 힙에 올라가고 앱이 종료될 때 해제됨.장점전역적으로 상태 관리에 용이인스턴스가 하나만..