Я хочу разработать веб-приложение, а затем и соответствующие приложения для Android/iOS. Пока что я только определился с фронтендом, для которого хочу использовать React и React Native для мобильных устройств.
Что касается остальной части стека технологий, я рассматриваю возможность использования meteor.js. В этом случае, поправьте меня, если я ошибаюсь, мне не понадобится другая технология.
Однако я также рассматриваю альтернативы, и некоторые вещи, о которых я читал, это loopback, firebase и redux. Я довольно новичок во всем этом, поэтому я знаю, что это, вероятно, сравнение яблок с апельсинами, но я не совсем уверен, что каждый из них сделает для меня и будет ли это ситуация «или/или» или я бы объединил некоторые из них? Redux звучит так, как будто он также может вписаться в рабочий процесс meteor.js?
Подводя итог, было бы здорово, если бы кто-нибудь объяснил мне, как все это сочетается друг с другом и какие комбинации будут иметь смысл в качестве технологического стека.
решение1
Firebase:
Firebase работает следующим образом: один или несколько пользователей подписываются на некоторые данные, потому что они заинтересованы в этой информации.
Сервер отслеживает эти подписки. Как только происходит новая подписка, некоторые данные отправляются обратно в виде сообщения.
Когда один клиент записывает какие-либо данные, сервер pub/sub транслирует это обновление всем остальным активным подпискам.
Все работает как pub/sub, поэтому нет такого понятия "запрос". Вы просто говорите, что вас интересует, а затем получаете сообщения, которые описывают данные.
Плюсы
- Если ваше приложение использует централизованную базу данных и обновляется большим количеством пользователей, оно более чем способно обрабатывать обновления данных в режиме реального времени между устройствами.
- Данные хранятся в облаке и доступны везде.
- Кроссплатформенный API (если вы используете эту базу данных с приложением).
- Они размещают данные, а это значит, что если вы храните большой объем данных, вам не нужно беспокоиться об оборудовании!
Минусы:
- Если ваше приложение не использует одну централизованную базу данных, обновляемую огромным количеством пользователей, это явное излишество.
- Формат хранения полностью отличается от SQL (Firebase использует JSON), поэтому вы не сможете так легко выполнить миграцию.
- Инструменты отчетности не будут даже близко соответствовать стандартным инструментам SQL.
- Стоимость! Ограничено 50 подключениями и 100 МБ памяти!
- Вы не размещаете данные. Это делает Firebase. В зависимости от того, на каком сервере вы находитесь, просмотр времени их работы, похоже, в последнее время много сбоев.
Редукс
Redux — это архитектурный шаблон и библиотека. Его дар вам — возможность управлять состоянием вашего приложения в одном объекте. Вотстатьяговоря об этом, истатья говоря о недостатках хранения всего вашего состояния в одном неизменяемом атоме.
Обратная петля
Плюсы
- Очень быстрая разработка RESTful API
- Соглашение по конфигурации
- Встроенные модели готовы к использованию
- Поддержка RPC
- Полностью настраиваемый при необходимости
- Обширная документация
- Постоянная команда, работающая над проектом
- Доступна коммерческая поддержка