Solid Principle 객체지향 프로그래밍 및 설계의 기본 원칙 1. SRP, Single Responsibility Principle 단일 책임 원칙 클래스 (객체) 는 단 하나의 책임만 가져야 한다 클래스는 소프트웨어 시스템 내에서 단 하나의 작업 또는 목적만 가져야 한다 프로그램의 유지보수성을 높이기 위한 설계 기법 책임의 범위는 개발자마다 기준이 다르기 때문에 100% 해답은 없다 2. OCP, Open/ Closed Principle 개방/ 폐쇄 원칙 소프트웨어 엔터티 (클래스, 모듈, 함수 등) 는 확장에는 열려 있어야 하지만 수정에는 닫혀 있어야 한다 클래스 동작을 수정하지 않고도 확장할 수 있어야 한다 3. LSP, LIskov Substitution Principle 리스코프 치환..