객체지향 설계 원칙 : SOLID 원칙



애플리케이션 설계

애플리케이션은 한 번 구현하고 나면 변경 시에 많은 비용이 소요되기때문에 설계를 잘하는 것이 중요하다. 잘 설계된 애플리케이션은 유지보수나 안정성, 그리고 보안 등의 관점에서 많은 이점을 제공해준다. 따라서 처음에 애플리케이션을 제대로 설계하는 것이 아주 중요하다!


SOLID 원칙

그렇다면 애플리케이션 설계를 어떻게 하는게 좋을까? 검증된 애플리케이션 설계 방법은 없나?

있다! 바로 로버트 C. 마틴의 SOLID 원칙이다. SOLID 원칙은 변화에 유연하게 대처하기 위한 객체 지향의 기본 설계 원칙이다. 주된 목표는 (1)한 곳의 변경이 다른 곳에 미치는 영향을 최소화하고, (2)확장이 기존 코드에 미치는 영향을 최소화하는 것이다.

SOLID는 각 다섯 개 원칙의 앞글자를 따서 명명한 것이다. 다섯가지의 원칙은 아래와 같다.

  • 단일 책임 원칙 (Single Responsibility Principle; SRP)
  • 개방 폐쇄 원칙 (Open-Closed Principle; OCP)
  • 리스코프 치환 원칙 (Liskov Substitution Principle; LSP)
  • 인터페이스 분리 원칙 (Interface Segregation Principle; ISP)
  • 의존 역전 원칙 (Dependency Inversion Principle; DIP)

다음 포스팅부터 하나씩 차례로 알아볼 예정이다.



:bookmark: REFERENCE
최범균, 「개발자가 반드시 정복해야 할 객체 지향과 디자인 패턴」, 인투북스
Solid Relevance