2012년 4월 19일 목요일

[Java Design Pattern_0]디자인 패턴

--> 참고 서적 (정말 좋은 책이니 꼭!! 사길 바란다.)



@ 디자인 패턴은 클래스 라이브러리가 아니다.


-  디자인 패턴은 클래스 라이브러리보다 더 일반적인 개념입니다. 클래스 라이브러리는 부품이 되는 프로그램을 의미하지만 디자인 패턴은 부품이 어떻게 조립되어 있고, 각각의 부품이 어떻게 관련해서 큰 기능을 발휘하는지를 표현한 것입니다.


@ 클래스 라이브러리 안에서 디자인 패턴이 사용되고 있다.


 -  java.util.lterator   =>    Iterator 패턴 (여러 개를 나열해 갈 때 사용하는 인터페이스)
 -  java.util.Observer  =>  Observer 패턴(오브젝트의 상태변화를 관찰하는 인터페이스)
 -  java.util.Calendar   // java.security.SecureRandom // java.text.NumberFormat
  => Factory Method 패턴
 - java.awt.Component // java.awt.Container => Composite 패턴

@ 프로그램을 완성품으로 보지 않는다.


- 디자인 패턴의 목표 중 하나는 프로그램의 재이용을 가능하게 하는 것입니다. 따라서 프로그램을 '완성품'으로 보지 말고 앞으로 '기능을 확장해 가는 것', '변경할 수 있는 것'으로 보기 바랍니다.
  => 어떤 기능이 확장될 가능성이 있는가?
  => 확장 기능을 수행할 때 수정이 필요한 클래스는 무엇인가?
  => 수정이 불필요한 클래스는 무엇인가?

@ 다이어그램은 보는 것이 아니라 읽는 것이다.


- 클래스 다이어그램은 첫째로 각각의 사각형(클래스)를 살펴보고, 둘째로 클래스 사이의 화살표를 확인합니다. 그래서 전체적인 의미를 이해하도록 합니다.

- 시퀀스 다이어그램은 시간 순서에 따라 이벤트를 하나씩 살펴보면 전체적으로 이해 할수 있습니다.

@ 스스로 예제를 만들자


@ 역할을 이해하자!




댓글 없음:

댓글 쓰기