CloudKit vs Parse

时间:2015-10-22 20:03:51

标签: parse-platform cloudkit mbaas

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

4 个答案:

答案 0 :(得分:13)

我使用过Parse,并且喜欢它。事实上,我发现它大部分都是直观的。

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

如果您对JavaScript感到满意,我会说它。当然,潜在的负面因素包括Facebook可能使业务落后......

答案 1 :(得分:5)

无法看到CloudKit如何跨平台,除非可以让Android用户付费,我认为这可能有效。

至少云中的数据需要在Web REST API(CloudKit不支持REST API)上普遍可见,如果它不是在Apple生态系统内过度隔离的话。

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

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

1)信息中心

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

2)服务器端逻辑

作为一名使用Parse的开发人员,我可以说一个名为CloudCode的功能是一个非常有用的工具,它允许您直接在服务器上实现某些任务,甚至可以将一些库连接到它。因此,例如,如果您想计算统计数据,则可以使用CloudCode完全执行此操作。

CloudKit被剥夺了这种可能性。 Apple绝对应该建立一个CloudCode模拟器,以便我们可以编写代码在后端运行。

3)后台任务

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

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

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

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

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

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

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

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

我看到Parse的问题是:技术支持似乎非常安静。我知道他们的商业模式是收取支持,但很多问题在用户论坛上没有得到解答,我不认为这是好的做法,特别是在他们是非常简单的事情要解决的地方,填写文档稀疏的地方,社区无法解决它们。

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

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

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

答案 2 :(得分:2)

亚马逊在为移动开发添加服务方面迈出了一大步。也许它与Parse进行比较还为时尚早,但不会很久。

来自移动页面https://aws.amazon.com/mobile/

  

AWS Mobile Hub是构建由AWS支持的移动应用程序的最快方式。   它可让您轻松添加和配置应用程序的功能,包括   用户身份验证,数据存储,后端逻辑,推送通知,   内容交付和分析。构建应用程序后,AWS Mobile   Hub使您可以轻松访问真实设备上的测试,以及   用于跟踪应用程序使用情况的分析仪表板 - 所有这些都来自一个,   集成控制台。

所以听起来它会解决Parse所做的一切。我还没有尝试过,但根据我的一位同事的说法,这很容易设置。

答案 3 :(得分:1)

Parse已宣布在一年内关闭服务,所以你不应该选择Parse。您可以在Amazon和App42 api上查看AWS表单。两者都是很好的BAAS解决方案。