일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- combine
- rxswift
- ribs
- Protocol
- tableView
- Xcode
- UITextView
- 리펙토링
- 리팩토링
- ios
- HIG
- 스위프트
- RxCocoa
- uitableview
- swift documentation
- SWIFT
- swiftUI
- Human interface guide
- 애니메이션
- MVVM
- map
- Refactoring
- clean architecture
- Clean Code
- uiscrollview
- 리펙터링
- Observable
- collectionview
- 클린 코드
- UICollectionView
- Today
- Total
목록LSP (3)
김종권의 iOS 앱 개발 알아가기
0. 코드로 알아보는 SOLID - 클래스 다이어그램 필수 표현 1. 코드로 알아보는 SOLID - SRP(Single Responsibility Principle) 단일 책임 원칙 2. 코드로 알아보는 SOLID - OCP(Open Close Principle) 개방 폐쇄 원칙 3. 코드로 알아보는 SOLID - LSP(Liskov Substitution Principle) 리스코프 치환 원칙 4. 코드로 알아보는 SOLID - ISP(Interface Segregation Principle) 인터페이스 분리 원칙 5. 코드로 알아보는 SOLID - DIP(Dependency Inversion Principle, testable) 의존성 역전 원칙 6. 코드로 알아보는 SOLID - Coordinato..
LSP 부모 클래스의 객체 대신에 자식 클래스의 객체로 치환해도 프로그램의 행위에 변화를 주지 않아야 한다는 원칙 자식 클래스 or 구현체를 만들 때, 상위 타입의 객체로 치환해도 문제가 없는지 파악해야 한다는 의미 인터페이스를 구현한 구현체 역시도 LSP원칙을 준수 목적: 치환 가능성을 조금이라도 위배하면, 추후 상당량의 별도 메커니즘이 필요 정사각형 - 직사각형 문제 사각형의 하위 타입으로 정사각형으로 구성하면 LSP위배 User입장에서는 Interface인 Reactangle의 성격을 생각하고 사용하지만, Square에서의 성격이 다른경우가 존재하면 오류 발생 그 오류를 해결하기 위해서는 상당량의 별도 매커니즘이 User에 필요하게 되는 악순환 발생 예시) setH, setW 호출 후 넓이 계산하는..
Architecture vs SOLID Architecture는 빌딩, SOLID는 좋은 벽돌 SOLID를 통해서 좋은 아키텍처를 정의 SOLID: 함수와 데이터 구조를 클래스로 배치하고, 이 클래스들을 결합하는 방법에 대한 이론 cf) architecture vs design pattern vs SOLID architecture: 프로그램 내에서 큰 구조로 구성되어 다른 구성 요소들을 관리 방법으로 넓은 개념 design pattern: 특정 유형의 문제를 해결하는 방법으로 좁은 개념 SOLID: design pattern은 특정 문제 유형을 해결하는 개념이고, SOLID는 아키텍처를 위하여 세부 구조를 어떻게 배치하고 결합하는지에 관한 개념 SOLID의 목적 변경에 유연 이해하기 쉬움 많은 소프트웨어..