일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- UICollectionView
- MVVM
- Human interface guide
- swiftUI
- 스위프트
- swift documentation
- 애니메이션
- RxCocoa
- Observable
- UITextView
- 리팩토링
- uitableview
- 클린 코드
- clean architecture
- ribs
- map
- combine
- SWIFT
- Refactoring
- collectionview
- tableView
- HIG
- Xcode
- ios
- Protocol
- 리펙터링
- uiscrollview
- rxswift
- Clean Code
- 리펙토링
- Today
- Total
목록testable (4)
김종권의 iOS 앱 개발 알아가기
1. Quick, Nimble으로 테스트 쉽게하는 방법 - Quick, Nimble 개념 2. Quick, Nimble으로 테스트 쉽게하는 방법 - describe, context, it, beforeEach 실제 코드에 테스트하는 방법 (RxNimble, 비동기 테스트 방법) Nimble이란? * Nimble (재빠른) 가독성 높은 테스트 assertion 라이브러리 예상한 결과와 실제 결과를 비교하여 테스트를 수행하고, 테스트가 성공한 경우 상세한 정보를 제공 글을 읽는 것처럼 쉽게 읽히는 assertion들을 제공 대표적으로 expect()와 뒤에 to, toNot, notTo 등이 존재 import Nimble expect(seagull.squawk).to(equal("Squee!")) expec..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/0O8Er/btrmcMlPhgt/OAmkPALKfSR9NmbI5ybHM0/img.png)
* 알아야하는 기본 지식 - 테스트 코드를 작성해야 하는 이유 - 클린 코드 (창발성) - DIP(Dependency Inversion Principle) 설계 전에 필요한 프레임워크 설치 RxSwift RxCocoa ViewModel을 testable되도록 만드는 이유 viewModel에는 UI 인풋에 따라 UseCase를 통해 비즈니스 로직을 실행 viewModel은 어떤값을 UI에 넘겨주어야하는지 정보를 담고 있는 컴포넌트 UI의 인풋부터 시작하여, 비즈니스 로직과 아웃풋까지 동시에 모두 테스트할 수 있는 컴포넌트는 ViewModel ViewModel을 testable하게 구현하는 아이디어 ex) LoginVM (로그인 ViewModel)을 만드는 예시 LoginVM 프로토콜을 만들어서 테스트할 때..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c0w2fv/btrgAM7OKM3/wZxUbM4yMOc1K26bWEilP0/img.png)
* URLSession 기본 개념은 여기 참고 준비 구현된 해당 소스 코드 사용 시, 아래 작업 사용 후 실행 https://unsplash.com/developers 가입 후 api키 획득 Contants에 accessKey입력 struct Constants { static let accessKey = "Your accessKey" } Network 레이어 설계 네트워크의 핵심 모듈 Endpoint: path, queryPramameters, bodyParameter등의 데이터 객체 Provider: URLSession, DataTask를 이용하여 network호출이 이루어 지는 곳 Endpoint는 요청, 응답 protocol을 준수하는 상태 requestable에는 baseURL, path, met..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/czgS7y/btrfoH7SvVQ/Uv5qQOGtrppdozUJUFymF1/img.png)
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..