Observer Pattern

A collection of 7 posts

디자인 원칙

엔터프라이즈 컴퓨팅 중간고사 2), 3), 4)

  2) [20점] 시스템을 확장/변경 할 때 class의 수가 급격하게 늘어나는 경우가 생긴다. 이를 방치하면 관리가 어려워진다. 이 문제를 해결하기 위해 사용한 방법들을 보이고 어떻게 했는지를 설명하라. 우리가 지금까지 배운 것 중에서 예를 보여라. [#M_답 보기|닫기| 변하는 부분과 변하지 않는 부분을

design pattern

Observe Pattern 예제(끝)

Auctioneer는 Subjct를 대신했고 Bidder는 Observer 인터페이스를 대신하도록 만들었다. 그리고 각각 ConcereAuctioneer와 ConcreteBidder 클래스를 작성하여 인터페이스를 통해 접근하도록 했다. 그리고 test 클래스를 작성하기 시작했다. 먼저 경매 물품이 나오고 (경매 시작 가격이 있을 것이라 생각했다.) 그다음 경매자들이 그 물품의 구독자(observer)로 등록이 되며(여기서는 구독자

design pattern

Observer Pattern 예제

Obsever Pattern은 1대 다 관계를 정의합니다. 따라서 한 객체의 상태가 바뀌면 다른 것들이 자동적으로 정보를 업데이트 받습니다. Participant Correspondence: auctioneer가 Subject에 해당합니다. Observer들은 그에게 등록을 해야하기 떄문에 당연히 그는 observer들을 알고 있습니다. 현재 경매가(current bid)는 ConcreteSubject에 해당합니다. Observer들은 이것의 상태에 관심이 있습니다.

Head First Design Pattern

2장 Observer Pattern(계속)

기상 스테이션 복잡해 보일 수도 있지만 매우 간단한 class diageam입니다. 각각의 display들이 Display interface를 구현하도록 추가한 것만 빼면 기본적인 observer패턴의 모습과 같습니다. WeatherData class에는 observer들을 등록, 삭제할 List를 가지고 있어야 합니다. 그래야 나중에 상태가 바뀌었을 때(measurementsChanged()가 호출됐을 때) notifyObservers() 메소드에서 자신의 정보를

Head First Design Pattern

2장 Observer Pattern(계속)

신문을 구독하는 방법과 동일 합니다. 책에는 출판사 + 구독자 = 옵저버 패턴 이라고 큼지막하게 쓰여있네요. 출판사는 주제(subject)로 부르고 구독자는 옵저버(observer)라고 부르도록 하겠습니다. 앞에서 본 예제에 적용하면 weatherData 객체가 subject 그리고 각종 display장치들이 옵져버에 해당합니다. 위 기본 설정을 중간에 잊어버리시면 앞으로 진행되는 설명을

Head First Design Pattern

2장 Observer Pattern

엠파스 블러그에서 가져옵니다. 너무도 많이 들어본 이름.. 옵져버 스타크래프트의 럴커나 다템 같은 안보이것 까지 볼 수 있는 유닛이다. 게임 중 후반에 이르러 옵져버가 있으면 상대방이 어디에 무슨 병력을 얼만큼 갖다 놨는지 무슨 건물을 짓고 있는지 훤히 알 수 있기 때문에 매우 중요한 유닛이다. 사설은

You've successfully subscribed to Whiteship!
Could not sign up! Invalid sign up link.