일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- httpcookie
- atlasian
- infoplist
- dfs
- 애러처리
- 스위프트
- IOS
- xcode
- 알고리즘
- WWDC
- scenedelegate
- BFS
- wwdc24\
- swiftdata
- 빗버켓
- 연결
- 옆집
- 데이터구조
- persistence
- 24
- Swift
- 콜드픽스
- navigationaction
- 빝버켓
- decidepolicyfor
- 2024
- 쿠키
- om-4ti
- JSON
- 데이터장소
- Today
- Total
목록This is da(大) SWIFT (18)
내가 iOS 개-발자라니.
우리 회사 앱은 타사와 마찬가지로 웹앱이 베이스이다. 웹이 오류(Error 404 등)를 나타내면 속수무책으로 당하기만 해서는 안된다. 그래서 쓰는 에러 처리 코드이다.쿠키 로드에 실패했을때 사용하는 에러처리 코드입다. 웹뷰 에러 처리 코드: func webView(_ webView: WKWebView, decidePolicyFor navigationResponse: WKNavigationResponse, decisionHandler: @escaping (WKNavigationResponsePolicy) -> Void) { if let response = navigationResponse.response as? HTTPURLResponse { ..

SwiftData 커스텀 데이터 저장소 예제 1. DataStore의 역할- 데이터 저장 및 읽기: SwiftData에서 DataStore는 데이터의 영속성을 담당하며, 모델 컨텍스트(ModelContext)와 모델 컨테이너(ModelContainer)와 상호작용한다.- 데이터 스냅샷: DataStore는 모델의 현재 상태를 캡처한 스냅샷을 사용하여 데이터를 읽고 씀. 2. DataStore 프로토콜- DataStoreConfiguration: 저장소의 설정을 정의- DataStoreSnapshot: 모델 값과 상호작용하는 스냅샷을 정의- DataStore: 저장소 구현을 정의하며, 페칭(fetch) 및 저장(save) 기능을 포함 3. 커스텀 JSON 저장소 구현 예제- JSONStoreConfigur..
SwiftData와 Core Data의 차이점SwiftData의 특징1. 현대적인 Swift 통합: - Swift 언어의 최신 기능: SwiftData는 Swift의 최신 기능, 특히 매크로(@Model, #Unique, #Predicate 등)를 사용하여 데이터 모델링 및 영속화(persistence)를 단순하고 직관적으로 만든다. - SwiftUI와의 원활한 통합: SwiftUI의 View에서 데이터 바인딩과 상태 관리를 쉽게 수행할 수 있다.2. 매크로 기반 접근: - @Model 매크로: 모델 클래스에 이 매크로를 사용하여 영속성을 부여 - #Unique 매크로: 모델 속성의 고유성을 보장하여 중복을 방지 - #Index 매크로: 쿼리 성능을 향상시키기 위해 모델 속성에 인덱스를..

SwiftData의 새로운 내용 상세 요약 SwiftData 소개SwiftData는 iOS 17에서 도입된 프레임워크로, Apple 플랫폼 전반에 걸쳐 앱의 데이터를 Swift로 모델링하고 영속화하는 기능을 제공한다. Swift 언어의 현대적 기능(예: 매크로)을 활용하여 빠르고 효율적이며 안전한 코드를 작성할 수 있도록 한다. SwiftData의 주요 기능1. 모델링 및 영속성(persistence): - SwiftData는 앱의 모델 계층을 쉽게 구축하고 앱이 실행될 때마다 데이터를 영속화한다. - 스키마의 모델링과 마이그레이션, 그래프 관리, CloudKit과의 동기화 기능을 제공. 2. @Model 매크로: - 모델 클래스에 @Model 매크로를 사용하여 영속성을 부여. - Swif..

Swift 언어 및 생태계 발전 1. Swift의 오픈 소스화 및 커뮤니티 주도 발전 - 2014년 WWDC: Apple이 Swift 언어를 공식 발표. - 2015년: Swift가 오픈 소스로 전환되고 Linux에서도 사용할 수 있게 됨. - 언어 및 표준 라이브러리의 커뮤니티 주도 발전 프로세스 도입: 커뮤니티의 제안과 피드백을 반영하여 언어와 라이브러리를 발전시킴. 2. Swift 패키지 관리자 도입 - 2016년 Swift 3와 함께: Swift 패키지 관리자(Swift Package Manager) 도입. 이는 Swift 프로젝트를 관리하고, 종속성을 쉽게 처리할 수 있게 함. - 새로운 언어 발전 프로세스 도입: Swift 3는 새로운 언어 발전 프로세스를 따르는 첫 번째 버..

"Lazy" 변수는 Swift에서 사용되는 개념으로 변수를 처음 사용할 때까지 초기화를 연기하는 방법을 의미함. 이는 메모리 사용을 최적화하고, 초기화 비용이 높은 객체를 효율적으로 관리하기 위해 사용 Lazy 변수의 특징1. 지연 초기화 (Lazy Initialization): - Lazy 변수는 처음 접근할 때까지 초기화되지 않음 - 이로 인해 초기화 비용이 높은 연산을 필요할 때만 수행할 수 있음2. 메모리 최적화: - 필요할 때만 메모리를 사용하게 되어 메모리 사용량을 최적화할 수 있음3. 순환 참조 방지: - Lazy 변수는 객체 초기화 중에 순환 참조 문제를 방지하는 데 유용할 수 있음Swift에서의 Lazy 변수 사용법Swift에서 `lazy` 키워드를 사용하여 Lazy 변수를..

기기 사용 허가(GPS 같은거)를 받을때 InfoPlist에 내용을 넣기 마련이다.설정하지않으면 기본 멘트같은게 있지만 그래도 신경을 써야할때가 온다. 그리고 앱이 글로벌화를 진행중이라면 텍스트 내용을 기기 언어설정을 반영하기위해 스위프트에서 localization 사용한다. 로컬라이제이션(Localization)은 애플리케이션을 여러 언어와 문화권에 맞게 번역하고 조정하는 과정이다. 이를 통해 애플리케이션을 다양한 지역 사용자에게 적합하게 만들 수 있다. iOS 애플리케이션에서 로컬라이제이션을 구현하면 앱이 자동으로 사용자의 기기 설정에 따라 올바른 언어로 표시된다. 로컬라이제이션의 주요 요소는 아래와 같이 사용된다. 1. 텍스트 로컬라이제이션: 앱 내부의 모든 텍스트를 여러 언어로 제공 2. 리소..
JSON (JavaScript Object Notation) 1. 정의 • JSON은 경량의 데이터 교환 형식• 사람과 기계 모두 쉽게 읽고 쓸 수 있음• 구조화된 데이터를 텍스트로 표현하기 위한 포맷 2. 역할 • 데이터의 구조를 표현하고 전달하는 데 사용• 일반적으로 서버와 클라이언트 간에 데이터를 전송할 때 사용 3. 특징 • 텍스트 기반: 사람이 읽기 쉬운 텍스트로 데이터를 표현• 키-값 쌍: 데이터는 키-값 쌍으로 구성• 유연성: 배열, 객체, 숫자, 문자열, 불리언 등을 포함할 수 있음 4. 사용 예시 • 서버에서 클라이언트로 사용자 정보 전송: {"id": 123, "name": "Alice", "email": "alice@example.com"} • 설정 파일, API 응답 등에서 사용...