개발놀이터

면접 준비 : 객체지향의 5대 원칙 SOLID 본문

CS 지식/면접준비

면접 준비 : 객체지향의 5대 원칙 SOLID

마늘냄새폴폴 2022. 8. 1. 06:10

Q. 객체지향의 5대원칙 (SOLID)에 대해서 설명해주세요.
A. 객체지향의 5대원칙은 SOLID라고 불리며 각각 SRP, OCP, LSP, ISP, DIP로 이루어져 있습니다. SRP는 단일책임 원칙으로 한 클래스에 하나의 책임만 가져야 한다는 원칙입니다. OCP는 개방-폐쇄 원칙으로 확장에는 열려 있으나 변경에는 닫혀 있어야 한다는 원칙입니다. 이는 다형성을 활용해야 합니다. LSP 리스코프 치환 원칙으로 프로그램의 객체는 프로그램의 정확성을 깨뜨리지 않으면서 하위 타입의 인스턴스로 바꿀 수 있어야 하는 원칙입니다. 리스코프 치환 원칙에 따르면 상위 타입을 상속해서 재정의 했을 때 프로그램이 깨지지 않아야 합니다. ISP는 인터페이스 분리 원칙으로 클라이언트는 자신이 사용하지 않는 메서드에 의존 관계를 맺으면 안된다는 원칙입니다. 특정 클라이언트를 위한 인터페이스 여러개가 범용 인터페이스 하나보다 더 낫습니다. 즉, 비대한 인터페이스보단 더 작고 구체적인 인터페이스로 분리해야 합니다. DIP는 의존관계 역전 원칙으로 추상적인 것은 자신보다 구체적인 것에 의존하지 않고, 변화하기 쉬운 것에 의존해서는 안된다는 원칙입니다. 구체적으론 구현 클래스에 의존하지 않고, 추상 클래스에 의존해야 한다는 것 입니다.

 

https://coding-review.tistory.com/138

 

객체지향 5대 원칙 SOLID

객체지향 프로그래밍의 5가지 설계 원칙 SOLID SOLID란 객체 지향 프로그래밍을 하면서 지켜야 하는 5대 원칙으로 각각 SRP(단일 책임 원칙), OCP(개방-폐쇄 원칙), LSP(리스코프 치환 원칙), ISP(인터페

coding-review.tistory.com

1