
lazy프로퍼티는 직접 사용할 때까지 계산되지 않습니다. sean allen님의 예제가 잘 표현되어 있어서 참고했습니다. 잘 표현된 예제 한번 보시죠. Player구조체가 있으며 name, team, position프로퍼티가 있고 lazy프로퍼티로 introduction이 있습니다. struct Player { var name: String var team: String var position: String lazy var introduction = { return "Now entering the game: \(name), \(position) for the \(team)" }() } var jordan = Player(name: "Michael Jordan", team: "Bulls", position..

프로퍼티는 컴파일러가 자동 생성하는 접근자 메서드를 제어할 때 사용 원자성 자동 생성된 접근자 메서드는 기본적으로 메서드가 원자적으로 동작하게 만드는 데 락을 포함한다. 속성을 nonatomic으로 하면 락이 사용되지 않는다. Atomic 속성이 없더라도 명시적으로 원헀을 경우를 대비해 컴파일 에러 없이 원자성이 적용된다. 스스로 접근자 메서드를 정의하는 경우는 메서드가 원자적으로 동작하도록 구현해야 한다. 읽기/쓰기 read/wrtie 게터 세터 모두 사용한다. 프로퍼티가 자동 생성될 경우 컴파일러는 두 메서드 모두 생성한다. readonly 게터만 사용한다. 그리고 컴파일러는 프로퍼티가 자동 생성될 때에만 게터를 생성한다. 프로퍼티를 외부에 일기 전용으로 공개하고 싶을 때 사용할 수 있으나 클래스 확..
- Total
- Today
- Yesterday
- leetcode
- 딥러닝
- wwdc
- 머신러닝
- Xcode
- 독서
- swift5
- 스위프트
- objective-c
- Deep learning
- 책
- ios
- swiftUI
- iOS SwiftUI
- 문자열
- 책 추천
- 스위프트UI
- RX
- 알고리즘
- objc
- Animation
- 애니메이션
- rxswift
- 책 후기
- Algorithm
- stanford SwiftUI
- ReactiveX
- string
- SWIFT
- ARC
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |