Моя цель - перенести существующее веб-приложение в RESTful SPA (одностраничное приложение). В настоящее время я оцениваю несколько фреймворков веб-приложений javascript.
Мои требования следующие:
- Уровень данных RESTful (например, данные ember-data)
- MV * -структуре
- Динамические маршруты
- Тестирование-поддержка
- Кодирование по соглашению
- SEO-поддержка
- Браузер-History-Support
- хорошая (API-) документация
- Производство готового
- живое сообщество
В текущем приложении используется backbone.js. В целом backbone.js - хороший проект. Но мне не хватает четко определенных структур, которые определяют, что должно произойти и как должны быть реализованы. Работая в более крупной команде с меняющимися разработчиками, это приводит к некоторому неструктурированному коду, который трудно поддается обслуживанию и трудно понять. Вот почему я ищу сейчас фреймворк, который уже определяет все это.
Я смотрел в ember.js в последние дни. Этот подход кажется мне очень перспективным. Но, к сожалению, код меняется почти ежедневно. Поэтому я не буду называть это готовым к производству. И мы не можем дождаться, когда это будет версия 1.0 - к сожалению. Но мне очень нравится идея этой структуры.
Angular.js - широко распространенная структура, поддерживаемая google. Но я не мог познакомиться с angular. Для меня структура кажется неясной, отсутствуют объяснения общих обязанностей каждой части фреймворка, и реализации кажутся обходными. Просто, чтобы понять это: это просто мое личное впечатление и может основываться на недостающих знаниях.
Как я понял, обе фреймворки также нуждаются в серверной части. И поскольку нам просто нужен бэкэнд RESTful - независимо от языка, техники или программного обеспечения, это не то, что мы хотим. В дальнейшем API-интерфейс уже существует (RoR).
Я не пошел глубже в этих трех кандидатах. Возможно, это будет мой следующий шаг.
Итак, мои вопросы сейчас:
- Не хватает ли каких-либо хороших SPA-фреймворков?
- Какие рамки вы предложите/порекомендуете?
- Не могли бы вы избежать какой-либо из указанных фреймворков?
- Каков ваш опыт в более крупных приложениях SP?
С уважением,
Кристофер
PS: Я бы рекомендовал отличный блогп от Стивена Андерсона (основного разработчика от Knockout.js) о "Тронном JS" -конференция (с 2012 года) и фреймворки javascript в целом.
PS: Да, я знаю, что на SO есть уже какой-то вопрос. Но так как разработка настолько быстро и быстро для SPA, большинство из них уже устарели.