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 | 31 |
Tags
- 리펙토링
- combine
- rxswift
- Refactoring
- uitableview
- collectionview
- Protocol
- SWIFT
- clean architecture
- UITextView
- 클린 코드
- ribs
- 리펙터링
- uiscrollview
- Observable
- Xcode
- 리팩토링
- 스위프트
- ios
- Human interface guide
- MVVM
- swift documentation
- HIG
- tableView
- map
- UICollectionView
- Clean Code
- RxCocoa
- 애니메이션
- swiftUI
Archives
- Today
- Total
목록Dependency Rule (1)
김종권의 iOS 앱 개발 알아가기
[Clean Architecture] 12. SOLID 원칙 - DIP (Dependency Inversion Principle)
DIP 소스 코드 의존성이 추상에 의존하며 구현체에는 의존하지 않는 시스템 이유: 의존한다는 것은 의존하는 대상이 변경될때 영향을 받으므로, '추상'은 '구체'보다 변화가 적기때문에 '추상'에 의존함으로서 변경에 유연한 코드를 유지하기 위함 인터페이스는 구현체보다 변동성이 낮은 점을 사용 소프트웨어 설계자는 인터페이스의 변동을 낮추고 구현체에 기능을 추가할 수 있는 방법을 찾기위해 노력 운영체제나 플랫폼 같이 안정성이 보장된 환경에 대해서는 DIP를 무시 예를 들어 자바의 String은 구체 클래스이며, String클래스가 변경되는 일이 거의 없으므로 DIP가 아니어도 안정적 Factory 아이디어: 변동성이 큰 구현체 객체를 생성할 때는 의존성을 주의하여 생성 builder 역할 구현체 객체를 사용하기..
Clean Architecture/Clean Architecture 기초
2021. 6. 28. 22:58