프로그래밍의 기본 원칙

Jnns·2023년 12월 21일
post-thumbnail

프로그래밍의 기본 원칙

  • 의존성 제거(Decoupling)
  • 응집성(Cohesion)

응집성이 높은 코드는 외부에 대한 의존성이 줄어들게 되며, 잘 정의된 역할만을 수행하기에 변경에 대한 영향을 외부로 전달하지 않고 내부에서 해결한다. 따라서 확장이나 변경이 쉬워진다는 것이다.

많이 알려진 객체지향 언어의 'SOLID' 원칙도 결국은 의존성을 줄이고 응집성이 높은 코드를 만들어내는데 그 목적이 있다.

  • SOLID

    • SRP(Single Responsibility Principle 단일 책임 원칙)
      한 클래스는 하나의 책임만 가져야 한다.

    • OCP(Open Close Principle 개방 폐쇠 원칙)
      클래스는 확장에 대해서는 열려 있어야 하며, 수정에 대해서는 닫혀 있어야 한다.

    • LSP(Liskov Substitution Principle 리스코프 치환 원칙)
      자식 클래스는 부모 클래스의 자리를 대체할 수 있어야 한다.

    • ISP(Interface Segrewgation Principle 인터페이스 분리 원칙)
      사용하지 않는 인터페이스는 구현하지 않아야 한다.

    • DIP(Dependency Inversion Principle 의존관계 역전 원칙)
      고차원 모듈은 저차원 모듈에 의존해서는 안되며, 둘 다 추상화에 의존해야 한다.

0개의 댓글