소프트웨어 설계에서 특정 문제를 효율적으로 해결하는 데에 자주 사용되는 설계 구조나 틀을 의미한다. 코드의 재사용성, 유지보수성, 읽기 쉬움 등을 향상시킬 수 있다. 디자인 패턴의 수는 고정되어 있지 않고, 다양한 패턴이 존대한다. 널리 알려진 건 "Design Patterns: Elements of Reusable Object-Oriented Software" 책에 의해 공식화된 23개의 디자인 패턴이라고 한다. 이 책의 4명의 저자를 GoF라고 부르는데, GoF의 디자인패턴은 크게 생성, 구조, 행위의 3가지 카테고리로 분류한다. 이 외에도 찾아보니 서브, 애플리케이션 도메인, 아키텍쳐, 모듈화 패턴가 있더라. 일단 쭉 노션에 정리를 하던 중인데.. 50개가 넘더라.. 신나서 찾다보면 더 나오길래 일..