back-end/spring
스프링과 객체지향 OCP,DI
5witch
2022. 4. 27. 18:27
* OCP (Open-Closed Principle) 개방-폐쇄 원칙
확장에는 열려있고 변경에는 닫혀있어야한다는 프로그래밍 원칙..
객체 지향 프로그래밍의 핵심 원칙이라고 한다. 잘 지키지 않는다면, 객체 지향 프로그래밍의 가장 큰 장점인 유연성, 재사용성, 유지보수성 등을 확보할수없다.
* 스프링의 DI (Dependencies Injection) 의존성 주입을 활용하면 기존 코드를 일일히 변경해주지않아도
설정만으로 변경가능하다.
객체지향설계를할때 SOLID에서 D(DIP)의존관계 역전 원칙을 따르는 방법중 하나이기도하다.
DI는 대충 이런느낌...?
controller ------- service -----X----- 기존repository ------------ entity
------------ 새 repository
다음 포스팅에서는 객체지향설계(SOLID)의 다른요소인 SRP, LSP, ISP등도 적어봐야겠다.