[Design Pattern] 디자인 패턴 개요

olwooz·2023년 2월 7일

Design Pattern

목록 보기
1/22

디자인 패턴

- 소프트웨어 설계시 특정 맥락에서 자주 발생하는 공통된 문제에 대한 해결책

특징

- 디자인 패턴은 특정한 구현이 아닌 아이디어
- 프로젝트에 항상 적용해야 하는 것은 아니지만 추후 재사용, 호환, 유지 보수시 발생하는 문제를 
  예방하기 위해 패턴을 만들어 둔 것

원칙 - SOLID

- 객체지향 설계 원칙

1. Single Responsibility Principle

- 하나의 클래스는 하나의 역할만 해야 함

2. Open - Closed Principle

- 확장(상속)에는 열려있고 수정에는 닫혀 있어야 함

3. Liskov Substitution Principle

- 자식이 부모의 자리에 항상 교체될 수 있어야 함

4. Interface Segregation Principle

- 인터페이스가 잘 분리되어서 클래스가 꼭 필요한 인터페이스에만 구현하도록 해야 함

5. Dependency Inversion Principle

- 상위 모듈이 하위 모듈에 의존하면 안 됨
- 둘 다 추상화에 의존하며, 추상화는 세부 사항에 의존하면 안 됨

분류

  • 3가지 패턴

1. 생성 패턴 (Creational)

- 기존 코드의 유연성과 재사용을 증가시키는 다양한 객체 생성 메커니즘들

2. 구조 패턴 (Structural)

- 객체들의  구조를 유연하고 효율적으로 유지하면서 더 큰 구조로 조립하는 방법

3. 행위 패턴 (Behavioral)

- 객체 간의 책임 분배 및 알고리즘들

0개의 댓글