본문 바로가기
Develop/Java

SOLID 클래스 설계 원칙

by 독서왕뼝아리 2023. 2. 13.
  • 단일 책임 원칙 (Single Responsibility Principle)
    클래스는 변경할 때 한 가지 이유만 있어야 한다. 모든 클래스는 하나의 책임만 가진다.

  • 개방 폐쇄 원칙 (Open / Closed Principle)
     클래스는 확장에는 열려 있고 변경에는 닫혀 있어야 한다. 기존 클래스의 변경은 최소화한다.

  • 리스코프 치환 원칙 (Liskov Substitution Principle)
     하위 타입은 반드시 상위 타입을 대체할 수 있어야 한다. 파생 클래스로도 별다른 이해 없이사용 가능해야 한다.

  • 인터페이스 분리 원칙 (Interface Segregation Principle)
    클라이언트는 필요하지 않는 메서드에 의존하면 안 된다. 여러 개의 범용 인터페이스로 분할하라.

  • 의존성 역전 원칙 (Dependency Inversion Principle)
    추상화 클래스는 구체화 클래스에 의존해서 안 된다. 추상화에 의존하게 해야 한다.