Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

Geon

SOLID 원칙 본문

OOP

SOLID 원칙

jgkim1008 2022. 3. 25. 04:22

SOLID 원칙을 왜지킬까??

  • 코드의 품질을 높이기 위해서

코드의 품질이 무엇인데요??

  • 가독성
  • 단순성
  • 유연성

Single Responsibility Principle(단일책임원칙)

  • 한클래스는 한가지의 책임만을 가져야한다.
  • 하지만 MVC패턴에서의 ViewController는 이러한 원칙을 어기고 있다.

Open-Close Principle

  • 확장에는 열려있고 변경에는 닫혀있어야 한다.
  • Swift에서는 enum은 case가 추가되면 switch문에 모두 추가해줘야하기에 메서드에 대한 행동을 추가할떄 용이
  • Protocol은 추상화된 인터페이스가 변경될떄는 해당 프로토콜을 준수해야하기에 모두 오류

Liskov Substitution Principle

  • 자식클래스는 부모 클래스로써의 역할을 모두 수행해야 한다.

Dependency-Inversion Principle

  • 의존성 역전을 통해 연관관계를 끊어야 한다.
  • 추상화된 인터페이스에 의존해야한다.
  • delegate pattern

Interface-Segregation Principle

  • 클라이언트가 자신이 사용하지 않는 인터페이스에 의존하지 말아야한다.

'OOP' 카테고리의 다른 글

SOLID - DIP  (0) 2022.03.27
SOLID - ISP  (0) 2022.03.27
SOLID - OCP  (0) 2022.03.25
SOLID - SRP  (0) 2022.03.25