[소공129]객체지향프로그래밍원칙

반응형

객체지향프로그래밍원칙

siloD

'silo D(실론티)

-SRP : 클래스에는 한가지 종류의 책임만을 두어야 함 :변경에취약:객체가 책임을 하나만 갖는것

-ISP:클라이언트는 자신이 사용하지 않는 메소드와의 의존관계를 갖지않도록(인터페이스는 구체화하여 작성):인터페이스 변경시 일반화가 심하면 참조 클래스가 모두 변화 문제

-LSP:서브타입은 언제나 기반타입으로 대체할 수 있어야 함(자식타입은 부모타입사용되는곳에 대체가능)

       -부모클래스 치환이 가능한 형태:파생클래스 활용도 효율적증대 / 객체지향특징 폴리모피즘, abstraction 구현

       -위배시: 상속한 자식클래스 예외에러,자식클래스가 아무일도하지 않음, 클라이언트와 자식의 밀접도증가(직접접근)

       -해결   : 혼동여지가 없고 여러 트레이드오프 고려선택시 그대로 둠, 상속구조필요시 Extract Subclass, pushdown field, push down method등으로 리팩토링으로 상속계층구조구성

-OCP : 확장에대해서개방, 변경에 대해서는 폐쇄

-DIP:자주변경되는 클래스에 의존하지 말고 추상클래스나 인터페이스에 의존

반응형

'T-prj > 1.SW공학' 카테고리의 다른 글

[소공130]SW품질관리문제점  (0) 2012.08.20
[소공128]전자정부 웹표준성 준수지침  (0) 2012.08.20
[소공127]SW위기 및 해결방안  (0) 2012.08.20

Top