안녕하세요! Diana 입니다.프로젝트를 진행하며 데이터를 저장할 공간이 필요하게 되었는데요.이때 저희는 CoreData를 사용하기로 결정했습니다.따라서 오늘은 CoreData에 대해 알아보려고 합니다. 공식문서에 따르면 우리는 코어데이터를 통해 하나의 디바이스에서 캐시 데이터를 유지하거나 CloudKit을 사용하여 여러 디바이스에서 데이터를 동기화 시킬 수 있다고 합니다. 코어데이터는 데이터 모델 에디터를 통해 데이터 타입과 데이터 간의 관계 그리고 관련된 클래스 정의를 정의할 수 있도록 도와준다고 하네요.여기서 많이들 코어데이터는 DB가 아닙니다! 라고 하는데 전 이부분이 이해 가지 않았습니다. 데이터베이스와 같이 데이터를 save하고 fetching 하는 등의 작업이 이루어지는데 DB가 아니라니..
안녕하세요. Diana입니다.오늘은 개발에서 매우 중요한, Thread에 대해 다뤄보려고 합니다. ✅ Thread란?Thread란 간단히 말해서 프로세스에서 잘게 나뉘어진 Task의 단위입니다. 프로세스는 메모리에 할당이 되면 각각의 Data, Code, Stack, Heap 영역을 제공받은 뒤 메모리 영역을 서로 공유하지 않고 독립적으로 작동합니다. 하지만 하나의 프로세스 내부에서 나뉘어진 Thread는 Data, Code, Stack, Heap의 영역 중 Stack 영역을 제외한 메모리 영역을 서로 공유합니다. 우리가 Swift에서 타입을 선택하는 기준도 이러한 Thread의 특징과 관련이 있습니다. Swift에서 타입을 정의하기 위해서는 Class와 Struct 그리고 Enumeration 등의 방..
안녕하세요 Diana 입니다. 오늘은 Tuist 를 통해 KakaoMapsSDK 를 사용할 때의 설정에서 나타나는 문제와 해결방법을 기록 해보려고 합니다.Tuist 는 버전 4, KakaoMapsSDK는 버전 2를 사용합니다. 그럼 시작해볼까요? 우선 Tuist를 설치하고 프로젝트를 생성한 뒤 `tuist edit` 명령어를 통해 Manifest 파일을 실행해줍니다.Manifest 파일은 이미 알고 있다시피 프로젝트와 워크스페이스를 정의하고 실행 프로세스를 명시하는 파일입니다.즉 외부 프레임워크인 KakaoMapsSDK 를 사용하려면 Manifest에 설정을 해줘야겠죠? ✅ Tuist/Package.swift 설정import PackageDescription#if TUIST import Proj..
안녕하세요! Diana 입니다.오늘은 SwiftUI에서 @State와 @StateObject 를 비교해보려고 합니다.바로 시작해볼께요~ ✅ @StateSwiftUI를 처음 공부할 때 제일 처음 접하는 Property Wrapper 중 하나가 바로 @State 죠.@State에 대한 공식문서의 설명은 아래와 같습니다.A property wrapper type that can read and write a value managed by SwiftUI- Apple Docs: https://developer.apple.com/documentation/swiftui/state SwiftUI에서 관리되고 있는 값을 읽거나 쓰기 위한 Property Wrapper 타입이라고 하네요.또한 WWDC 에서는 State는..
안녕하세요 Diana 입니다.오늘은 정말 핫한 Combine에 대해 알아보려고 합니다. 제가 처음 업무를 시작했던 2020년도에는 RxSwift가 대세였던거로 기억하는데요.Combine이 공개된지 벌써 5년이 되어가니 이제 Combine의 수요가 많이 늘어났더라구요.그리고 요새 프로젝트를 하며 Combine으로 된 예제들을 자주 접하는데 굉장히 재밌어 보였구요.그래서 저도 공부해보려고 합니다! ✅ Combine 이란?그럼 Combine은 대체 무엇일까요?Combine은 2019년도 Apple에서 발표한 선언형 프레임워크로 공식문서에서의 설명은 아래와 같습니다.Custom handling of asynchronous events by combining event-processing operators.Ap..
- Total
- Today
- Yesterday
- 스위프트
- tipview
- swift
- ViewBuilder
- swiftcoredata
- BoxedType
- opaque
- 팁킷
- private(set)
- capsulation
- 알고리즘
- 코어데이터
- threadprogramming
- tuist v4
- coredata
- Tuist
- swiftpackage
- Concurrency
- kakaomapssdk
- ios
- asymptoticnotation
- Algorithm
- SwiftUI
- tipkit
- reusablelist
- 개발자코테
- boxedprotocoltype
- boxedprotocol
- 빅세타표기법
- opaquetype
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |