SRP : Single Responsibility Principle하나의 클래스는 하나의 책임만을 가져야 한다."책임은 변경하려는 이유" 라고 로버튼 C.마틴이 말했습니다.스프링의 기본적인 패턴입니다. 각 3개의 컴포넌트들은 각각의 역할이 있습니다.여기 각각의 역할에
OCP : Open Closed Principle소프트웨어는 확장에는 열려있고 변경에는 닫혀 있어야 한다.서비스와 레포지토리들 중간에 Repository(interface)를 추가하면서 고수준 컴포넌트(Service)가 저수준 컴포넌트(Database Repositor
LSP : Liskov Substitution Principle부모 클래스가 할 수 있는 행동은 자식 클래스도 할 수 있어야 한다.원래의 정의는 이것이 아니나 직관정의는 이렇다 할 수 있습니다.Child는 Parent를 상속 받아 someMethod를 오버라이딩하고 있
객체지향의 핵심 원리와 원칙들 ISP, 인터페이스 분리 원칙 > ISP : Interface Segregation Principle 클라이언트별로 세분화된 인터페이스를 만들어야 한다. 여기에 Repository가 선언되어 있습니다. 해당 인터페이스를 구현하는 두
객체지향의 핵심 원리와 원칙들 DIP, 의존 역전 원칙 > DIP : Dependency Inversoin Principle 고수준 컴포넌트는 저수준 컴포넌트에 의존하지 않아야 한다. 의존 역전 원칙이 깨진 상황과 지켜진 상황 개방 폐쇄 원칙(OCP)과 비슷해보이