Ответ 1
Хороший вопрос, и я отвечу так. Нынешняя тенденция заключается в создании большого количества интерактивности в интерфейсе. На это есть несколько причин. Некоторые делают это, потому что это новое дело, другие делают это, потому что они пытаются воспроизвести рабочий стол. В конце концов, для любого данного веб-проекта есть только одна цель, и это должно создать лучший и наиболее устойчивый пользовательский опыт.
Таким образом, технологии серверной стороны будут избегать, и это будет любой из них, создающий переднюю часть для вас, но не использующий jQuery. Сегодня более 45% всех веб-сайтов используют jQuery, и если вы выберете что-то еще, вы сразу же столкнетесь с преобладающими мобильными фреймворками. (GWT, IceFaces, я смотрю на вас).
Вероятно, самый безопасный и самый гибкий способ - либо использовать реализацию на основе Spring, либо Prime Faces. Spring На мобильном телефоне стоит посмотреть. Prime Faces фактически реализует jQuery Mobile и может использовать тему Theme Roller.
В целом, это не имеет значения, какой бэкэнд-каркас (если есть), который вы используете, пока вы нажимаете хорошую разметку. Браузеру все равно, и единственное, о чем заботится пользователь, - это хороший опыт. Итак, выберите все, что сделает ваши разработчики счастливыми для бэкэнда, пока это не мешает.
Что касается интерфейсных фреймворков, да, их популярность растет, потому что они, как правило, стандартизируют некоторые из лучших практик в мобильных устройствах. Существует много разных сравнений jQuery Mobile против Sencha vs jQTouch. Я оставлю вас на рисунке, который лучше всего подходит для вашего проекта, но, безусловно, будет использовать либо jQuery Mobile, либо Sencha, потому что сообщество поддержки вокруг них массивно, и вы вряд ли будете выглядеть как много потрепанных, домашних мобильных сайтов, которые пытались сделать это с нуля, когда у них не было опыта, чтобы снять его. Это просто грустно. Моя личная рекомендация - это jQuery Mobile, потому что она охватывает такой широкий спектр устройств и (если вы придерживаетесь стандартной пошаговой модели) будет изящно деградировать даже для самых страшных функциональных телефонов и по-прежнему быть функциональной, но выглядит потрясающе на смартфонах.
На ваш вопрос просто использовать дизайн RESTful с загрузкой JavaScript всем и управлять состоянием. Многие из них делают это, и это, безусловно, быстрый опыт, но вы мгновенно ограничиваете, кто может использовать его для тех, кто поддерживает мобильные браузеры хорошего JavaScript. Вы будете смотреть только на поддержку iOS, Android 2.2+, BlackBerry 6+ и Windows Phone 7+. Все остальные, вероятно, будут испытывать значительные трудности при просмотре вашего сайта. Внимательно рассмотрите свою аудиторию, прежде чем перейти к такой реализации. Если ваш сайт не будет работать без JavaScript, а ваши основные клиенты находятся в корпоративном мире... что произойдет, когда последняя конференция Black Hat выявит слабость в телефонах компании и из-за консервативного снижения рисков (паранойя), они подталкивают политику безопасности к все телефоны, которые отключают JavaScript. Такое происходит всегда. Итак, рассмотрите свою аудиторию.