[SOLID] 객체 지향 설계 원칙

김병화·2023년 7월 8일
0
  1. 단일 책임의 원칙 - SRP : Single Responsibility Principle
  • 하나의 클래스는 하나의 목적을 위해 생성된다.
  • 클래스가 제공하는 모든 서비스는 하나의 책임을 수행하는 데 집중되어야 한다.
  • 나머지 4원칙의 기초 원칙

  1. 개방 폐쇄 원칙 - OCP : Open Close Principle
  • 소프트웨어의 구성요소(컴포넌트, 클래스, 모듈, 함수)는 확장에는 열려있고 변경에는 닫혀있어야 한다.

  1. 리스코프 치환의 원칙 - LSP : Liskov Substitution Principle
  • 서브타입(상속받은 하위 클래스)은 어디서나 자신의 기반 타입(상위 클래스)으로 교체될 수 있어야 한다.

  1. 인터페이스 분리의 원칙 - ISP : Interface Segregation Principle
  • 객체 설계 시 특정 기능에 대한 인터페이스는 그 기능과 상관없는 부분이 변해도 영향을 받지 않아야 한다.
  • 한 클래스는 자신이 사용하지 않는 인터페이스는 구현하지 말아야 한다.

  1. 의존성 역전의 원칙 - DIP : Dependency Inversion Principle
  • 실제 사용 관계는 바뀌지 않으며 추상을 매개로 메시지를 주고받음으로써 관계를 최대한 느슨하게 만들어야 한다.

0개의 댓글