Почему Rails по-прежнему лучше, чем SPA в большинстве случаев

Ага. Давай испачкаем руки. Простые страничные приложения — это красиво сказано, но это не то, что нужно всем.
Это спорно. Все сегодня знают только, как сказать MERN — Mongo, Express, React и Node — когда дело доходит до выбора технологического стека для нового приложения. Сегодня это очень модно, и это действительно очень могущественный комбинация фреймворков. Не поймите меня неправильно.

Но это все же не лучший выбор для всех. Я говорю вам, почему:

Одностраничное приложение — это еще одно приложение.

Для меня самое большое предостережение от использования SPA заключается именно в том, что SPA — это отдельное приложение. У вас будет множество компонентов, вызовов API, связей и состояний, которые нужно генерировать и поддерживать.
Это больше кода. Это новое приложение. Есть много компаний, которым просто не нужен этот дополнительный уровень сложности и затрат (поскольку вы пишете больше кода) в обмен на незначительные улучшения UX.
И если вы решите что-то изменить в своем бэкэнд-приложении (что часто происходит в продуктах, которые еще не настолько зрелые)… вы меняете совершенно другое приложение во внешнем интерфейсе.

React прекрасен, но он требует, чтобы вы знали, что происходит

React — это сложный код ES6. Это требует, чтобы вы точно знали, что там происходит. Все манипуляции с состоянием, вызовы API и программные перезагрузки, которые выполняет фреймворк, могут усложнить начало работы новым разработчикам (новичкам в вашем коде), поскольку написанный код не обязательно будет самым простым для чтения.

В то же время, из-за того, что Rails настолько самоуверен, большинство приложений работают на аналогичных основаниях и предположениях. Обычно они создаются схожим образом, и это дает разработчикам больше гибкости для более быстрого внесения изменений.

SQL очень быстрый

Иногда люди начинают говорить, что SQL не так эффективен, и что будущее за No-SQL. Просто неправильно говорить, что SQL недостаточно быстр — при правильном использовании (то, что должны уметь делать все порядочные ученые-компьютерщики) сила SQL по-прежнему хороша и сегодня.

Я работал с базами данных с сотни таблиц с миллионами записей в каждой. И это сработало как волшебство — потому что оно было хорошо сконструировано. Все дело в том, как вы организуете информацию, как она будет расти и как вы хотите получить к ней доступ. Для многих приложений (особенно тех, которые требуют больших объемов отчетов) SQL очень удобен для извлечения данных без особых усилий.

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

SQL с его объединениями, индексами и нормализациями — прекрасный шаблон, применимый к большинству информационных систем, с которыми я когда-либо сталкивался в своей карьере.

Active Record по-прежнему прекрасен

Продолжая разговор о базе данных, ActiveRecord, ядро ​​Rails, по-прежнему удивительно. Если убрать всю остальную часть фреймворка и оставить только серверную часть, Rails по-прежнему будет очень полезен именно благодаря ActiveRecord и тому, как быстро вы можете с его помощью создавать и обрабатывать сложные данные.
Если вы все работаете в SPA, создание серверной части с помощью Rails — огромный инструмент для рассмотрения.

Если вам не нужен ультра-гладкий и безупречный UX (что часто бывает, я вижу это), вы, вероятно, можете позволить себе мягкую и быструю перезагрузку страницы. Просто не беспокоясь обо всех асинхронных вызовах и различных состояниях пользовательского интерфейса, которые могут быть без обновления серверной части (что иногда является проблемой в SPA), это огромный рост производительности для разработчиков. Особенно на ранних стадиях развития

У Rails удивительное сообщество, и просто удивительно, что вы можете найти в Stack Overflow, когда сталкиваетесь с какой-либо странной ошибкой во время кодирования. Удивительное сообщество готово помочь вам. Вы также получаете это с JS-стеком, но сообщество Rails очень зрелое и способно быстро решить любую из тривиальных ошибок (98% из тех, с которыми вы столкнетесь).

TL;DR

Rails по-прежнему великолепен, даже по сравнению с более поздними вариантами. Ключевым моментом является использование правильного инструмента для решения правильной проблемы. Полностью на Rails, Rails только для серверной части или любой другой подход.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *