CloudKit против Parse

Для моего будущего приложения мне нужен бэкэнд. Итак, главный вопрос для меня:
Cloudkit или Parse? Оба теперь являются кроссплатформенными ("CloudKit JS"), что еще больше усложняет вопрос.
Не могли бы некоторые из вас перечислить преимущества и недостатки каждого из них? Или, если вы не знаете обоих, просто дайте совет относительно одного опыта.


person aljlue    schedule 22.10.2015    source источник
comment
Конечно, Parse.com больше не является альтернативой: blog.parse.com/announcements/ идем дальше   -  person jcaron    schedule 29.01.2016


Ответы (4)


Я использовал Parse, и мне понравилось. На самом деле, я нашел его в основном интуитивно понятным.

На мой взгляд, их поддержка в порядке; тем не менее, продукт является надежным исполнителем.

Если вам удобно работать с JavaScript, я бы сказал, дерзайте. Потенциальные минусы, конечно, включают в себя возможность того, что Facebook может закрыть бизнес...

person Greg M. Krsak    schedule 22.10.2015

Не понимаю, как CloudKit может быть кроссплатформенным, если только пользователей Android нельзя заставить платить, я думаю, это может сработать.

По крайней мере, данные в облаке должны быть общедоступны через веб-интерфейс REST API (CloudKit не поддерживает REST API), если они не должны быть чрезмерно изолированы внутри экосистемы Apple.

По этой причине у Parse, вероятно, будет будущее, пока разработчикам необходимо предоставлять решение для платформы, отличной от iOS, другими словами, межплатформенные решения.

Мы можем сравнить CloudKit с Parse, используя следующие функции:

1) Панель управления

Все, что вы можете делать в CloudKit Dashboard, — это создавать и редактировать данные. На самом деле CloudKit Dashboard не выглядит как обычное табличное представление, характерное для Parse. Структура моделей представлена ​​в разделе «Типы записей», а сами данные хранятся в зонах по умолчанию (одна зона по умолчанию для общедоступной базы данных и одна для частной базы данных). CloudKit Dashboard также позволяет вам увидеть, что входит в вашу команду и с какими привилегиями, а также настроить хранилище данных для работы в режиме разработки и производства.

2) Логика на стороне сервера

Как разработчик, работавший с Parse, могу сказать, что фича под названием CloudCode — очень полезный инструмент, который позволяет реализовать некоторые задачи прямо на сервере и даже подключить к нему некоторые библиотеки. Так, например, если вы хотите рассчитать статистику, вы можете сделать это с помощью CloudCode.

CloudKit лишен такой возможности. Apple обязательно нужно сделать аналог CloudCode, чтобы мы могли писать код для запуска на бэкенде.

3) Фоновая задача

CloudKit не имеет фоновой задачи, которую можно было бы реализовать, когда вам это нужно. Тем самым мы теряем гибкость обработки данных на сервере.

4) Импорт/экспорт данных Parse позволяет создавать резервные копии данных в формате JSON. Таким образом, вы можете быть уверены, что он будет надежно храниться на вашем локальном сервере. К сожалению, CloudKit не позволяет вам это сделать.

5) Аналитика Parse поддерживает аналитику на основе данных. Вы можете отслеживать трафик, частоту запросов, действия с push-уведомлениями, отслеживать сбои с помощью треков стека и метаданных. Кроме того, 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. В CloudKit также есть таблица Users, но я не нашел встроенного механизма входа через учетные записи Facebook/Twitter. Однако вы можете использовать информацию о пользователях, которые вошли в систему через iCloud.

Проблема в Parse, которую я заметил: Техническая поддержка кажется очень тихой. Я понимаю, что их бизнес-модель заключается в том, чтобы взимать плату за поддержку, но многие вопросы остаются без ответа на форумах пользователей, и я не думаю, что это хорошая практика, особенно когда это очень простые вещи для решения, заполнение там, где документации мало, и сообщество не может их решить.

Конечно, я вижу некоторые преимущества CloudKit:

1) Размер хранилища — очевидное преимущество CloudKit. Объем хранилища и передаваемых данных, выделенных вашим приложениям, будет масштабироваться и расти с каждым пользователем — вплоть до 1 ПБ в хранилище активов и 10 ТБ в хранилище базы данных — и все это бесплатно. С Parse, с другой стороны, пользователи могут намного быстрее исчерпать ваши ресурсы.

2) CloudKit позволяет использовать контейнеры. CKContainer — это объект, который инкапсулирует содержимое, связанное с приложением. Другими словами, CKContainer отвечает за связь вашего приложения с сервером. Это также обеспечивает повышенную гибкость, поскольку несколько приложений могут иметь один контейнер, а одно приложение может иметь доступ к нескольким контейнерам. Каждое приложение по умолчанию имеет как минимум один контейнер. Parse, с другой стороны, предоставляет единую базу данных для каждого приложения. Более того, CKContainer помогает защитить и изолировать данные, а также предотвратить несанкционированный перехват данных. CloudKit — это в целом высокозащищенная система, потому что она основана на iCloud, а вы знаете, как страстно Apple относится к вопросам безопасности.

person user3278897    schedule 22.10.2015
comment
Ваш пункт 9 неверен. Из-за этого 7 также является недействительным. См. developer.apple.com/library. /предварительный выпуск/ios/документация/ - person Edwin Vermeer; 23.10.2015
comment
Если пункты 9 и 7 недействительны, тогда Parse будет иметь только 1 большой важный пункт, который будет CloudCode, и все, верно? Значит, это скорее вопрос о предпочтениях, чем об отсутствующей функции? Это было бы прекрасно! - person aljlue; 23.10.2015
comment
parse.com показался мне продуктом, ориентированным на продажи, слишком сложным API, CloudKit — это простой в использовании современный MBaas, с одной фундаментальной идеей, позволяющей легко отслеживать изменения и получать уведомления об этом в клиенте с помощью PUSH. - person János; 04.11.2015
comment
Одной из самых больших слабых сторон Parse являются CLP, которые в настоящее время не работают с указателями. Если вы пытаетесь защитить свое приложение, вы должны знать, как это влияет. - person eMdOS; 11.11.2015
comment
Пункт 4 также рассматривается в веб-службах CloudKit API - person Ramon; 23.05.2016

Amazon только что сделал большой шаг, добавив сервис для мобильной разработки. Может, с Parse еще рано сравнивать, но ненадолго.

Со страницы для мобильных устройств https://aws.amazon.com/mobile/:

AWS Mobile Hub — это самый быстрый способ создания мобильных приложений на базе AWS. Он позволяет легко добавлять и настраивать функции для ваших приложений, включая аутентификацию пользователей, хранение данных, внутреннюю логику, push-уведомления, доставку контента и аналитику. После того, как вы создадите свое приложение, AWS Mobile Hub предоставит вам простой доступ к тестированию на реальных устройствах, а также к панелям аналитики для отслеживания использования вашего приложения — и все это из единой интегрированной консоли.

Так что похоже, что он будет делать все, что делает Parse. Я еще не пробовал, но, по словам моего коллеги, его очень легко настроить.

person Edwin Vermeer    schedule 23.10.2015

Parse объявил о закрытии сервисов через год, поэтому вам не стоит выбирать Parse. Вы можете проверить AWS от Amazon и API App42. Оба являются хорошими решениями BAAS.

person Safwan Ahmed    schedule 02.02.2016