본문 바로가기
반응형

디자인 패턴7

디자인 패터 - 옵저버 패턴(Observer Pattern) 옵서버 패턴(observer pattern)은 객체의 상태 변화를 관찰하는 관찰자들, 즉 옵저버들의 목록을 객체에 등록하여 상태 변화가 있을 때마다 메서드 등을 통해 객체가 직접 목록의 각 옵저버에게 통지하도록 하는 디자인 패턴입니다. 주로 분산 이벤트 핸들링 시스템을 구현하는 데 사용됩니다. 한객체의 상태가바뀌면 그 객체에 의존하는 다른 객체들한테 연락이 가고 자동으로 내용이 갱신되는 방식으로 일대다(one-to-many) 의존성을 정의합니다. 옵저버 패턴의 그 구성을 보면 위의 다이어그램과 같습니다. Oserver - 데이터 변경을 통보 받는 인터페이스. 즉 Subject에서 Observer 인터페이스의 update를 호출하여 ConcreateSubject의 데이터 변경을 ConcreteObserve.. 2019. 11. 18.
디자인 패턴 - 커맨드 패턴(Command Pattern) Command 패턴이란 실행될 기능을 캡슐화함으로써 주어진 여러 기능을 실행할 수 있는 재사용성이 높은 클래스를 설계하는 패턴을 말합니다. 즉, 이벤트가 발생했을 때 실행될 기능이 다양하면서도 변경이 필요한 경우에 이벤트를 발생시키는 클래스를 변경하지 않고 재사용하고자 할 때 유용합니다. 그리고 커맨드 패턴에는 명령(command), 수신자(receiver), 발동자(invoker), 클라이언트(client)의 네개의 용어가 항상 따릅니다. 커맨드 객체는 수신자 객체를 가지고 있으며, 수신자의 메서드를 호출하고, 이에 수신자는 자신에게 정의된 메서드를 수행합니다. 커맨드 객체는 별도로 발동자 객체에 전달되어 명령을 발동하게 합니다. 발동자 객체는 필요에 따라 명령 발동에 대한 기록을 남길 수 있습니다. .. 2019. 11. 15.
디자인 패턴 - 싱글턴 패턴(Singleton Pattern) 싱글턴 패턴이란 해당 클래스의 인스턴스가 하나만 만들어지고, 어디서든지 그 인스턴스에 접근할 수 있도록 하기 위한 패턴. 하나의 인스턴스만을 생성하며, getInstance 메서드를 통해 모든 클라이언트에게 동일한 인스턴스를 반환하는 작업을 수행한다. 작성 방법은 다음과 같습니다. Java public class SingleTon { private static SingleTon mSingleton; public static SingleTon getInstance(){ if(mSingleton == null){ mSingleton = new SingleTon(); } return mSingleton; } } Kotlin class SingleTon{ companion object { var mSingleT.. 2019. 11. 14.
반응형