일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- rxswift
- 리펙터링
- 애니메이션
- 클린 코드
- clean architecture
- SWIFT
- uitableview
- swiftUI
- MVVM
- swift documentation
- Observable
- Human interface guide
- UICollectionView
- 리펙토링
- ios
- Protocol
- UITextView
- combine
- 리팩토링
- map
- Xcode
- tableView
- ribs
- Clean Code
- collectionview
- RxCocoa
- uiscrollview
- HIG
- Refactoring
- 스위프트
- Today
- Total
목록pattern matching (2)
김종권의 iOS 앱 개발 알아가기
Enum 생성자 사용 enum도 class와 struct와 같이 초기화하여 사용할 수 있도록 하는 방법이 존재 ex) 과일 이름 문자열 값을 enum타입의 생성자로 넣으면, 과일 타입으로 나오게끔 하는 방법 let fruit = "apple" let type = Fruit(fruit) print(type) // Optional(Fruit.apple) enum 생성자 사용 방법 enum 준비 enum Fruit { case apple case banana case orange } switch문을 통하여 case타입을 초기화 하는 방식이기에, 내부적으로 초기화할때 사용할 각 타입에 따른 이름 값 정의 private var nameValue: String { switch self { case .apple: r..
패턴 매칭) 많이 사용하는 익숙한 패턴 1) 바인딩 let age = (20, 34) switch age { case let (a1, a2): print("\(a1), \(a2)") default: break } 2) 와일드 카드 switch age { case let (a1, _): // '_' 와일드 카드 패턴 print("\(a1), \(a2)") default: break } 3) 튜플 let (v1, v2) = (1, 2) print(v1) print(v2) 4) enum enum MyEnum { case a(Int) case b } let myEnum = MyEnum.a(10) if case let a(int) = myEnum { print(int) } 패턴 매칭) 익숙하지 않은 패턴 1) 옵..