일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- swift documentation
- HIG
- UITextView
- ribs
- 클린 코드
- 리팩토링
- Protocol
- Xcode
- rxswift
- 리펙터링
- Refactoring
- RxCocoa
- tableView
- collectionview
- swiftUI
- MVVM
- UICollectionView
- 스위프트
- map
- 리펙토링
- clean architecture
- ios
- combine
- Human interface guide
- Clean Code
- uiscrollview
- SWIFT
- Observable
- 애니메이션
- uitableview
- Today
- Total
목록iOS 실전 (swift)/데이터베이스 (15)
김종권의 iOS 앱 개발 알아가기
코어 데이터에서 검색바와 조건문을 활용할 것, 코어 데이터 개념 : ios-development.tistory.com/93 1. UISearchBar - 테이블 뷰와 함께 사용하여 특정 내용만 필터링하는 데에 이용되는 객체 1) 주로 사용되는 메소드 메소드명 내용 SearchBar(_:textDidChange:) 사용자가 검색바의 텍스트를 변경했을 때 호출 SearchBar(_:shouldChangeTexttIn:) 지정된 범위의 값을 주어진 문자열로 대체할지 여부 결정하기 위해 호출 SearchBarShouldBeginEditing(_:) 검색 바에서 편집을 시작했을 때 호출 SearchBarTextDidBeginEditing(_:) 텍스트 편집을 시작했을 때 호출 SearchBarShouldEndEd..
* 기본개념은 링크 참고 ios-development.tistory.com/92 [iOS - swift] 12. 코어 데이터(Core Data)의 개념 - (2) 기초 개념은 다음 링크 참조 : 11. 코어 데이터(Core Data)의 개념 - (1) [iOS - swift] 12. 코어 데이터(Core Data)의 개념 - (1) * Core Data는 DataBase가 아님 ( Core Data는 ORM 매핑 프레임워크가 맞는 의미.. ios-development.tistory.com 1. 코어 데이터 추가(처음 프로젝트 생성시 "Core Data"체크) 2. Entity, Attributes, Relationships 정의 1) "Board", "Log" 엔터티와, Attributes, Relati..
기초 개념은 다음 링크 참조 : 11. 코어 데이터(Core Data)의 개념 - (1) [iOS - swift] 12. 코어 데이터(Core Data)의 개념 - (1) * Core Data는 DataBase가 아님 ( Core Data는 ORM 매핑 프레임워크가 맞는 의미, 데이터 저장에 관한 일종의 프레임워크 ) 1. Core Data란? 1) In-Memory 방식 : 사용 하려는 모든 데이터는 우선 메모리에 로딩되.. ios-development.tistory.com 1. MO모델을 위한 엔터티 설정 1) 엔터티(데이터 저장 구조) 정의 : 레코드 단위의 데이터를 관리객체(Managed Object)로 만들기 위한 기본 모델 역할 담당 * AppDelegate.swfit에 코드가 추가된것을 확인..
* Core Data는 DataBase가 아님 ( Core Data는 ORM 매핑 프레임워크가 맞는 의미, 데이터 저장에 관한 일종의 프레임워크 ) 1. Core Data란? 1) In-Memory 방식이 존재 : 사용 하려는 모든 데이터는 우선 메모리에 로딩되는 과정이 존재 - 코어 데이터 : 읽고 쓰는 모든 데이터는 원칙적으로 메모리에 로드된 다음에 처리 (영구 저장소를 아예 사용하지 않고 순수하게 인메모리 방식으로만 사용하는 것이 가능) * In - Memory란? 말 그대로, Disc에 저장하지 않고 휘발성으로 테스트 같이 잠깐 이용하려고 하는 경우에 In-Memory로 사용가능 - 다른 DB방식 : 효율성을 위해 읽기 목적의 데이터 일부만 메모리에 로드 2) *엔터티(Entity)를 통해 데이터..
* sqlite와 FMDB임포트 후, 1. 스토리보드 세팅 (각 뷰컨트롤러 클래스 생성 및 연결할 것, DepartmentListVC.swift, EmployeeListVC.swift)2. DB설계 : hr.sqlite 3. 위에서 만든 템플릿 DB를 xcode프로젝트에 드래그&드롭 - Add to targets에 체크 4. DAO클래스 생성 다음과 같이 사용 : 12번라인 객체생성, 15번라인 사용 1) fmdb객체 생성 - Data Access Object : SQL문을 전달하여 데이터베이스를 다루는 클래스 - 튜플로 데이터 표현(이점 생각) : 13~15번라인 - 파일 매니저 객체 생성 : 18번라인 - DB파일 경로 탐색 및 템플릿 DB사용 방법 확인 2) DAO클래스에 생성자(DB오픈), 소멸자..
* libsqlite3는 swift 아키텍쳐 전용의 데이터 타입을 지원하지 않음 대신에 objectibe-c로 sqlite3를 재구성한 FMDB사용하는 것이 유리 1. FMDB란? macOS/iOS용으로 개발된 오프소스 SQLite3라이브러리 가장 중요한 메인 클래스 세 가지 - FMDatabase : 하나의 SQLite 데이터베이스를 나타내는 객체 (SQL문 실행할 때 사용) - FMResultSet : FMDatabase 인스턴스를 통해 수행된 SQL의 처리 결과를 담는 객체 - FMDatabaseQueue : FMDatabase의 한 종류로 SQL구문의 멀티 스레드 실행을 지원 (SQL구문을 동시에 여러 개 실행하고 싶을 때 FMDatabase대신 사용) 2. FMDB 세팅 1) libsqlite3..
SQLite Browser툴을 이용하여 필요한 테이블을 먼저 정의 한 후, 이 파일을 "앱 번들"에 저장, 이 템플릿을 "문서 디렉토리"에 저장 * "앱 번들"영역이 아닌, "문서 디렉토리"의 이점 : 앱 업데이트할 시 번들 영역은 데이터들이 덮어쓰이지만 문서 디렉토리는 안전하게 유지됨 (앱 번들 영역은 .swift파일이 저장되어 있는 영역) 1. 템플릿 DB 생성 1) DB저장 (가급적이면 바탕화면에 저장) 2) 테이블 저장 * 테이블 구성 내용은 www.ios-development.tistory.com/84 참고 2. xcode에서 만든 템플릿 사용 1) 만든 .sqlite파일을 xcode안 폴더에 드래그앤 드롭 - 단 Add to targets에 체크(앱 빌드 시 번들 패키지 과정에 추가시키기 위함..
1. 라이브러리 세팅 1) libsqlite3.tbd 2) sqlite3는 c,c++로 되어있으므로 브리지 헤더로 임포트 해야함 추가 -> Header File -> 이름 입력후 저장 3) 브리지 헤더 추가 target -> Build Settings -> All, Combined탭 선택 -> swift Compiler - General -> Objective-C Bridging Header에 아까 추가한 파일의 디렉토리명 복붙 4) 만든 브리지 헤더 파일에 sqlite3.h임포트 2. DB연결과 테이블 생성 1) DB와 연관된 필수 객체 2개 정의 (OpaquePointer자료형) - DB와 연결하는 객체 - SQL문자열이 컴파일 정보가 저장될 stmt 2) DB가 저장될 디렉토리 생성 - 파일을 문서..