Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- modern concurrency
- SWIFT
- WWDC
- APNS
- 오블완
- ios
- 야곰 # 야곰아카데미커리어스타터캠프 #iOS개발자 # 부트캠프
- 티스토리챌린지
- modern concurrency deep dive
Archives
- Today
- Total
Geon
SOLID 원칙 본문
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 |