더북(TheBook)

2.2.2 부적절한 패턴 사용

종종 아키텍트와 설계자는 완전히 해법의 영향을 이해하지 못한 상태에서 잘 알려진 해법을 문제 맥락에 적용한다. 흔히 이런 해법은 디자인 패턴 형태로 등장하며, 아키텍트와 설계자는 적절한 균형을 요구하는 다양한 힘을 완전히 이해하지 못한 채로 문제 맥락에 이 패턴을 적용해야 한다는 압력을 받는다. 그 결과 너무 많은 클래스나 아주 적은 책임만 부여한 결합력이 아주 높은 클래스 증후군으로 고통받는 설계안을 내놓는다.[81]

설계 패턴 적용은 아주 체계적이면서 용의주도한 과정이다. 클래스와 시퀀스 다이어그램 표기법으로 포착된 디자인 패턴은 참조 해법에 불과하다. 따라서 엄청나게 많은 디자인 패턴의 변종이 있을 수 있으며, 각각 다른 결과를 유도한다. 특정 변종을 사용할 때 발생하는 미묘한 차이와 영향을 완전히 이해하지 못하는 아키텍트와 설계자는 결국 설계 품질에 심각한 영향을 줄 수 있다.

설계 악취와 디자인 패턴 사이에는 흥미로운 상호작용이 존재한다. 종종 설계 악취를 해소하는 가장 적절한 방법은 특정 디자인 패턴을 사용하는 것이다. 하지만 잘못되고 불필요한 디자인 패턴 적용은 종종 안티 패턴이라는 설계 악취를 이끌어 낼 수도 있다!

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.