디자인 패턴이란 무엇인가?
소프트웨어 개발에서의 디자인 패턴은 소프트웨어 개발의 일반적인 문제에 대한 해결책으로, 모든 프로그래밍 언어 및 업계의 개발자가 자주 직면하는 문제에 대한 해결책이다. 디자인 패턴은 시간이 지남에 따라 일종의 표준이 된 모범 사례로 소프트 웨어 업계에서 널리 알려져있으며, 고유한 이름을 갖고있는 것들이 존재한다. (빌더, 파사드 등등)
즉, 디자인 패턴은 아키텍처를 사용할때
- 코드를 더 깔끔하고 확장 가능하게
- 유지 관리하기 쉬운 방식으로 구성하도록
도움이 된다.
다음에 팀을 옮기거나 회사에 입사할 때
어떤 패턴이 사용되고 있는지 파악하고 코드베이스를 더 빨리 이해할 수 있고,
새로운 프로젝트를 시작하는 경우 더욱 더 견고하게 프로젝트를 구축할 수 있다.
디자인 패턴 종류
생성(Creational)
정의:
- 여러 상황에 맞는 객체 생성 메커니즘을 제공하여 코드를 유연하고 재사용 가능하게 유지함
- 객체가 생성되는 방식에 독립적인 시스템을 만드는 방법
생성 디자인 패턴의 종류
- Constructor
- Factory
- Abstract Factory
- Prototype
- Singleton
- Builder
구조(Structural)
정의:
- 유언성과 확장성을 유지하면서 더 큰 시스템을 구축할 때 여러 클래스를 구성하고 결합하는 방법에 중점을 두고있음
- 시스템의 각 부분을 독립적으로 변경할 수 있음
구조 디자인 패턴의 종류
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
행동(Behavioral)
정의:
- 서로 다른 객체가 서로 통신하는 방식에 관한 것
- 객체와 클래스가 서로 어떻게 통신하고 동작 해야하는지에 대한 지침을 제공
행동 디자인 패턴의 종류
- Chain of Responsibility
- Mediator
- Observer
- Strategy
- Visitor
- Command
- Iterator
- Memento
- State
- Template method
반응형
'CS > 디자인패턴' 카테고리의 다른 글
[Design Pattern] Strategy Pattern(전략 패턴) (0) | 2024.06.02 |
---|---|
[Design Pattern] Factory Pattern(팩토리 패턴) (0) | 2024.06.01 |
[Design Pattern] Singleton Pattern(싱글톤 패턴) (0) | 2024.05.31 |
[Design Pattern] Builder Pattern(빌더 패턴) (1) | 2024.02.07 |
[Design Pattern] Observer pattern(옵저버 패턴) (0) | 2024.01.24 |