Presentation is loading. Please wait.

Presentation is loading. Please wait.

iPhone Seminar Ⅳ 금 정보통신연구소 유승구 연구원

Similar presentations


Presentation on theme: "iPhone Seminar Ⅳ 금 정보통신연구소 유승구 연구원"— Presentation transcript:

1 iPhone Seminar Ⅳ 2010 . 06 . 04 . 금 정보통신연구소 유승구 연구원
Rev. No. 1.0 Last modified: 2010/06/04 NOVAPEX Mobile Co., LTD

2 Agenda ◈ File Handling File handling Overview Property lists
object archives SQLite3 참고 링크

3 1. File Handling ◈ Overview C 함수의 저장 메커니즘을 그대로 사용 할 수 있다.
코코아의 저 수준 파일 관리 툴들도 사용 가능 샌드 박스로 인해 허용된 폴더(\Documents)만 접근 가능 MAC OS X 기반의 API 함수를 100% 호환하지 못함 3

4 환경설정 Data [Library/Preferences]
1. File Handling ◈ 폴더 구조 애플리케이션의 모든 데이터 저장 환경설정 Data [Library/Preferences] 애플리케이션이 임시로 사용하는 파일 4

5 1. File Handling ◈ 경로 탐색 소스 Document 디렉터리 경로 Temp 디렉터리 경로
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; NSString *filename = [documentsDirectory stringByAppendingPathComponent: @"theFile.txt"]; Temp 디렉터리 경로 NSString *tempPath = NSTemporaryDiurectory(); NSString *tempFile = [tempPath 5

6 2. 프로퍼티 리스트 ◈ Overview Xcode나 Property List Editor를 이용해 쉽게 편집 가능
직렬화 객체만 저장이 가능 (NSDictionary, NSArray …) 바이트 스트림으로 변환되기 대문에 파일 저장, 네트워크 전송이 가능 [myArray atomically:YES]; 콜렉션 클래스에 정의되어있는 직렬화 객체만 저장이 가능 (NSArray, NSMutableArray, NSDictionary, NSMutableDictionary, NSData, NSMutableData, NSString, NSMutableString, NSNumber, NSDate) 6

7 2. 프로퍼티 리스트 ◈ Text & Source code property list 프로퍼티 리스트의 직렬 구조 7

8 2. 프로퍼티 리스트 ◈ Overview Xcode나 Property List Editor를 이용해 쉽게 편집 가능
직렬화 객체만 저장이 가능 (NSDictionary, NSArray …) 바이트 스트림으로 변환되기 때문에 파일 저장, 네트워크 전송이 가능 [myArray atomically:YES]; 콜렉션 클래스에 정의되어있는 직렬화 객체만 저장이 가능 (NSArray, NSMutableArray, NSDictionary, NSMutableDictionary, NSData, NSMutableData, NSString, NSMutableString, NSNumber, NSDate) 8

9 2. 프로퍼티 리스트 ◈ Source Code 9

10 2. 프로퍼티 리스트 ◈ Source Code 10

11 2. 프로퍼티 리스트 ◈ Source Code 11

12 3. 아카이빙 모델 ◈ Overview NSCoding, NSCopying 프로토콜과 함께 구현
int, float 같은 자료형으로 구성되어있다면 아카이브로 만들 수 있음 Key-Value 코딩 기법을 사용하여 객체와 실수를 인코딩하고 디코딩 가능 프로퍼티 리스트와는 달리 모든 객체에 적용 가능 12

13 3. 아카이빙 모델 ◈ 소스 파일 13

14 3. 아카이빙 모델 ◈ 소스 파일 14

15 3. SQLite ◈ OverView Database의 일종, SQL DB엔진을 탑재한 경량화된 DB
서버/클라이언트 모델을 지원하지 않는 데이터베이스로 로컬에서만 사용가능 원격 DB 접근이 이루어지지 않아 접근이 매우 빠름 표준 SQL 구문을 모두 지원 데이터 관리 용이 모바일 기기에 널리 사용, C, C++, Java, Objective-C, Delphi, PHP 등 다양한 개발 언어 지원 15

16 3. SQLite ◈ 특징점 트랜잭션들은 강력한 실패와 시스템 충돌 후에도 내구성이 강하고, 견고하고,
일관되게 독립적으로 구성 되어있다.(ACID) Zero-configuration - 설치 나 관리자가 필요 없다. SQL92의 대부분을 지원한다. 완성된 DB는 단일 크로스 플랫폼 디스크 파일에 저장된다. 2테라바이트 (2^41) 크기의 데이터 파일 생성 지원 다른 client/server DB 엔진에 비해 대부분의 동작이 빠르다. 간단하고 사용하기 편한 API 제공 ANSI-C 코드로 쓰여졌으며 TCL bindings을 포함한다. binding은 12가지 언어로 사용 가능 ANSI-C 소스 파일을 사용 할 수 있기 때문에 어떤 프로젝트에서도 쉽게 사용이 가능 하다. Self-contained: no external dependencies. Cross-platform: Unix (Linux and Mac OS X), OS/2, and Windows (Win32 and WinCE) 다른 시스템으로 출력 가능 16

17 3. SQLite ◈ 소스 파일 17

18 3. SQLite ◈ 소스 파일 테이블 생성 18

19 3. SQLite ◈ 소스 파일 테이블 생성 19

20 3. SQLite ◈ 소스 파일 데이터 입력 20

21 3. SQLite ◈ 소스 파일 데이터 가져오기 21

22 마무리 감사합니다. 22


Download ppt "iPhone Seminar Ⅳ 금 정보통신연구소 유승구 연구원"

Similar presentations


Ads by Google