CloudKit vs Parse

alj*_*lue 8 parse-platform mbaas cloudkit

对于我即将推出的应用程序,我需要一个后端.所以对我来说最大的问题是:
Cloudkit还是Parse?现在两者都是跨平台("CloudKit JS"),这使问题变得更加困难.
你们有些人可以列出每个的优点/缺点吗?或者,如果您不知道两者,请就单一体验提出一些建议.

Gre*_*sak 13

我使用过Parse,并且喜欢它.事实上,我发现它大多是直观的.

在我看来,他们的支持是可以的; 然而,该产品是一个坚实的表现者.

如果你对JavaScript很满意,我会说它去吧.当然,潜在的负面因素包括Facebook可能使业务落后......


use*_*897 5

我想,除非让Android用户付费,否则无法看到CloudKit如何跨平台。

如果不希望在Apple生态系统中过度隔离云中的数据,则必须在Web REST API上通用显示云中的数据(CloudKit不支持REST API)。

因此,只要开发人员需要为非iOS平台提供解决方案(即跨平台解决方案),Parse便会拥有未来。

我们可以使用以下功能将CloudKit与Parse进行比较:

1)资讯主页

您在CloudKit仪表板中可以做的所有事情就是创建和编辑数据。实际上,CloudKit Dashboard看起来并不像通常的表视图,这是Parse的特征。模型的结构在“记录类型”部分中表示,数据本身存储在默认区域中(一个默认区域用于公共数据库,而一个默认区域用于私有数据库)。CloudKit仪表板还允许您查看团队中包含的内容以及具有哪些特权,以及设置数据存储以在开发和生产模式下工作。

2)服务器端逻辑

作为使用Parse的开发人员,我可以说称为CloudCode的功能是非常有用的工具,它使您可以直接在服务器上实现一些任务,甚至可以将一些库连接到该服务器。因此,例如,如果您要计算统计信息,则可以完全使用CloudCode进行。

CloudKit被剥夺了这种可能性。Apple绝对应该构建CloudCode的类似物,以便我们可以编写在后端运行的代码。

3)后台任务

CloudKit没有后台任务,您可以在需要时执行该任务。因此,我们失去了服务器上数据处理的灵活性。

4)导入/导出数据 解析可以让您以JSON备份数据。这样,您可以确保将其安全地存储在本地服务器上。不幸的是,CloudKit不允许您这样做。

5)Analytics Parse支持基于数据的分析。您可以监视流量,请求频率,推送通知活动,跟踪崩溃以及堆栈跟踪和元数据。此外,通过Parse,您可以在图形仪表板上查看数据。CloudKit框架没有提供相同的功能。

6)本地存储支持 如果您使用Parse,则可以在设备(iOS或Android)上本地存储数据。在CloudKit中,没有机制可以让您选择存储数据的方式。但是,欢迎您使用CoreData或第三方服务(例如Realm数据库)来实现此目的。

7)跨平台 CloudKit仅适用于iOS和OSX设备。解析支持大量设备和操作系统,例如iOS,OSX,Android,Windows,Windows Phone。

8)Web托管 解析可让您创建自己的网站并在其平台上获取域名。您将获得一个包含网站内容,设置和支持请求的项目目录。CloudKit中没有类似的东西。

9)REST API Parse使您可以使用REST API。有很多第三方库用于接收和传输与Parse一起使用的数据。CloudKit不支持REST API。

10)支持社交网络 如果您的用户通过Facebook,Twitter或其他社交网络登录,则其数据存储在Parse的“用户”表中。CloudKit也有一个Users表,但是我还没有找到用于通过Facebook / Twitter帐户登录的内置机制。但是,您可以使用通过iCloud登录的用户的信息。

我看到的Parse中的问题是:技术支持似乎非常安静。我知道他们的业务模型是负责支持的,但是用户论坛上没有回答很多问题,而且我认为这不是好的做法,尤其是在解决起来非常简单的事情上,在文档稀疏的地方,以及社区无法解决它们。

当然,我看到了CloudKit的一些优点:

1)存储大小是CloudKit的明显优势。分配给您的应用程序的存储量和数据传输量将随着每个用户的增长而扩展-资产存储最高可达1 PB,数据库存储最高可达10 TB-全部免费。另一方面,借助Parse,用户可以更快地耗尽资源。

2) CloudKit允许您使用容器。CKContainer是一个封装与应用程序关联的内容的对象。换句话说,CKContainer负责将您的应用程序与服务器进行通信。由于一些应用程序可能只有一个容器,而一个应用程序可能可以访问几个容器,因此它还提高了灵活性。默认情况下,每个应用都有至少一个容器。另一方面,解析为每个应用程序提供一个数据库。此外,CKContainer可以帮助您保护和隔离数据,并防止未经授权的数据拦截。CloudKit通常是受高度保护的系统,因为它基于iCloud,并且您知道Apple对安全问题的热情。

  • 您的第9点无效。因此,7也无效。参见https://developer.apple.com/library/prerelease/ios/documentation/DataManagement/Conceptual/CloutKitWebServicesReference/Introduction/Introduction.html (2认同)
  • 在我看来,parse.com 是一款销售驱动的产品,API 过于复杂,CloudKit 是一种易于使用的最先进的 MBaas,其基本思想是可以轻松跟踪更改并通过 PUSH 在客户端中获取有关更改的通知 (2认同)