본문 바로가기
Backend/JAVA

객체지향 설계 5대 원칙 - SOILD 원칙

by YERIEL_염주둥 2020. 7. 1.
728x90
  • SRP(단일 책임 원칙)

  • OCP(개방-폐쇄 원칙)

  • LSP(리스코프 치환 원칙)

  • ISP(인터페이스 분리 원칙)

  • DIP(의존 역전 원칙)

 


1. SRP(단일 책임 원칙)

단일 클래스는 단 한개의 책임을 가져야 한다. (=클래스를 변경하는 이유는 단 한개여야 한다.)

 

2. OCP(개방-폐쇄 원칙)

기능을 변경하거나 확장할 수 있으면서 그 기능을 사용하는 코드는 수정하지 않는다.
기존의 코드를 변경하지 않고(Closed) 기능을 수정하거나 추가할 수 있도록(Open) 설계해야 한다.

 

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

자식 클래스는 부모클래스에서 가능한 행위를 수행할 수 있어야 한다.

 

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

인터페이스는 그 인터페이스를 사용하는 클라이언트를 기준으로 분리해야 한다.
한 클래스는 자신이 사용하지 않는 인터페이스는 구현하지 말아야 한다. 하나의 일반적인 인터페이스보다는, 여러 개의 구체적인 인터페이스가 낫다.

 

5. DIP(의존 역전 원칙)

의존 관계를 맺을 때, 변화하기 쉬운것 보단 변화하기 어려운 것에 의존해야 한다는 원칙이다. 

 

반응형

'Backend > JAVA' 카테고리의 다른 글

ajax 공통 모듈  (0) 2020.07.03
JAVA - Generic  (0) 2020.05.22
JAVA 예외 던지기 Throw  (0) 2020.05.20
JAVA 예외처리하기 RuntimeException  (0) 2020.05.20
MVC Servlet - controller 작성하기 - Filter  (0) 2020.05.14

댓글