3

私は iPhone アプリを作成しており、永続ストアの 2 つのソリューションから選択しようとしています。

コア データ、またはSQLitePersistentObjects。基本的に、私のアプリに必要なのは、モデル オブジェクトの配列を格納し、それらを再度読み込んで UITableView に表示する方法だけです。それほど複雑ではありません。Core Data は、単純に使用できる SQLitePersistentObjects よりも学習曲線がはるかに高いようです。私の場合、SQLitePersistentObjects よりも Core Data を使用する明らかな利点はありますか?

4

5 に答える 5

13

SQLite Persistent Objects の作成者として、私は言います: Core Data を使用してください。

Core Data が電話に存在しなかったときに SQLPO を作成しました。私は SQLPO で行ったことを誇りに思っており、Core Data よりも優れたアプローチ (具体的には、個別のクラス ファイルとデータ モデルを維持する必要がないこと) についていくつか気に入っていますが、Core Data の基盤となるエンジンははるかに成熟しており、より多くのエンジニアリング時間を投資しています。そのため、Core Data が iPhone SDK に登場したとき、私は SQLPO の開発を断念しました。

ベンチマークは行っていませんが、正しく使用すると、ほぼすべての大量の状況で Core Data のパフォーマンスが向上すると思います。

ヘッダー ファイルを作成するだけなので、SQLPO の方が開発は高速ですが、データのニーズが比較的軽い場合を除き、Core Data を使用した方がよいでしょう。

于 2010-06-18T01:30:37.197 に答える
1

SQLitePersistentObjectsでの私の経験に関するいくつかの情報。

SQLPOを利用してiOS3.x用に最初に開発されたアプリは、問題なく動作します。使いやすさなど。今、このアプリをiOS 4に持ち込む過程で、物事がおかしくなってきました。

私は今、予測できない速度でDBの破損を目にしています。

SQLPOコードを調べると、sqlite3_closeステートメントが1つしかないことがわかります。これは、DBを開くことができない場合に呼び出されます。

DBを明示的に閉じるメソッドを追加し、アプリからこれを呼び出すことを計画しています。デリゲートは終了し、iOS4の場合はdidMovetoBackgroundメソッドを使用します。SQLPOでのDB破損の問題を回避するのに役立つ可能性があります。

于 2010-09-13T13:11:18.103 に答える
1

この質問を参照してください。その質問に対する私の答えは、あなたの答えにも当てはまります。

Core Data VS SQL文、iPhone開発向けGDはどっち?

于 2010-02-19T04:13:50.953 に答える
0

SQLitePersistentObjects 別名 SQLLite Persistent Objects は、直接 SQLite を実行することとまったく同じではありません。それ自体が ORM です。まだ使用していませんが、以前の投稿者が与えた完全に間違った回答を修正したかったのです。

Core Dataが面倒なので真剣に検討中です。

参照: http://iphonedevelopment.blogspot.com/2008/08/sqlite-persistent-objects.html

于 2010-04-13T01:40:14.817 に答える
0

私は最近、同じ決断をしなければなりませんでした。いくつかのプロパティを持つ単純なオブジェクトのインスタンスを格納していました。私の調査から、Core Data を使用すると、複数の関係を持つより複雑なオブジェクトをより適切に管理できることがわかりました。Core Data についてもっと学びたいという理由だけで、最終的に Core Data を使用することになりました (ただし、単純なオブジェクトの場合、学習曲線はあまりありませんでした)。

于 2010-02-19T04:16:26.347 に答える