일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Refactoring
- combine
- SWIFT
- Human interface guide
- tableView
- map
- rxswift
- Xcode
- collectionview
- 애니메이션
- UITextView
- uiscrollview
- 리펙터링
- 리펙토링
- HIG
- Clean Code
- RxCocoa
- 리팩토링
- Protocol
- clean architecture
- 클린 코드
- swiftUI
- ribs
- swift documentation
- MVVM
- uitableview
- UICollectionView
- 스위프트
- Observable
- ios
- Today
- Total
목록초기화 (2)
김종권의 iOS 앱 개발 알아가기
조건문 초기화 기존 방식 프로퍼티를 하나 선언해 놓고 조건문에 따라 값을 대입하는 방법 func normalInit(a: Int) { let string: String if a.isMultiple(of: 2) { string = "even" } else { string = "odd" } print(string) } Swift5.9+ 에서의 조건문 Swift의 발전 방향을 보면, 더욱 간결하게 표현하는게 목적 Swift5.9에서는 클로저와 조건문을 하나의 표현식으로 사용 가능하므로 타입 명시도 필요 없고, result builder 클로저로 인식하므로 return 키워드 생략도 가능 func newInit1(a: Int) { // String 타입 명시 안해도됨 // result builder 클로저이므로..
일반적인 초기화 방법 상속 관계에서 주입해주는 인스턴스가 super class 것이든, sub class 것이든 상관 없이 초기화하고 특정 업무를 수행할 때 인스턴스를 넘기는 형태로 구현 class BaseA { var value: String { "BaseA" } required init() { } } class SubA: BaseA { override var value: String { "SubA" } required init() { super.init() } } printByPassInstance(a: BaseA()) // BaseA printByPassInstance(a: SubA()) // SubA func printByPassInstance(a: BaseA) { print(a.value) } ..