Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- MVVM
- uitableview
- 스위프트
- Human interface guide
- Xcode
- Refactoring
- UICollectionView
- SWIFT
- 리펙터링
- Protocol
- rxswift
- clean architecture
- Clean Code
- 애니메이션
- collectionview
- HIG
- swiftUI
- RxCocoa
- uiscrollview
- Observable
- swift documentation
- UITextView
- ribs
- ios
- 클린 코드
- tableView
- 리펙토링
- combine
- 리팩토링
- map
Archives
- Today
- Total
목록out of line mutable storage (1)
김종권의 iOS 앱 개발 알아가기
[iOS - swift] Swift에서 Collection 타입이 value 타입으로 설계한 이유 (#class 타입을 struct로 감싸는 것의 의미, #out-of-line mutable storage, 동시성, data race condition)
Swift에서 Collection 타입은 모두 value 타입reference type은 다중 스레드 환경에서 동기화 문제와 Data race 문제를 발생시키므로 value타입으로 관리하는것이 더욱 용이하기 때문에, Collection 타입은 value type으로 설계하지만 아래 코드처럼 reference 타입을 value 타입으로 감싼 것 뿐이며, struct 내부도 모두 value type이 아님class SomeClass {}struct SomeStruct { let c = SomeClass()}내부도 모두 value type으로 구성하면 비용이 발생하는데, 아래에서 계속 설명Large structs의 복사 방식 특징 2가지아래처럼 person을 복사할 때 내부적으로 비용이 많이 발생let ..
iOS 응용 (swift)
2024. 7. 5. 01:18