2010-12-27 7 views
1

iPhone 응용 프로그램이 데이터를 저장하는 데는 여러 가지 방법이 있습니다 (예 : NSUserDefault, XML, document, SQLite 등).iPhone에 응용 프로그램 데이터를 저장하는 가장 좋은 방법은 무엇입니까?

저희 회사에서는 항상 NSUserDefault를 사용하여 데이터를 저장합니다. 그러나, NSUserDefault는 매우 좋다고 생각하지 않습니다. 경험상 저속 이었기 때문입니다.

응용 프로그램 용 데이터를 저장하는 방법과 각기 다른 방법을 사용하는 것이 좋은지 궁금합니다. 이러한 다양한 스토리지 유형의 장점과 단점을 이해하고 사용자에게보다 효율적인 응용 프로그램을 개발하는 데 도움이되는 경험을 공유하십시오.

+2

저장하는 데이터의 종류는 무엇입니까? 데이터 모델의 예를 들어주십시오. –

+0

이것은 저장하는 데이터의 종류와 응용 프로그램 외부에서 사용할 것으로 예상되는 방법/방법에 따라 크게 달라집니다. –

답변

4

NSUserDefaults에 작은 데이터를 저장할 수 있지만 큰 데이터베이스가있는 경우 데이터베이스 저장을 위해 sqlite 또는 coredata가 필요합니다. coredatabase의 사용은 사과가 제공하는 큰 데이터베이스에 좋으며 데이터베이스에 효율적으로 액세스 할 수 있습니다.

NSUserDefaults 또는 문서 디렉토리는 작은 데이터베이스 (단일 사용자 또는 다른 정보에 대한 사용자 이름을 저장해야한다고 가정)에 사용됩니다.

+1

'NSUserDefaults' 또는 일반 텍스트의'Documents' 디렉토리에 비밀번호를 저장하지 마십시오. 키 체인을 사용하여 암호화하십시오. 이 질문을 참조하십시오 : http://stackoverflow.com/questions/190963/can-i-access-the-keychain-on-the-iphone – Yuji

+0

귀중한 정보를 주셔서 감사합니다. – Ishu

+0

은 (는) 코멘트가 없습니다. 너의 대답을 위해 – Ishu

-1

아이폰 메모리 공간의 대용량 데이터 저장을 위해 coreData를 사용하는 것이 좋습니다. IT가 객체의 형태로 저장하는 데 도움이되는 데이터베이스의 래퍼 ..... U는 여기에 많은 예제를 찾을 수 있습니다 ...

+0

감사합니다; 너의 대답을 위해 – BPS1945

2

데이터를 저장할 SQL 쿼리에 대해 알아야합니다. SQLite3 데이터베이스 또는 백 엔드 저장소에 핵심 데이터를 사용할 수 있습니다. 핵심 데이터는 데이터를 저장하는 데 사용할 수있는 최상의 옵션 중 하나입니다.

작은 정보를 저장하려면 NSUserDefault를 사용해야합니다.

+0

고마워한다; – BPS1945

1

NSUserDefaults를 사용하여 애플리케이션을 닫을 때 유지하려는 작은 데이터를 저장할 수 있습니다. 로그인 정보를 저장하는 데 사용할 수 있지만 보안이 설정된 경우 키 체인을 사용하십시오. NSUserDefaults를 사용하여 설정 옵션을 저장할 수 있습니다.

SQLite 데이터베이스는 큰 데이터를 저장할 수있는 쉬운 방법입니다. 핵심 데이터가 가장 좋습니다. 하지만 응용 프로그램 데이터가 너무 크지 않으면 SQLite를 사용할 수 있습니다. SQlite 데이터베이스는 BLOB 데이터를 저장하는 데에도 사용할 수 있습니다. 서버에서 다운로드 한 pdf 파일 바이트를 저장하고 언제든지 사용하려면 pdf 파일에 해당 바이트를 씁니다. 또한 SQLite의 BLOB 데이터를 볼 수 없으므로 데이터 보안이 유지됩니다.

+0

답변 해 주셔서 감사합니다. – BPS1945

관련 문제