До сих пор я был большим поклонником шаблона MVC для разработки веб-приложений. Для Интернета я разработал в основном на PHP (с фреймворками Kohana и CodeIgniter) и Ruby (RoR).
По мере того, как мои приложения становятся тяжелее на стороне Ajax (одностраничные приложения и т. Д.), Я заметил, что не могу не предать самые базовые концепции MVC: Javascript выполняет большую часть работы; Вызов контроллеров просто для запроса представлений или большего количества кода js / json кажется неправильным.
После стремления сохранить все задания маршрутизации в контроллерах, теперь я фундаментально разделил их между ними и Javascript (то есть из PoV платформы, части представлений). При запросе json подрывная деятельность MVC выглядит еще более очевидной: код js, выполняющий запрос, является контроллером; контроллер фреймворка просто действует как прокси для данных модели - то, что я на самом деле прошу.
Итак, на что мне обратить внимание?
Я думал о приложениях на чистом javascript, например, с backbone.js и базирующейся на документе базой данных json-spitting (couchDB) в качестве бэкэнда, но мне нравятся мои реляционные базы данных.
Другой вариант будет следующим: я просто создаю «маршрутизируемые модели» в PHP / ruby / go / whatnot. Те проанализируют запрос, вызовут БД, вернут немного json.
Этот подход мне интересен, но ему не хватает какой-либо существенной документации или академического анализа, поэтому я немного боюсь скачка.
Идеи?