我刚刚开始阅读 MongoDB 和 CouchDB 等 NoSQL 技术。我有兴趣知道是否可以使用 MongoDB 或任何 NoSQL 技术来替代 Core Data 应用程序。
核心数据应用程序可能需要很长时间来学习和实现,特别是如果您的应用程序很复杂并且您只想执行一些简单的添加、编辑、删除和查询(CRUD 内容)。
因为它看起来像 JSON 并且看起来运行得非常快;我对在核心数据上实施 NoSQL 很感兴趣。
我可以将 MongoDB 作为本机运行吗?我做了一些谷歌搜索,但并没有真正得到我想要的具体答案。
Such as:
我不确定 iPhone 平台上 NoSQL 的职责是什么,是否支持,如果我提交带有 NoSQL 的应用程序,Apple 团队会拒绝吗?
Thanks
顺便说一句,我要指出的是,这是一个常见的误解,但 Core Data 并不是一个数据库系统。
相反,它是一个运行时对象图管理系统,如果需要的话可以添加持久性选项。它的主要功能是提供模型-视图-控制器设计模式的模型层。因此,它处理的不仅仅是从磁盘上获取数据。
Core Data 确实有一个学习曲线,但根据我的经验,许多人面临的最大障碍是尝试将 Core Data 视为某种围绕 SQL 的面向对象的包装器。从这个角度来看,核心数据非常令人困惑,因为它似乎需要学习太多与持久性无关的东西。
使用 SQLite、MongoDB 和 CouchDB 等数据库进行持久性根本不会真正加快速度,因为尽管您可能更好地了解它们如何从磁盘上获取数据,但它们对管理数据和关系毫无帮助到其他数据对象和 UI 对象。您仍然需要有一个数据模型,并且必须手动编写所有代码。除非你的数据模型非常简单,否则这将比学习核心数据花费更多的时间。
学习 Core Data 的最好方法是忽略对象图可以持久化的事实。从这样的角度开始,您有很多代表应用程序数据模型的对象,并且您必须管理它们的属性和关系。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)