2012-03-02 5 views
1

저는 iOS 개발을 처음 접했습니다. 초보자 몇권을 읽었으며 현재 iTunes를 통해 제공되는 Standford 과정을 밟고 있습니다.데이터 목록/배열 저장 우수 사례

저는 초보자입니다.하지만 처음부터 올바르게 학습하는 것이 중요합니다. 책이나 온라인을 통해 많은 것을 배운 것은 "모범 사례"를 따르지 않는 것 같습니다. 모범 사례는 현재 가르쳐지고있는 수준을 넘어 설 수도 있지만, 나중에 다시 학습해야하는 것은 잘못입니다.

누군가가 나에게 앱에 데이터를 올바르게 저장하는 방법에 대한 조언을 해주기를 바랬습니다. 즉, 배열 또는 사전에서 표 셀을 동적으로 생성하는 경우 배열 또는 사전이 제공 한 데이터를 저장하는 가장 좋은 방법은 무엇입니까?

내가 테이블을 통해 기사 목록을 표시했다면 어떤 시점에서 앱 업데이트로 해당 목록을 쉽게 업데이트 할 수 있기를 바란다. 열심히하고 싶지 않다고 가정하고있다. -이 목록을 모델에 직접 코드화하고 다른 곳에서 그 데이터를 가져옵니다.

내가 배운 예제는 plists의 사용법을 보여 줬지만 실제로는 실제 응용 프로그램에서 plist로 이것을 결코 수행하지 않을 것이라고 말합니다. 나는 누군가가 올바른 방향으로 나를 가리킬 수 있기를 바란다 ... SQLite를 사용할 것인가? ... 당신의 콘텐츠가 웹 소스를 파싱하는 것이 가장 좋을까요? 인터넷에서 왔어?

나는 그것을 수행하는 가장 좋은 방법을 찾기 위해 노력하고 있습니다. 실제로 "최선의"방법은 없다는 것을 알았지 만, 넷의 샘플 코드와 Apple의 샘플 코드에서 볼 수있는 샘플 코드 사이에는 큰 차이가 있음을 알았습니다. 아마도 틀렸 겠지만, Apple의 코드 샘플은 잘 작성된 코드입니다.

+0

목록은 많은 사용 사례에 유용합니다. "실제 응용 프로그램에서 plist로 이것을 결코 수행 할 수 없다"는 링크를 우리에게 줄 수 있습니까? 엄지 손가락의 좋은 규칙은 다음과 같습니다. 사용자가 편집 할 수없는 정적 데이터가있어 메모리에 편안하게 들어가고 데이터를 검색 할 필요가없는 경우 plists가 좋습니다. 데이터의 양이 많거나 검색이 필요하거나 사용자가 편집 할 수있는 것이 필요한 경우 SQLite 또는 Core Data를 사용하는 것이 더 적합합니다. –

+0

이것은 매우 일반적인 질문이며 Apple의 설명서에서 좋은 답변을 찾을 수 있습니다.[* 아카이브 및 직렬화 프로그래밍 안내서 *] (https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Archiving/Archiving.html) 및 [* Property List Programming Guide *] (https : // developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/PropertyLists/Introduction/Introduction.html). 특정 질문이있는 경우 위 질문을 편집하여 명확하게 작성하십시오. – Caleb

+0

@Ole Begemann - Apress의 "iOS 5 개발 시작 - iOS SDK 탐색"의 plists에 대한 의견을 구체적으로 읽고 기억할 수 있습니다. 또한 온라인으로 테이블을 동적으로 채우는 방법을 보여주는 튜토리얼에서 온라인으로 링크를 사용했지만 예제에 버그가 있음을 기억하고 "무서운 버그"에 대해 언급했습니다. 어쨌든, 그 저자를 방어하기 위해, 나는 그들의 진술을 오해했을 것입니다. 그리고 그들은 당신이 많은 양의 데이터를 위해 plists를 사용하지 않을 것을 의미 했습니까? plists가 유효하다면, 그때 그들은 정확하게 내가 필요한 것입니다. 정보 주셔서 감사합니다! – canoebrain

답변

3

몇 가지 일반적인 방법은 다음과 같습니다

  • 속성 목록 - 예, 그들은 당신의 요구 사항이
  • JSON 겸손 경우 완벽하게 합법적 인 데이터 저장소 것 - 그 데이터가에서 오는 방법 경우 웹
  • SQLite - 임베디드 관계형 데이터베이스 시스템. FMDB는이를위한 널리 사용되는 Objective-C 인터페이스입니다.
  • 코어 데이터 - 애플의 솔루션 (백엔드로 SQLite는 등 다양한 형식을 사용할 수 있습니다)
  • [일부 사용자 정의 파일 형식] - 당신을 마련하기 위해 선택한 모든 데이터 형식

현실적으로, 당신은 여러 가지 해결책을 읽을 필요가 있습니다. 그들은 모두 장단점이 있습니다. 장단점은 당신의 필요에 따라 다르게 책정됩니다.

+0

감사합니다. pmjordan! 이것은 내가 찾고 있었던 바로 그 것이다. – canoebrain