객체지향의 5원칙 (SOLID)

김상범·2021년 5월 19일
0

1.SRP (Single Responsibility Principle) 단일 책임 원칙

  • 어떠한 클래스를 변경해야 하는 이유는 한가지 뿐이어야 한다.
  • 기능 별로 모듈을 만들어 준다.
  • 재사용 가능성이 높게 만들 수 있다.

2.OCP (Open Closed Principle) 개방 폐쇄 원칙

  • 자신의 확장에는 열려있고 주변의 변화에는 닫혀있어야 한다.
  • 상위 클래스 또는 인터페이스를 중간에 둬서, 자신은 변화에 대해 폐쇄적이지만 인터페이스는 외부 변화에 대해 확장성을 개방해 줄 수 있다.
  • JDBC 가 좋은 예이다.

  • 직접 연결하지 않고 jdbc 인터페이스를 통해 연결하도록 함
  • 내부적으로는 1개의 통로 외부적으로는 여러개의 통로를 통해 개방폐쇄원칙을 지킴

3.LSP (Liskov Subsitution Principle) 리스코프 치환 원칙

  • 서브 타입은 언제나 자신의 기반(상위) 타입으로 교체 할 수 있어야 한다.
  • 자동차 → 중형차 → 소나타

4.ISP (Interface Segregation Principle) 인터페이스 분리 원칙

  • 클라이언트는 자신이 사용하지 않는 메서드에 의존 관계를 맺으면 안된다.

5.DIP (Dependency Inversion Principle) 의존 역전 원칙

  • 자신보다 변하기 쉬운것을 의존하지 않는다.

참고 -스프링 입문을위한 자바 객체지향의 원리와 이해

profile
아기개발자

0개의 댓글