정보처리기사[실기]
[개념정리] 객체지향 설계 원칙(SOLID)
microsaurs
2024. 10. 15. 16:19
💡SOLID 원칙
단일 책임의 원칙 SRP (Single Presponsibility Principle) |
하나의 클래스는 하나의 목적을 위해서 생성되며, 클래스가 제공하는 모든 서비스는 하나의 책임을 수행하는데 집증되어 있어야 한다는 원칙 객체 지향 프로그래밍 5원칙 중 나머지 4원칙의 기초 원칙이다. |
개방 폐쇄 원칙 OCP (Open Close Principle) |
소프트웨어의 구성요소(컴포넌트, 클래스, 모듈, 함수)는 확장에는 열려있고, 변경에는 닫혀있어야 한다는 원칙 |
리스코프 치환의 원칙 LSP (Liskov Substitution Principle) |
서브 타입(상속받은 하위 클래스)은 어디서나 자신의 기반 타입(상위 클래스)으로 교체할 수 있어야 한다는 원칙 |
인터페이스 분리의 원칙 ISP (Interface Segregation Principle) |
한 클래스는 자신이 사용하지 않는 인터페이스는 구현하지 말아야 한다는 원칙 객체 설계 시 특정 기능에 대한 인터페이스는 그 기능과 상관없는 부분이 변해도 영향을 받지 않아야 한다는 원칙 |
의존성 역전의 원칙 DIP (Dependency Inversion Principle) |
실제 사용 관계는 바뀌지 않으며 추상을 매개로 메시지를 주고 받음으로써 관계를 최대한 느슨하게 만드는 원칙 |