객체지향설계 2

[DIP] 객체지향 설계 5 원칙 (5)

학습목표 : 의존관계 역전 원칙 (Dependency inversion principle)을 이해하고, 예제로 설명할 수 있다. DIP [Dependency inversion principle] 의존 역전 원칙 "고차원 모듈은 저차원 모듈에 의존하면 안된다. 이 두 모듈 모두 다른 추상화된 것에 의존해야 한다." "추상화된 것은 구체적인 것에 의존하면 안 된다. 구체적인 것이 추상화된 것에 의존해야 한다." "자주 변경되는 구체(Concrete) 클래스에 의존하지 마라" - 로버트 C.마틴 [위키피디아] DIP [Dependency inversion principle] 의존 역전 원칙 객체 지향 프로그래밍에서 의존관계 역전 원칙은 소프트웨어 모듈들을 분리하는 특정 형식을 지칭한다. 이 원칙을 따르면, 상..

[LSP] 객체지향 설계 5 원칙 (3)

학습목표 : 리스코프 치환 원칙 (Liskov substitution principle)을 이해하고, 예제로 설명할 수 있다. LSP[Liskov substitution principle] 리스코프 치환 원칙 - "서브 타입은 언제나 자신의 기반 타입(base type)으로 교체할 수 있어야 한다." - 로버트 C. 마틴 - 하위 클래스 is a kind of 상위 클래스 - 하위 분류는 상위 분류의 한 종류다. - 구현 클래스 is able to 인터페이스 - 구현 분류는 인터페이스할 수 있어야 한다. 바바라 리스코프 컴퓨터 프로그램에서 자료형 S가 자료형 T의 하위형이라면 필요한 프로그램의 속성(정확성, 수행하는 업무 등)의 변경 없이 자료형 T의 객체를 자료형 S의 객체로 교체(치환)할 수 있어야 ..