클래스 설계 원칙에 대한 바른 설명
개방-폐쇄의 원칙 : 클래스는 확장에 대해 열려있어야 하며 변경에 대해 닫혀 있어야한다.
- 단일 책임원칙 : 하나의 객체는 하나의 동작만의 책임을 가짐
하나의 클래스는 하나의 목적을 위해서 생성, 클래스가 제공하는 모든 서비스는 하나의 책임을 수행하는데 집중
- 개방-폐쇄의 원칙 : 클래스는 확장에 대해 열려 있어야 하며 변경에 대해 닫혀 있어야 한다
소프트웨어 구성요소 (컴포넌트, 클래스, 모듈, 함수)는 확장에 열려있고, 변경에는 닫혀 있다
- 리스코프 교체의 원칙 : 특정 메소드가 상위 타입을 인자로 사용할 때, 그 타입의 하위 타입도 문제 없이 작동해야 함
서브타입 ( 상속받은 하위 클래스)은 어디서나 자신의 기반 타입(상위 클래스)으로 교체할 수 있어야 한다.
- 의존관계 역전의 원칙 : 상위 계층이 하위 계층에 의존하는 전통적인 의존관계를 반전 시킴으로써 상위 계층이 하위계층의 구현으로부터 독립되게 할 수 있음
실제 사용 관계가 바뀌지 않으면 추상을 매개로 메시지를 주고 받음으로써 관계를 최대한 느슨하게 만드는 원칙
- 인터페이스 분리의 원칙 : 한 클래스는 자신이 사용하지 않는 인터페이스는 구현하지 말아야 한다.
클라이언트가 사용하지 않는 인터페이스때문에 영향을 받아서는 안된다.
===========================================================================
반응형
'NOTE' 카테고리의 다른 글
20231103-2 (0) | 2023.11.03 |
---|---|
20231103-1 (0) | 2023.11.03 |
20231102-4 (0) | 2023.11.02 |
20231102-3 (0) | 2023.11.02 |
20231102-2 (0) | 2023.11.02 |