[컴퓨터공학]/[Design Pattern] 3

[Design Pattern] 데코레이터 패턴 - Decorator Pattern

[Design Pattern] 데코레이터 패턴 - Decorator Pattern 이번 포스팅에서는 구조 패턴중 한 개인 데코레이터 패턴에 대해 알아보도록 하겠습니다. 다음의 교재를 참고했음을 미리 밝힙니다. 데코레이터 패턴은 다음과 같은 특징을 갖습니다. 기능을 계속해서 추가할 수 있는 패턴 기능을 실행중에 동적으로 변경, 확장할 수 있는 패턴 한 객체를 여러개의 데코레이터로 장식할 수 있다. 객체를 언제든지 감쌀 수 있기 때문에 실행중에 필요한 데코레이터를 마음대로 적용할 수 있다. 데코레이터 패턴의 Class diagram은 다음과 같습니다. 위의 Class diagram을 기반으로 Coffee house의 예시로 설명하겠습니다. 우선, 초창기의 Coffee house의 주문 시스템 클래스가 다음과..

[Design Pattern] 옵저버 패턴 - Python

[Design Pattern] 옵저버 패턴 - Python 옵저버 패턴은 가장 단순한 행위 패턴입니다. 행위 패턴은 이름 그대로 객체의 역할에 초점을 두고, 더 큰 기능을 구현하기 위한 객체 간의 상호작용을 중요시합니다. 객체끼리 상호작용을 하지만 느슨하게 결합되어 있습니다. (loose coupling) 옵저버 패턴에서 객체(Subject)는 자식(Observer)의 목록을 저장하며 Subject가 Observer에 정의된 메소드를 호줄할 때마다 옵저버에 알림을 줍니다. 유튜브 구독 + 알림설정을 예시로 들어보겠습니다. 유튜브를 구독과 알림설정을 하게 되면 유튜버가 영상을 게시했을 때 알림설정을 한 모든 구독자에게 새 게시물 알림이 전송됩니다. 여기에서 유튜브가 객체(Subject)에 해당되고, 구독자..

[Design Pattern] Observer pattern, 옵저버 패턴 - JAVA

[Design Pattern] Observer pattern, 옵저버 패턴 옵저버 패턴은 객체의 상태 변화를 관찰하는 관찰자(옵저버)들의 목록을 객체에 등록하여 상태 변화가 있을 떄마다 메서드를 통해 목록의 옵저버에게 통지하는 디자인 패턴이다. - Wikipedia 옵저버 패턴은 객체의 상태변화를 감지하는 옵저버가 객체의 상태변화가 있을 때 그와 연관된 객체들에게 알림을 보내는 디자인 패턴으로 행위 패턴에 포함됩니다. Subject는 Observer를 등록, 해제와 변경이 있을 경우 Observer에게 알리는 기능을 합니다. Observer는 updating interface를 가지고 있으며 Subject에서 변화가 있을 때 알림을 수신합니다. 모든 observers는 Observer 인터페이스를 imp..

반응형