Процесс разработки Rails Angularjs

Я использую Angularjs с Rails, и по мере того, как я вникаю в это, я нахожу Rails и Angularjs, каждый из которых воспринимает персонажа как отдельные приложения. Я также экспериментировал с Yeoman, и мне это очень нравится. Я пытался просто использовать yoman для создания приложения в подкаталоге ресурсов моего приложения Rails, но он создает слишком много вещей.

Я собираюсь просто разбить его и создать мое приложение Rails с интерфейсом json и создать отдельное приложение Angular, построить его с помощью Yeoman и поместить готовое приложение Angularjs в подкаталог моих ресурсов и немного переварить

Означает ли это смысл?

Кто-нибудь еще делает это?

Какие-нибудь советы?

Ответ 1

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

Другое дело, что вам не нужно помещать ваше приложение angular в ваш общий каталог. Скорее всего, у вас будет Пассажир/Юникорн/Puma, который будет обслуживать ваше приложение Rails, и они не обязательно будут служить вашему приложению angular. Лучше обслуживать их непосредственно из упрочненного веб-сервера, такого как NginX. Они не только намного быстрее, но и более настраиваемы. Это освобождает вас даже от создания CDN с обычным происхождением, чтобы ускорить время отклика вашего сайта.

Генераторы Yeoman сделаны именно для этого. Если бы вы собирались вместе создавать свои SPA и Rails, вам не нужны все эти задачи Grunt для конвертирования LESS/Coffee/Jade и т.д.; Rails автоматически выполнит их для вас. Они были разработаны для оптимизации разработки SPA без полной серверной среды.