[디자인 패턴] 패턴이란 무엇인가?

[원본 링크]

디자인 패턴의 정의를 찾아보면 대충 "일상적으로 사용되는 구조나 기법들을 정형화한 것"이라는 식으로 쓰여있다.

근데 보통 소프트웨어쪽에서 디자인 패턴이라 하면 OOP에 기반한 디자인 패턴을 가리킨다.
OOP의 디자인패턴은 [GoF의 디자인패턴]이란 책이 바이블이고, 디자인패턴이라 하면 죄다 저 책에 나온거거나 저기 있는걸 응용-확장한것들이다.

OOP 디자인패턴에 있는 기법들이 죄다 유지보수와 재사용성을 극대화하기 위한 것들이라, 이걸 상당수 제대로 이해하고 활용할 수 있다면, 객체지향을 좀 안다고 할 수 있다.

체계적으로 공부하고싶다면 앞서 소개한 GoF라는 책이 가장 바람직하긴 한데 image

image

헤드퍼스트에서 쓴것도 그림 많고 쉽게 설명이 잘 돼있어서 괜찮다. 이것도 GoF 내용을 갖다가 더 쉽게 풀어놓은거다. image

image


여튼 그렇다.