IT

객체지향 설계 5대 원리 SOLID

상쾌한기분 2021. 1. 21. 16:05
728x90
반응형

객체지향 설계 5대 원리 SOLID 

컴퓨터 프로그래밍에서 SOLID 로버트 마틴이 2000년대 초반에 명명한 객체 지향 프로그래밍  설계의 다섯 가지 기본 원칙을 마이클 페더스가 두문자어 기억술로 소개한 것이다. 프로그래머가 시간이 지나도 유지 보수와 확장이 쉬운 시스템을 만들고자 할 때 이 원칙들을 함께 적용할 수 있다. 

SOLID 원칙들은 소프트웨어 작업에서 프로그래머가 
소스 코드가 읽기 쉽고 확장하기 쉽게 될 때까지 소프트웨어 소스 코드를 리팩터링하여 코드 냄새를 제거하기 위해 적용할 수 있는 지침이다. 이 원칙들은 애자일 소프트웨어 개발 적응적 소프트웨어 개발의 전반적 전략의 일부다.

 

S - SRP - Single Responsiblity Principle (단일 책임 원칙) 

한 클래스는 하나의 책임만 가져야 한다.

O - OCP - Open/Closed Principle (개방/폐쇄 원칙)

소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야 한다.

L - LSP - Liskov Substitution Principle (리스코프 치환 원칙)

프로그램의 객체는 프로그램의 정확성을 깨뜨리지 않으면서 하위의 타입으로 인스턴스를 바꿀수 있어야 한다.

I - ISP - Interface Segregation Principle (인터페이스 분리 원칙)

특정 클라이언트를 위한 인터페이스 여러개가 범용 인터페이스 하나보다 낫다.

D - DIP - Dependency Inversion Principle (의존관계 역전 원칙)

프로그래머는 추상화에 의존해야지, 구체화에 의존하면 안된다.

728x90
반응형