В даний час існує безліч підходів для створення веб-додатків:
1. Тільки на стороні сервера
Це класичний підхід, коли ви відтворюєте сторінки на сервері за допомогою такої веб-рамки, як Ruby on Rails, Django, Express, Play! Рамка та ін.
Типовий робочий процес : побудуйте всю свою логіку бізнесу, моделі та перегляньте шаблони на сервері в рамках вашого вибору.
2. Клієнт + API REST
Відносно не так давно веб-спільнота в цілому почала створювати клієнтські програми в Angular, Backbone, Ember та декількох десятках інших програм MV * JavaScript MV *. А тепер у нас також є учасник React.js.
ОНОВЛЕННЯ : Нерозуміння немає. Що я мав на увазі лише на стороні клієнта - це повне розділення проблем. У вас є сервер API REST і додаток на стороні клієнта, який спілкується з цим сервером. Залежно від випадку використання, швидше за все, ви ніколи не матимете справжнього лише клієнтського додатку, який не підключатиметься до бек-енду ні для автентифікації, ні для збереження даних.
Типовий робочий процес : витрачайте години, визначаючи Кутовий проти Хребта проти Ембер проти Х. Потім ви будуєте свої маршрути, моделі, види, контролери на клієнті. Після того, як ви закінчите, тепер будуйте моделі, контролери, маршрути на сервері. У такий спосіб ви виконуєте подвійну кількість роботи.
3. Гібрид
Я мало знаю про використання цього підходу, але якби я здогадувався, ви викладаєте свої погляди (Перегляд рамки MVC) на сервері. У результаті ви отримуєте підтримку SEO плюс швидше завантаження сторінки.
На гібридному фронті є rendr airbnb, який нібито поєднує магістраль і експрес разом.
Ерік Флоренцо сьогодні опублікував у своєму блозі: Реагуйте: Нарешті, чудовий стек-сервер / клієнт .
Кількість способів створення веб-додатків просто величезна. А для того, хто навчається розробці веб-сторінок, це може стати проблемою. Як вирішити, який підхід використовувати для побудови наступного додатку?