728x90
SRP
- Single responsibility principle
- 하나의 클래스는 하나의 책임
- 변경이 있을 때 파급 효과가 적어야 함
OCP
- Open/closed principle
- 확장에는 열려 있으나 변경에는 닫혀 있음
- 다형성 활용해도 OCP 원칙을 지킬 수 없음
- 객체 생성하고 연관관계를 설정해주는 설정자가 필요하며 Spring Container가 이를 수행해줌
LSP
- Liskov substitution principle
- 프로그램 객체는 하위 타입의 인스턴스로 바꿀 수 있음
ISP
- Interface segregation principle
- 특정 클라이언트를 위한 인터페이스를 분리
- 대체 가능성이 높아지고 명확해지는 장점이 있음
DIP
- Dependency inversion principle
- 구현 클래스에 의존하지 말고 인터페이스에 의존하라는 의미
- 다형성 만으로는 이를 지키기 힘듦
Spring
- DI (Dependency Injection): 의존관계, 의존성 주입
- DI 기술로 OCP, DIP를 쉽게 지키도록 구현
300x250
'Java' 카테고리의 다른 글
람다 표현식 (0) | 2023.07.09 |
---|---|
Java의 함수형 인터페이스 (0) | 2023.07.09 |
함수형 인터페이스와 람다 표현식 (0) | 2023.07.06 |
비즈니스 요구사항 설계 (0) | 2022.07.20 |
좋은 객체지향이란? (0) | 2022.07.18 |