Spring

[Spring] SOLID 원칙

중엔 2023. 1. 11. 14:38

SOLID

S(Single Responsibility, 단일 책임 원칙) == SRP         **p(Principle)

모든 클래스는 하나의 책임만 가지며, 클래스는 그 책임을 완전히 캡슐화해야 한다.

O(Open-Closed, 개방 폐쇠 원칙) == OCP

확장에는 열려있어야 하고, 수정에는 닫혀 있어야한다.

L(Liskov substitution, 리스코프 치환 원칙) == LSP

컴퓨터 프로그램에서 자료형 S 가 자료형 T의 하위형이라면 프로그램 속성의 변경없이 자료형 T의 객체를 자료형 S의 객체로 교체 할 수 있어야 한다는 원칙. ** 상속받은 자식클래스에서 부모클래스를 변경할 수 없다.

I(Interface - Segregation, 인터페이스 분리 원칙) == ISP

클라이언트가 자신이 이용하지 않는 메서드에 의존하지 않아야 한다.

D(Dependency inversion, 의존성 역전의 원칙) == DIP

첫째, 상위 모듈은 하위모듈에 의존해서는 안된다. 상위 모듈과 하위 모듈 모두 추상화에 의존해야 한다.

둘째, 추상화는 세부 사항에 의존해서는 안된다. 세부사항이 추상화에 의존해야 한다.