Какие технологии/паттерны использовать для веб-проекта?
Здравствуйте.
У меня появилась идея написания одного несложного веб-проекта, но я совсем не знаю с чего начать и чем закончить. Мною уже написана некая библиотека на Java для получения и обработки нужных мне данных, но ничего касаемо фронт-енда и серверной части нет. Серверную часть я хотел бы продолжить разрабатывать на Java. В целом я хотел бы иметь такую картинку: веб-сервер, отдающий сам фронт-енд, и n-ное количество back-end серверов, которые будут получать и обрабатывать данные, которые в свою очередь веб-сервер должен будет отдавать. n-ность начнется, конечно, с одного сервера, но так как проект мне нужен больше для опыта разработки чем для практической пользы — я так же хотел бы реализовать умение распараллеливаться.
Вопрос: какие технологии и паттерны стоит применять при написании подобного проекта? Буду признателен за любые советы статей/книг/whatever, а так же советы по поводу языков и фреймворков.
P.S., я студент 1-го курса, никакого предпочтения в плане языка или фреймворка для веб-части нет. В плане серверной части, как я уже сказал, хотелось бы использовать Java.
я работал со связкой Spring Framework, Hibernate, JSP. В качестве сервера Tomcat. Для зависимостей — Maven. Все это очень java way, паттерны, dependency injection и все такое, но больно долго настраивать и писать xml. Вот статья например habrahabr.ru/blogs/java/111102/.
Если же время поджимает, можно попробовать Play. Его идея это Rails на Java, но с ним я не работал.
Для фронт-енда можно использовать Backbone.js + jQuery в общем случае или какой-нибудь ExtJS или qooxdoo если вам нужны оконные виджеты.
Насчет jQuery согласен, я написал про backbone.js в качестве каркаса если понадобится что-то сложнее украшательств.
С Grails не очень знаком, но думаю он пойдет в том случае, если там не нужно много знаний Ruby, иначе, помимо меньше явы на сервере, нужно будет учить еще +1 язык, а это может быть сложно для первого курса.
>С Grails не очень знаком, но думаю он пойдет в том случае, если там не нужно много знаний Ruby
Grails это Groovy on Rails. Там нет Ruby, там Groovy и Java.
Какой-то у вас жесткий список. JS наверное нужно будет посмотреть, но не факт что он вообще понадобится (вдруг автор решит в качестве UI фронтенда взять GWT?)