본문 바로가기
Java&Spring

[ 디자인패턴 ] 디자인 패턴이란?

by JINJINC 2025. 1. 9.
728x90
반응형

 

 디자인 패턴

 

디자인 패턴(Design Patterns)은 소프트웨어 개발에서 자주 반복되는 문제들을 해결하기 위해 만들어진 재사용 가능한 코드 설계 방법입니다. 즉, 소프트웨어 설계 시 발생할 수 있는 문제를 효율적으로 해결하기 위한 설계의 모범 사례라고 할 수 있습니다.

장점

  • 개발자간의 원활한 소통
  • 소프트웨어 구조 파악이 용이
  • 재사용을 통한 개발 시간 단축
  • 설계 변경 요청에 대한 유연한 대처

단점

  • 객체지향 설계에 대한 깊은 이해도가 필요
  • 간단한 문제에 대해 디자인 패턴을 적용하는 것이 오히려 더 복잡하고 비효율적일 수 있습니다.
  • 모든 문제에 대해 디자인 패턴을 적용하는 것은 적절하지 않습니다.

디자인 패턴은 크게 생성(Creational), 구조(Structural), 행동(Behavioral)으로 구분할 수 있습니다.

 

생성 패턴

생성 패턴(Creational Pattern) : 객체 생성에 관련된 패턴으로, 객체가 생성되는 방식을 기본적인 형태에서 분리하여 코드의 유연성을 높입니다

- Factory Method

- Abstract Factory

- Builder

- Prototype

- Singleton

 

구조 패턴

구조 패턴(Structural Pattern) : 클래스나 객체를 조합해 더 큰 구조를 만드는 패턴입니다. 서로 다른 인터페이스를 가진 두 개의 객체를 함께 사용하거나, 객체들을 서로 묶어 새로운 기능을 제공하는 등의 역할을 합니다.

- Adapter

-Bridge

-Composite

-Decorator

-Facade

-Flyweight

-Proxy

 

 

 

행동 패턴

행동 패턴(Behavioral Pattern) : 객체나 클래스 사이의 알고리즘이나 책임 분배에 관련된 패턴입니다. 즉, 객체의 행동 패턴에 초점을 맞춥니다.

- Strategy

- Template Method

- Visitor

- Iterator

- Observer

 

 

 

728x90
반응형

댓글