본문 바로가기
카테고리 없음

SOLID : 객체 지향 프로그래밍과 설계에 대한 원칙

by 주연이가 주연이다. 2024. 2. 7.

SOLID : 객체 지향 프로그래밍과 설계에 대한 원칙

SOLID는 객체 지향 프로그래밍과 설계에 대한 원칙을 나타내는 콘셉트이다. 이 원칙들은 코드의 유지보수성, 유연성, 테스트 가능성을 증대시키는 데 중요한 역할을 한다.

  1. Single Responsibility Principle (SRP, 단일 책임 원칙)

    • 각 클래스나 모듈은 하나의 책임만을 가져야 한다. 이 원칙을 따르면 코드의 복잡성을 줄이고, 변경에 더 유연하게 대응할 수 있다.
  2. Open-Closed Principle (OCP, 개방-폐쇄 원칙)

    • 소프트웨어의 엔티티(클래스, 모듈, 함수 등)는 확장에는 열려있고, 수정에는 닫혀있어야 한다. 즉, 기존의 코드를 변경하지 않고도 기능을 추가하거나 변경할 수 있어야 한다.
  3. Liskov Substitution Principle (LSP, 리스코프 치환 원칙)

    • 부모 클래스를 자식 클래스로 바꾸어 사용해도 프로그램이 정상적으로 동작해야 한다. 이 원칙은 상속을 사용할 때 특히 중요하다.
  4. Interface Segregation Principle (ISP, 인터페이스 분리 원칙)

    • 클라이언트는 자신이 사용하지 않는 인터페이스에 의존하면 안된다. 이 원칙은 인터페이스가 세분화되어야 함을 의미하며, 이를 통해 시스템의 결합도를 낮추는 데 도움이 된다.
  5. Dependency Inversion Principle (DIP, 의존 역전 원칙)

    • 상위 모듈은 하위 모듈에 의존하면 안 되며, 둘 다 추상화에 의존해야 한다. 이 원칙은 구체적인 구현보다는 인터페이스나 추상 클래스에 의존함으로써 코드의 유연성을 증가시키는 데 도움이 된다.
728x90
반응형