2009-09-07 3 views
0

많은 양의 텍스트를 저장 한 다음 표시하려면 (먼저 테이블보기에서 텍스트보기로) 표시하고 싶습니다. 그러나 어느 방법을 사용해야하는지 잘 모르겠습니다. SQLite를 사용해야합니까? 또는 보관 방법 중 하나를 선택합니다.iPhone SDK : 많은 양의 텍스트 저장

답변

5

"많은 양의 텍스트"에 대한 설명이 모호합니다. 당신은 다음 중 하나를 의미 할 수있다 : 작은 텍스트의

  • 대형 세트 (예를 들어 10,000 항목) (예를 들어 30 개 단어) 항목 큰 텍스트 (예 : 50 개 항목)
  • 작은 세트 (예 : 3,000 단어) 항목
  • 큰 텍스트 항목의 대형 세트 ...

나는 시도하고 그 각각의 시나리오에 대해 답변 해 드리겠습니다.

많은 수의 레코드를 저장하는 경우 데이터베이스는 항상 좋은 아이디어입니다. 즉, SQLite 또는 CoreData를 사용하는 것입니다. CoreData는 좀 더 많은 작업을 수행 할 수 있지만 많은 예제가 있으며이 접근법은 장기적으로 효과가 있습니다.

대규모 데이터 집합에 데이터베이스가 필요한 주된 이유는 한 번에 모두로드 할 필요가 없기 때문입니다. 앱이 모든 레코드를로드하는 동안 사용자가 30 초 동안 앉아있는 것을 원하지 않습니다 (메모리가 모두로드 될 수 있다고 가정해도 빠르게 진행됩니다). CoreData는 특히 "사용자가 볼 필요가있는 데이터 만로드"모델과 함께 작동하도록 설계되었습니다.

그러나 데이터가 적은 경우 각 항목의 크기가 비교적 크더라도 데이터베이스에 저장하면 많은 이익을 얻지 못할 수 있습니다. 미래에 데이터의 양이 늘어날 것이라고 생각한다면 그렇게 할 가치가 있습니다. 그러나 결코 자랄 수없는 경우 아마 배열이나 사전을 plist에 똑바로 붙이는 등 모든 메커니즘의 가장 쉬운 방법 일 것입니다. 이것은 구현할 수있는 가장 빠른 방법이지만 위에서 설명한 것처럼 여러 상황에서 잘못된 아이디어입니다.

희망 하시겠습니까?

+0

확실히 두 번째입니다. CoreData는 처음에는 다소 혼란 스럽지만 익숙해지면 매우 훌륭하고 명확하게 작동하며 성능이 뛰어납니다. 그것은 주로 당신과 떨어져있는 데이터베이스를 추상화합니다 (이것은 저에게있어 중요한 장점이었습니다). 가능한 경우 CoreData를 사용하는 것이 좋습니다. – jbrennan

+0

ok CoreData를 사용하겠습니다. 그리고 나는 얼마나 많은 단어가 불확실한 지, 그것은 모두 사용자가 어떻게 사용하는지에 달려있다. 만약 내가 추측을한다면 평균은 약 300 단어 (문서 당) –

+0

누구든지 coredata를 사용하는 방법에 대한 좋은 가이드에 대한 링크를 가지고 말할 것이라고? –

1

당신의 텍스트/데이터가 단지 몇 킬로 바이트에 불과하다면, 보관 방법으로 가십시오. 그렇지 않으면 sqlite가 있습니다. 행운을 비네.

+0

방법을 달성하고 있습니까? ... – h4xxr

+0

미안합니다. 보관 방법을 의미합니다. – itsaboutcode

+0

@matt 핵심 데이터에 대한 다음 자습서를 확인하십시오. http://cocoadevcentral.com/articles/000085.php – itsaboutcode