일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 리펙터링
- collectionview
- HIG
- swiftUI
- UITextView
- ios
- Xcode
- UICollectionView
- Human interface guide
- MVVM
- ribs
- Protocol
- 스위프트
- RxCocoa
- 리펙토링
- swift documentation
- rxswift
- Clean Code
- tableView
- combine
- SWIFT
- uitableview
- Refactoring
- 애니메이션
- uiscrollview
- clean architecture
- Observable
- 클린 코드
- map
- 리팩토링
- Today
- Total
목록SQLite (4)
김종권의 iOS 앱 개발 알아가기
* 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가 저장될 디렉토리 생성 - 파일을 문서..
* 프로퍼티 리스트는 데이터를 쌓기보다는 데이터 갱신에 초점 - 만약 프로퍼티 리스트로 데이터를 관리한다면, 배열타입이므로 "query"를 사용하지 못하므로 검색에 어려움 - 새로운 데이터를 추가하려면 매번 모든 배열 데이터를 메모리로 "load"했다가 다시 프로퍼티 리스트에 저장하므로 비효율 적 * 관계형 데이터 베이스 : 데이터들이 서로 결합될 수 있는 관계를 제공하는 데이터베이스 형태 1. DBMS 1) 개념 (Database Management System) * DB : 데이터들을 저장하고 있는 공간 * DBMS : DB내에 저장된 데이터에 손쉽게 접근할 수 있도록 해주는 소프트웨어 도구 (Oracle, MariaDB, MySQL, SQLServer) cf) "개발자들의 대화에서는 DB무엇을 쓰나..