일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 애니메이션
- 리펙터링
- RxCocoa
- collectionview
- Observable
- MVVM
- clean architecture
- swiftUI
- ribs
- 스위프트
- 리펙토링
- uitableview
- 리팩토링
- UICollectionView
- UITextView
- Clean Code
- 클린 코드
- Xcode
- uiscrollview
- HIG
- rxswift
- map
- Protocol
- combine
- swift documentation
- Refactoring
- ios
- Human interface guide
- SWIFT
- tableView
- Today
- Total
목록If (4)
김종권의 iOS 앱 개발 알아가기
복잡한 조건문 보통 복잡한 조건문은 코드의 깊이가 길어지는 형태 ex) 아래처럼 맨 처음 깊이는 if-else이며, if문 하위에 또다른 if-else가 있고, else하위에 if-else가 있어서 총 깊이가 3개짜리인 조건문 let isUserLoggedIn = true let hasSubscription = false let isContentAvailable = true if isUserLoggedIn { if hasSubscription { print("사용자가 로그인하고 구독이 활성화되어 있습니다.") } else { if isContentAvailable { print("사용자가 로그인했지만 구독이 없습니다. 콘텐츠를 사용할 수 있습니다.") } else { print("사용자가 로그인했지만 구..
조건문 초기화 기존 방식 프로퍼티를 하나 선언해 놓고 조건문에 따라 값을 대입하는 방법 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 클로저이므로..
if 문에서 제공하는 unwrapping 조건문에서 제공하는 unwrapping을 사용하지 않은 경우 var b1: Bool? = true if let unwrppedB1 = b1, unwrppedB1 { print("true b1") } else { print("false b1") } // true b1 조건문에서 제공하는 unwrapping 사용한 경우 바로 b1 == true로 optional 타입이라도 자동으로 unwrapping if b1 == true { print("true1 b1") } else { print("false1 b2") } Bool타입이 아닌 다른 타입도 적용 가능 var integer1: Int? = 1 if integer1 == 1 { print("integer1 is on..
For - in 루프 stride(from:to:by:) stride(from:through:by:): through 포함 While 루프 repeat - while: 조건을 고려하기 전 repeat블록을 부조건 한번 실행 repeat { } while 조건문 switch 문의 암시적 fall through case문을 여러개 사용하지 않고, 컴마로 구분하여 'or 조건' 사용 (주의: if문에서는 콤마가 'end 조건') let anotherCharacter: Character = "a" // 컴파일 에러 switch anotherCharacter { case "a": case "A": print("The letter A") default: print("Not the letter A") } // 정상 ..