GoF가 정리한 설계 패턴
으로 프로그래밍을 하다가 GoF가 자주 마주치던 패턴
을 정리 해 놓은 것.
즉, 엄청난 고수 개발자들이 프로그래밍을 하다 보니까, 어떤 문제 상황에서 특정 패턴으로 설계 하는 게 해답으로 같이 묶여서 보이더라.
그래서 해당 패턴에 명칭을 부여해서 이러 이러한 상황에서는 이러한 패턴으로 풀어나가는 게 어떨까? 일종의 어드바이스 느낌으로 GoF가 정리해 놓은 것이라 볼 수 있다.
절대적인 해답인 것은 아니고, 소스를 엄청나게 짜다 보니까 그 소스 안에서 보이던 패턴을 GoF가 정리해 놓은 것이므로 디렉션 정도로 받아들일 수 있지 않을까 싶다.
디자인 패턴은 어떤 절대적인 원리를 두고 그 원리를 따라서 해답으로 나온 게 아니라, 경험적으로 이렇게 하면 잘 되는 것 같더라, 하는 휴리스틱의 한 형태에 해당하는 지식이다.