일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- struct
- UserDefaults
- IOS
- 오브젝트
- Linked List
- Apple Developer Academy
- 프로세스 스케줄링
- COLOR
- Algorithm
- 앨런
- 가상 메모리
- forEach
- 상호배제
- core data
- 비동기
- Swift
- 동시성
- SwiftUI
- 100 days of SwiftUI
- 파일 시스템
- decode
- @state
- async
- 운영체제
- Codable
- 동기화
- 데드락
- deadlock
- 인프런
- Today
- Total
목록Swift - 데이터베이스 (6)
기어가더라도 제대로
CoreData 옵셔널의 의미 CoreData는 기본적으로 Entity에 프로퍼티가 값이 옵셔널 타입이다. 여기서 옵셔널의 의미는 Swift 에서 사용하는 옵셔널의 의미와 조금 다르다. Swift: 이 변수에 값이 있을수도 있고, 값자체가 없을 수도 있음 CoreData: 인스턴스가 생성이 되서 프로퍼티에 값을 할당하기 전에 빈 공간을 만들어준다는 의미 이러한 차이가 있다. 보통 엔티티를 만들고 Codegen을 통해서 파일을 만들면 Swift 파일 두개가 생성이 되는데, 잘 보면 그 안에 형식이 다음과 같다. Entity의 name 프로퍼티가 String 타입이지만, 옵셔널을 달고 있는데, 위에서 말한 것 처럼 swift 적 옵셔널이 아니라 CoreData 적인 옵셔널이다. @NSManaged는 Prop..
ForEach 문에서 \.self 가 가지는 의미 List { ForEach([2, 4, 6, 8, 10], id: \.self) { Text("\($0) is even") } } 위의 정수형 배열이 변한다고 했을 때 변하는 값만 추적해서 뷰를 다시 짜야함 배열에서 값이 유일하다고 인정 받기 위해서, Identifiable 이란 프로토콜을 채택하기도 하는데, 그게 없어도 String, Int 처럼 유일함을 인정받을 수 있음 \.self : 그 오브젝트 '자체' 를 식별자로 쓰겠다는 의미 사실 여기서 String, Int 는 Hashable 이라는 프로토콜을 채택하고 있어서 Struct이긴 하지만 해쉬값으로 변환이 가능하기 때문에 \.self 로 사용이 가능함 우리가 추가해주는 커스텀한 타입들도 Hasha..
목차 - core data 는 무엇? - DB 와 다른가? ORM은 무엇인가? - Application's Model Layer - Data Model 만들기 - Entity 란? - Core Data Model로 부터 Swift Class 만들기(3가지 방법) - Core Data Stack 이란? 그리고 생성하기 - NSManagedObjectModel - NSManagedObjectContext - NSPersistentStoreCoordinator - NSPersistentContainer - 뷰와 연결하기 - 사례 예시: Business, Department, Employee :: Core Data Model - Get, Add, Delete, Update Core Data는 무엇인가? 앱의 모..