«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Archives
Today
Total
04-26 12:47
관리 메뉴

lancelot.com

Head First Design Pattern - 2장 Observer Pattern 본문

프로그래밍

Head First Design Pattern - 2장 Observer Pattern

lancelot50 2009. 5. 3. 16:40
1. 디자인원칙
서로 상호작용하는 객체 사이에서는 가능하면 느슨하게 결합하는 디자인을 사용해야한다.


예시에서는
기상관측기(Subject) - 여러가지 관측Display 장치(Observer)
가 등장했는데요, 저는 이게 잘 이해가 안됬어요.
기상관측기(Subject)에서 자동으로 Mesurement()를 호출해주는데, 굳이 Observer 가 Subject를 가지고 있을 필요가 있을까 해서지요.

그런데 Design pattern 자체가 잘못되었을 리는 없기때문에, 다른 책(GOF디자인패턴, 이렇게 활용한다)을 보니 다른 예제가 등장했습니다.
엑셀에서 테이블이 있고, 그 테이블을 여러가지 그래프로 나타내주는 그런 관계를 예시로 들어놨더군요.  그제서야 확실히 이해가 갔습니다.  표의 자료가 갱신되면, 그래프의 자료도 자동으로 갱신이 되어야 한다는 측면에서이지요.

예시가 좀 일상적이지 않다고 생각되지만, 적절한 예시를 찾으니까 나머지는 잘 이해되네요(제 생각엔 프로그래머에게 엑셀 예시가 훨씬 더 이해하기가 쉬운거같습니다)

2. Observer Pattern
 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들한테 연락이 가고 자동으로 내용이 갱신되는 방식으로 일대다의 의존성을 정의.