목록DIP (2)
DailyCode
의존관계 역전 법칙(Dependency Inversion Principle, ISP)은 객체 지향 프로그래밍에서 SOLID 원칙 중 하나입니다. 이 원칙은 상위 모듈과 하위 모듈 간의 의존성을 최소화하고, 추상화를 통해 서로간의 결합도를 낮추는 것을 목표로 합니다. 이를 통해 시스템의 확장성, 재사용성, 테스트 용이성 등이 향상되며, 유지보수가 용이해집니다. 이를 구현하기 위해 의존성 주입(Dependency Injection)과 같은 기법이 사용되곤 합니다. 의존성 주입은 별도의 게시글로 소개 하겠습니다. 정의 시스템은 추상화에 의존하고, 구체화에 의존하면 안 된다 상위 모듈은 하위 모듈의 구현에 의존하면 안 된다. 하위 모듈(Class)이 상위 모듈에 정의한 추상 타입(Protocol)에 의존해야 ..
정의 객체 지향 프로그래밍과 소프트웨어 설계에서 사용되는 원칙 중 하나로, 바바라 리스코프(Barbara Liskov)에 의해 소개되었습니다. 이 원칙은 "서브타입은 그들의 기반 타입을 대체할 수 있어야 한다"라는 원리를 제시합니다. LSP는 상속과 다형성의 올바른 사용을 강조하며, SOLID 설계 원칙 중 하나입니다. 특징 서브타입과 기반 타입: LSP는 서브 타입(subtype)이 기반 타입(basetype)을 대체할 수 있어야 함을 주장합니다. 이 말은 기반 타입의 객체가 사용되는 모든 위치에서 서브타입의 객체로 대체되어도 프로그램의 동작이 올바르게 유지되어야 함을 의미합니다. 메서드 시그니처: 서브타입은 기반 타입에서 상속받은 메서드를 오버라이딩할 때, 메서드 시그니처를 유지해야 합니다. 이는 매..