dip2 SOLID 1. SRP ( 단일 책임 원칙 ) SRP 단일 책임 원칙 (Single Responsibility Principle)의 약자로, SOLID 원칙 중 하나입니다. 이 원칙은 클래스가 단 하나의 이유만으로 변경이 되어야 한다는 원칙을 의미합니다. 여기서 단 하나의 책임 이 말이 추상적이여서 아래 내용을 통해 구분해 보겠습니다. 기능적 책임 : 클래스가 수행해야 할 주요 동작이나 기능입니다. 주문 시스템에서 OrderService 클래스의 책임은 주문 생성, 추가, 조회등을 담당할 것 입니다. 변경의 원인 : 하나의 책임은 변경의 이유가 하나라는 것입니다. 예를 들어 데이터베이스가 변경 되었다고 Service 클래스가 영향을 받아서는 안됩니다. 예시로 주문 시스템을 생각해볼께요. 여기에는 주문과 주문내역을 .. 2023. 12. 12. 의존성 ( dependency ) 의존관계 (dependency) 하나의 클래스가 다른 클래스의 기능에 의존할때의 관계를 나타냅니다. 이러한 의존관계는 코드의 유연성, 확정성 및 유지 보수성에 큰 영향을 미칩니다. 1. 의존관계의 표현 소스 코드에서 new 키워드로 객체를 생성하는 것 ( 인스턴스 생성 ) 다른 클래스의 래퍼런스 변수를 사용하는 것 다른 클래스를 상속 받는 경우 2. 의존관계의 중요성 클래스 간의 강한 의존관계는 변경을 어렵게 만들 수 있습니다. 한 클래스가 변경될 때 연관된 다른 클래스도 변경 되어야 하니까요. 테스트에 어려움이 있습니다. 특정 클래스를 독립적으로 테스트 하려 할 때, 해당 클래스가 의존 하는 클래스에도 영향을 미칩니다. 강하게 연결된 클래스는 다른 클래스에서 재사용하기 어렵습니다. 아래는 예시 입니다... 2023. 12. 12. 이전 1 다음