Firebase против Parse – всестороннее сравнение для iOS-разработки в 2025 году – часть 1
Contents
Введение
Parse и Firebase – это платформы, созданные для того, чтобы облегчить жизнь разработчика, создавая серверную часть вашего приложения гораздо быстрее, надежнее и масштабируемее.
Эти два продукта появились на рынке несколько лет назад и с тех пор развиваются, постоянно пополняясь новыми функциями и соответствуя новым технологиям.
Эти две компании используют разные подходы к тому, как они делают то, что делают. А также в том, как именно они поддерживают разработку под iOS.
Будучи сам iOS-разработчиком, я решил написать абсолютно непредвзятый обзор обеих платформ для iOS-мира и посмотреть, как они подходят конкретно к этой доле рынка.
Немного истории
Firebase была впервые разработана компанией Firebse Inc. еще в 2011 году. В то время она была многообещающей, но в 2014 году ее приобрела компания Google, и после этого она быстро развивалась.
В нем представлено 19 продуктов, включая практически все, что может понадобиться для запуска приложения для iOS, и среди них есть удивительно надежные и последовательные.
Среди возможностей – база данных, хостинг, аутентификация, база данных в реальном времени, облачный обмен сообщениями и др.
Parse был разработан еще в 2011 году, но уже компанией Parse Inc.
Она добилась такого успеха, что в том же году привлекла более 5 миллионов долларов венчурного финансирования.
Parse также имеет множество инструментов для облегчения жизни разработчика и поддерживает практически все, что есть в Firebase.
Однако некоторые подходы к достижению одной и той же функциональности отличаются.
В 2013 году компания Parse Inc. была приобретена Facebook, которая решила закрыть ее и перераспределить разработчиков внутри самой Facebook, что вызвало гнев в мире разработчиков.
Разработчики оказали давление, и Facebook решила открыть исходный код Parse, чтобы все, кто уже запускает свои приложения на Parse, могли продолжать работать в том же духе.
С тех пор сообщество приняло Parse и, благодаря силе сообщества, Parse получил множество новых возможностей и широко поддерживается по сей день.
Одна и та же цель. Разные маршруты.
Являясь частью Google, Firebase, очевидно, будет благоприятствовать миру Android, который тоже принадлежит Google.
Несмотря на то, что приложение поддерживает iOS (и широко используется), некоторые его функции явно более “дружелюбны” к Google, чем у конкурентов.
Одним из примеров является тот факт, что только аккаунт Firebase может отправлять push-уведомления на устройства Android.
Хотя мое личное мнение по этому поводу таково: это просто зло, это их способ сказать вам, что если вы хотите взаимодействовать с устройствами Android, они должны быть в центре.
Так что если у вас есть приложение, которое должно работать на iOS и Android, вам понадобится аккаунт Firebase, даже если вы напишете его на Parse.
Панели обеих платформ очень разные и требуют разных подходов к настройке и работе вашего приложения.
Кроме того, используются разные технологии. Например, для базы данных у Firebase была база данных Realtime Database, которая превратилась в новый Firestore, представляющий собой масштабируемую базу данных, которая синхронизирует данные между клиентскими приложениями.
Parse не поддерживает базу данных в реальном времени (по определению), но он предоставляет схемы, агрегации и возможность работы с реляционными данными (даже с нереляционной базой данных), чего нет в Firebase. Кроме того, возможность работы в реальном времени достигается в Parse с помощью Live Queries.
Но разве Parse не умер?
Нет. Он жив, очень хорошо поддерживается сообществом и развивается каждый день.
Проблема блокировки поставщиков
Parse является бесплатной программой с открытым исходным кодом. Вы можете скачать его и запустить самостоятельно в любое время.
Вы также можете открыть исходный код и посмотреть, как он работает, и даже изменить его, если захотите.
Firebase имеет закрытый исходный код от Google. Это означает, что только Google знает, как он работает внутри, и как только вы разработаете свое приложение с помощью Firebase, только Google сможет запустить его.
Несмотря на то, что Google – суперпрочная компания-гигант, на которую можно положиться, она также известна тем, что прекращает выпуск продуктов. Из любопытства вы можете ознакомиться с прекращенными проектами Google на Google Graveyard.
Так что, если вы используете Firebase, вы привязаны к Google и, надеюсь, в будущем Firebase не появится в этом списке.
Хватит разговоров
Давайте начнем сравнивать обе платформы.
В этом первом посте речь пойдет о панелях инструментов для обеих платформ и о том, как легко интегрировать их в проект X-Code для Swift.
В конце каждого раздела я выставляю оценку, основанную на моем личном мнении, которое мы взвесим в конце этой серии.
Приборные панели
Создать свое первое приложение в Firebase довольно просто, поскольку у него очень интуитивно понятная панель управления.
Сначала вы нажимаете кнопку “Создать проект”:
Затем вы даете ему имя.
Затем вы включаете или отключаете Google Analytics
И наконец, подключите учетную запись Analytics
И вы наконец-то закончили работу над созданием
Одна маленькая особенность: при первом создании этого приложения у меня возникла ошибка, но при повторной попытке все получилось:
Теперь давайте попробуем процесс создания Parse.
Сначала мы нажмем кнопку “Создать новое приложение”.
Дайте приложению имя и выберите версию Parse для использования (для совместимости).
И перед нами открывается панель Dashboard, в которой представлено краткое руководство по работе с панелью Dashboard
По окончании обучения вы можете приступать к работе.
Вердикт – создание приложения
Обе платформы довольно просты в использовании при создании приложений. Всего несколько кликов – и готово. Так что будем считать это ничьей.
Интеграция системы
Обе платформы предлагают несколько способов интеграции фреймворка в ваш проект X-Code, поэтому, чтобы быть справедливым, я выбрал один и тот же метод для обеих: Cocoapods.
Если вы не используете Cocoapods для интеграции фреймворков в проекты X-Code, вам стоит подумать о том, чтобы использовать его или что-то подобное вместо ручной интеграции. Это позволит убедиться, что все находится на своих местах, все зависимости выполнены и обновления выполняются правильным образом.
Настройка Cocoapods заключается в редактировании файла Podfile и выполнении команды
установка капсул
Процесс запустится (Firebase слева, Parse справа) и выдаст файл с форматом xcworkspace, в котором будет все, что вам нужно.
Вердикт – установка фреймворка
При использовании одного и того же способа доставки процесс прост и понятен для обоих фреймворков, так что давайте снова объявим ничью.
Заключение
Это первая статья серии, и наши соперники только что явились на гонку. Вполне понятно, что на данный момент у обоих ничья.
В следующей главе мы начнем кодировать, и я ожидаю, что различия начнут проявляться.
Следите за новостями!