The History of Design Patterns

소프트웨어에 대한 디자인 패턴의 아이디어는 건축 분야에서 나왔다. 1977년과 1979년에 건축가인 크리스토퍼 알렉산더(Christopher Alexander)는 “A Pattern Language:Towns, Buildings, Construction”라는 제목의 책과 “The Timeless Way of Building”이라는 제목의 책 두 권을 발표했다.  이 두 권의 책이 담고 있는 기본 아이디어는 건축물의 설계에 빈번하게 발생하는 동일 설계 내용이 있으며 따라서, 이런 것들을 하나의 패턴으로 보고 다른 건축물 설계에 재사용하는 것이 여러 가지 면에서 이득을 가져 다 준다는 것이다.  두 권의 책이 담고 있는 이런 기본 아이디어는 건축 영역을 벗어난 소프트웨어와  같은 다른 영역에서도 적용할 수 있었다. 

1987년 워드 커닝험(Ward Cunningham)과 켄트 벡(Kent Beck)은 알렉산더의 아이디어를 사용해서 사용자 인터페이스(User interface)에 대한 다섯 가지의 패턴을 만들었다. 그리고 이 내용은 “Using Pattern Languages for Object-Oriented Programs”라는 제목으로 정리되어 객체 지향에 관한 세계적인 컨퍼런스(conference)인 OOPSLA-87(Object-Oriented Programming, Systems, Languages & Applications .. 87)에 논문으로 발표되어 디자인 패턴에 대해서 학계에 공식적으로 알리는 계기가 되었다. 

1990년대 초에는 에릭 감마(Erich Gamma), 리차드 헬름(Richard Helm), 존 블리자이드(John Vlissides), 랄프 존슨(Ralph Johnson)이 90년대 가장 영향을 주었던 컴퓨터 책의 한 가지인 “Design Patterns: Elements of Reusable Object-Oriented Software”이란 책 제작을 시작 했다. 이 책은 1994년에 발표되어 디자인 패턴에 대한 아이디어를 널리 알리는 계기를 만들었으며, 이 책은 책의 제목이 긴 이유로 인해서 'GoF(Gang of Four) book'라는 별칭으로 불리고 있다. 

Defining Desing Patterns

  • 디자인 패턴은 개개의 클래스, 인스턴스 , 컴포넌트들의 상위 단계인 추상 개념을 확인하고 특정 짓는다.(Gamma, et al., 1993)
  • 디자인 패턴은 소프트웨어 개발의 범위에서 어떤 일을 어떻게 완수할 수 있는 가에 대한 규칙들로 이루어 진다.(Pree, 1994)
  • 디자인 패턴은 반복되는 구조의 디자인 주제의 재사용성에 좀더 초점을 둔다.(Coplien & Schmidt, 1995)

Definition: 자주 발생하는 문제들에 대한 "재사용 가능한 해결책"이다.

'Development > 패턴자료' 카테고리의 다른 글

[펌] The Iterator Pattern  (0) 2011.08.13
[펌] The Interpreter Pattern  (0) 2011.08.13
[펌] The Flyweight Pattern  (0) 2011.08.13
[펌] The Factory Pattern  (0) 2011.08.13
[펌] The Facade Pattern  (0) 2011.08.13
안정적인 DNS서비스 DNSEver DNS server, DNS service
Posted by 키르히아이스
,