달력

52025  이전 다음

  • 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
  • 31


==디자인 패턴이란?==============================================================================

컴퓨터 과학 연구자들이 디자인 패턴이라는 것을 연구하기 시작한 주요 이유는 간단하 고 또한 재활용성이 있는 프로그래밍 솔루션을 만들기 위해서 이다.
디자인 패턴은 프로젝트사이 또는 프로그래머 사이에서 객체 지향 코드를 재사용하게 하는 편리한 수단일 뿐이다.
디자인 패턴은 프로그래머들이 유용하다고 생각하는객체들간의 일반적인 상호작용(interaction) 방법들을 모은 목록(Catalog)이라고 할 수 있다.

다른 말로 디자인 패턴은 어떻게 하면 객체들이 다른 객체의 메소드, 데이터들과 뒤엉힘이 없이 통신이 이루어질 수 있는 가를 기술한 것이다.

위와 같이 객체를 분리함으로써 객체지향 프로그래밍의 목적을 항상 유지할 수 있다.


?? 디자인 패턴은 자주 발생되는 설계상의 문제를 해결하기 위한 반복적인 솔루션이다. [Smalltalk Companion]

?? 디자인 패턴은 소프트웨어 개발 영역상에서 어떠한 작업을 수행하기 위한 코딩 원칙의 집합으로 구성되어 있다. [Pree, 1994]

?? 디자인 패턴은 반복되는 구조를 설계할 때 설계를 재활용하는데 초점을 두고있다. 그에 비해 프레임워크는 세부 설계와 구현에 초점을 두고 있다. [Coplien& Schmidr, 1995]

?? 패턴은 특정 디자인 상황에서 발생되는 반복되는 설계상의 문제를 다룬다. 또한 그것의 해결 방법을 제시한다.

?? 패턴은 단일의 클래스와 인스턴스 또는 컴포넌트 들의 레벨 상위의 추상성을정의한다.[Gamma et al, 1993]


디자인 패턴은 객체를 설계하기 위한 것만은 아니다. 디자인 패턴은 객체간의 상호작용을 표현하기 위해서도 쓰인다. 이러한 관점을 가지고 쓰여진 패턴을 Communication 패턴이라고 한다.

?? Creational pattern(생성 패턴) : 프로그래머가 직접 객체를 생성하는 것보다 패턴을 이용하여 객체를 생성한다. 이 패턴을 적용하면 주어진 상황에 어떠한 적절한 객체가 생성되야 적합한지를 프로그램상으로 유용하게 표현할 수 있다.

?? Structural pattern(구조 패턴) : 객체의 그룹들을 좀더 큰 구조로 조합할 때 어떻게 하는 것이 좋은 가에 대하여 기술한 패턴들이다. 예를 들면 사용자 인터페이스나 계산 데이터에 쓰인다.

?? Behavioral pattern(기능 패턴) : 시스템상의 객체들의 통신과 통신의 흐름이 복잡한 프로그램상에서 어떻게 컨트롤되는지 정의한다.

========================================================================================================================

 

'Design Patterns' 카테고리의 다른 글

스트래티지 패턴 2 (Head First 파헤치기 ver.1)  (0) 2009.11.12
스트래티지 패턴(Strategy Pattern)  (0) 2009.11.12
Observer Pattern  (0) 2009.11.11
Singleton Pattern -  (0) 2009.11.11
생성 패턴-Factory  (0) 2009.11.11
Posted by 인천총각
|