我见过几种方法,每种方法都有显着的优点和缺点。我正在学习iPhone开发,我正在构建一个相对简单的应用程序,它的核心部分实际上不仅仅是针对3个或4个相关实体的CRUD操作。iPhone上有数据库管理/对象持久化的首选方法吗?
我习惯于ActiveRecord类型的对象持久化。我在网上阅读的Cocoa Touch的实现通常被称为非常缓慢。
我在网上看到的大多数例子(特别是Pragmatic Programmers screencasts)都将SQL硬编码到控制器类中,这看起来对我来说并不恰当。看起来很古老的学校(但在这种情况下,也许老派最好)。
我知道我们不能在这里讨论SDK 3.0,但是CoreData即将面向iPhone的常识是,这当然会限制我的观众(我不确定我是否真的在意这一点。是一个应用程序出售,但我不打算取代我的职业生涯)
我还没有尝试Gus Mueller的FMDB,但我已阅读好东西。
什么是你的经验,什么有效,什么没有。你会在哪里推荐一个(仍然非常新手)的iPhone程序员投入他们的时间?
恐怕我得出的结论正是你所说的。 SQLlite持久对象是一个非常缓慢的对象。 我相信这将是“短期被诅咒的”并且是CoreData的目标,因为这将是今年夏天的公认方式。 我在添加核心数据到我现有的应用程序时遇到了麻烦,但我只是换了另一种方式,并在几分钟内使用核心数据将我的整个应用程序移植到“基于窗口的应用程序”模板中。所以......它什么也没做,但至少它没有崩溃,就像昨晚一样。 – mmc 2009-04-28 17:54:20