노무현 대통령 배너

Tag: 옵저버

Observer Pattern 옵저버 패턴 – 이벤트 디스패처를 이용해 구현

by on 6.08, 2009, under Design Pattern

bubble지난 옵저버 패턴커스텀 이벤트에 대한 포스트에서 AS3.0 의 이벤트 시스템이 옵저버 패턴과 밀접한 관련이 있다고 하였는데요, 이번에는 trace 만 찍지 않고, 실제 액션스크립트로 비주얼 하게 구현을 해 보도록 하겠습니다.

요건은 다음과 같습니다.

  • AS3.0 의 이벤트 디스패처를 이용할 것.
  • 화면에 그래픽 객체가 각자 움직이다가 마우스 클릭을 하면 한 지점으로 모인다.
  • 다시 한번 클릭하면 그래픽 객체들이 다시 각자 움직인다.

(계속 읽기…)

7개의 댓글 :, , , , , , , , , , , , , , more...

Observer Pattern 옵저버 패턴의 수정 – 옵저버는 주제를 몰라요.

by on 5.20, 2009, under Design Pattern

the_observer_2이 포스트는 Head First Design Pattern : Observer Pattern 옵저버 패턴을 액션스크립트로 컨버팅 의 마지막 부분에서 언급했던 잘못된 패턴 구현에 대한 코드 수정을 위한 포스트 입니다.

이 문제의 발단은 옵저버 구상 클래스에서 주제인 weatherData 객체를 레퍼런스로 저장하는데서 비롯되었습니다. 주제가 어떤 녀석인지 옵저버에 저장하는 순간 이 옵저버는 더이상 옵저버가 아니고 주제에 직접적으로 관여하는 입장이 되어버립니다.

아래 코드 부분은 수정된 옵저버 구상 클래스 입니다. 현재 주석처리 되어있는 생성자 부분에서 주제인 weatherData 를 인스턴스 변수로 저장할 뿐만 아니라, 심지어 옵저버 스스로 옵저버가 되기를 희망하며 주제의 메소드를 직접 호출하며 옵저버 등록을 시도하게 되어버렸던 것입니다. 이 결과, 주제는 info를 옵저버 들에게 돌려야 하므로 옵저버들이 누군지 당연히 원래부터 알고 있고[01] 옵저버 역시 주제가 누군지 알고 있을 뿐더러 주제의 메소드를 호출하는 형태를 띄게 되면서, 객체지향 언어에서 지양(止揚)해야 할, 객체간 강한 결합을 해버리게 됩니다.[02] 

(계속 읽기…)

  1. 주제 객체 내부에 배열로 옵저버 리스트를 관리하고 있었습니다. []
  2. OOP 의 원칙 중 클래스 사이의 결합도는 약하게, 하나의 클래스 안에서의 응집도는 강하게 라는 원칙이 있음은 주지의 사실입니다. []
10개의 댓글 :, , , , , , , , , , , , more...

Observer Pattern 옵저버 패턴을 액션스크립트로 컨버팅 – Head First Design Pattern

by on 5.19, 2009, under Design Pattern

the_observerHead First Design Pattern 의 제 2 장 내용인 옵저버 패턴(Observer Pattern) 으로 들어가 보겠습니다. 역시 이번에도 자바 코드를 액션스크립트로 컨버팅 하였습니다.

다음은 책 본문에 있는 옵저버 패턴에 대한 설명입니다.

“옵저버 패턴 – 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들한테 연락이 가고 자동으로내용이 갱신되는 방식으로 일대다(one-to-many) 의존성을 정의합니다.

사실 위의 정의만 보고는 뭐가 뭔지 알쏭달쏭한데요, 차근차근 풀어나가보겠습니다.
(계속 읽기…)

6개의 댓글 :, , , , , , , , , , , , , , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Meta