Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Лучший web framework


Автор: Tony 14.9.2007, 11:36
Выбрал Spring.

Автор: zera 14.9.2007, 11:52
аналогично, хотя со стратсом и тапестри не работал, к wicket только начал приглядываться. вроде перспективно.

Автор: Vasay 14.9.2007, 12:06
Я знаком только с jsf и spring-ом...  Но для своих целей предпочитаю использовать Velocity, мне как-то понятней  smile 

Так что голосовать не буду. 

Автор: Tony 14.9.2007, 12:15
Цитата(Vasay @ 14.9.2007,  12:06)
Я знаком только с jsf и spring-ом...  Но для своих целей предпочитаю использовать Velocity, мне как-то понятней  smile 

Так что голосовать не буду.

m.. Интересно . А как же ты UI делаешь ?

Автор: Vasay 14.9.2007, 12:53
Цитата(Tony @ 14.9.2007,  12:15)
m.. Интересно . А как же ты UI делаешь ?

Немного не понял вопроса. Что Вы имели ввиду?

 Может я не точно высказался, могу немного уточнить свой ответ: 
Для меня наиболее подходящий вариант в голосовании  "только JSP+Servlets" только вместо JSP я использую Velocity.

Автор: Zamuta 14.9.2007, 12:55
Ответ такой, что нужно отталкиваться от конкретного ТЗ. Плюсы и минусы есть у каждого, нужно уметь пользоваться плюсами там где минусами можно пренебреч.

Автор: y3u 14.9.2007, 13:03
голосовать не буду, т.к. понятие веб-фреймворк растяжимое. Мне от веб фреймворка нужно только MVC деление, к примеру, поэтому я использую Maverick + набор тулов из Apache Commons + JSP/Velocity/Servlet ... Спринг MVC хорош только тем, что в нем есть все что я юзаю сразу в одном месте, а кроме Spring MVC чего в нем еще юзать?... JSF не нравится, предпочитаю GWT...

Автор: Maksym 14.9.2007, 13:07
в списке нет facelets
и пункта -- написал свой framework и пользуюсь им

Автор: Tony 14.9.2007, 16:53
Цитата(Maksym @ 14.9.2007,  13:07)
в списке нет facelets
и пункта -- написал свой framework и пользуюсь им

Пользуешься своим ? У меня была идея,но при устройстве нужны мировые стандарты.

Добавлено @ 16:55
Цитата(Vasay @ 14.9.2007,  12:53)
Цитата(Tony @ 14.9.2007,  12:15)
m.. Интересно . А как же ты UI делаешь ?

Немного не понял вопроса. Что Вы имели ввиду?

 Может я не точно высказался, могу немного уточнить свой ответ: 
Для меня наиболее подходящий вариант в голосовании  "только JSP+Servlets" только вместо JSP я использую Velocity.

Я имел ввиду controls. Календари, текстовые редакторы, всякие панели, закладки.... 

Автор: Vasay 14.9.2007, 17:57
Цитата(Tony @ 14.9.2007,  16:53)
Я имел ввиду controls. Календари, текстовые редакторы, всякие панели, закладки....

Пишу сам, или пользуюсь уже написанными.

Все зависит от задач. При использовании, скажем, jsf возникают вопросы совместимости с SEO.

Автор: Alexis 14.9.2007, 21:57
Сейчас пользуюсь Struts 1.x, за него и голосовал. Но, насчет того, что он лучший я бы не спешил. Просто в силу ряда причин для меня и моих задач он на данный момент лучший.

Автор: am_sasa 18.9.2007, 11:18
тож не голосую, использую свой...

Автор: westpine 19.9.2007, 08:32
Викет! Особенно когда подрастет smile

Автор: Tony 19.9.2007, 20:53
4то-то винград java туса мало голосует.  smile 

Автор: LuMee 20.9.2007, 07:51
Цитата(Vasay @ 14.9.2007,  17:57)
При использовании, скажем, jsf возникают вопросы совместимости с SEO.

JSF вроде удобная штука, особенно при наличии хорошего визуального редактора (ради RAD ведь вся эта штука и затевалась). Единственное, на производительность некоторые жалуются. А что такое SEO?

Автор: Maksym 20.9.2007, 13:25
LuMee
http://en.wikipedia.org/wiki/Search_engine_optimization
Vasay имеет в виду, что с применением jsf ты теряешь прямой контроль на выходным html, скриптами, линками..  а то что делает сам фреймворк далеко не всегда соотвествует требованиями к нормальной оптимизации ресурса под индексацию поисковыми роботами..
Этим недостатком страдает не только jsf, но и большинство популярных фреймоврков. А уж если они берутся поддерживать Web 2.0, то на клиента попадает совершенно дикая колбаса из безумной верстки переплетенной со скриптами, динамически пересобирающими dom при любом телодвижении пользователя. Там никакой самый умный робот не поймет, что к чему.

Автор: Vasay 20.9.2007, 18:20
Цитата(Maksym @ 20.9.2007,  13:25)
LuMee
http://en.wikipedia.org/wiki/Search_engine_optimization
Vasay имеет в виду, что с применением jsf ты теряешь прямой контроль на выходным html, скриптами, линками..  а то что делает сам фреймворк далеко не всегда соотвествует требованиями к нормальной оптимизации ресурса под индексацию поисковыми роботами..
Этим недостатком страдает не только jsf, но и большинство популярных фреймоврков. А уж если они берутся поддерживать Web 2.0, то на клиента попадает совершенно дикая колбаса из безумной верстки переплетенной со скриптами, динамически пересобирающими dom при любом телодвижении пользователя. Там никакой самый умный робот не поймет, что к чему.

Ага, именно это и имею ввиду. 

Конечно,  Ajax и ему подобные решения позволяют создавать прекрасные интерфейсы, однако, зачем интерфейс, если некому им пользоваться?
Правда, я думаю, совсем скоро поисковики будет нормально все разбирать, но пока это время не настало. Ждем.

Хотя, скорей всего, сайты будущего будут создаваться на основе технологий подобных flash (как только поисковики начнут его нормально индексировать) - красивая мультимедийная оболочка, в нужный момент, запрашивающая данные с сервера по xml.

п.с. Конечно, есть задачи когда индексация совсем не требуется. Какие-нибудь админки, или сайты типа "в контакте".

Автор: Maksym 20.9.2007, 19:35
Это, конечно, тема для отдельного разговора.. но вот какие мысли хотелось бы высказать..

Если ненадолго вынырнуть из конкретного фреймворка и обозреть текущую ситуацию разработки для web  (и общее состояние web-систем) -- то создается впечатление (не знаю, у меня ли одного), что отрасль сама себя загнала если не в тупик, то в довольно глухой угол.

Несколько недель назад у меня состоялся разговор с одним товарищем, который занимается (как project manager) outsource-разработкой различных enterprise систем для ряда западноевропейских заказчиков. Он только приехал со встреч с клиентами. По всем запланированным на ближайшее время проектам  было принято решение отказаться от изначальной идей создания тонкого клиента в виде web-интерфейса и разрабатывать все интерфейсы в виде клиента потолще (swing или rcp), который для выполнения распределенных задач дергает web-сервисы. С чем связано такое решение (которое было целиком одобрено обоими сторонами)? 
Ответ примитивнейший -- прогнозируемость результата. Проанализировав опыт сотрудничества с разными группами разработчиков за последние годы, клиенты обнаружили что бОльшая часть неожиданных проблем возникала именно в разработке и отладке web'а. И было принято решение -- отказаться от этого рискованного компонента.

Это отступление. А факт в том, что если ты взялся писать web-сайт -- то ты вступил на самую зыбкую для разработчика почву. Почву, в которой один и тот же код может работать десятками разных способов, а переменные не имею типов, в которой документация противоречит друг другу, в которой международное комьюнити стандартизирует самые неудачные решения (как компромис между более удачными, но предложенными конкурирующими сторонами); почву, на проблемах которой уже выросли целые профессии -- специалист по кроссбраузерному коду, специалист по оптимизации под поисковые движки.. 

Проект, в котором я сейчас работаю содержит достаточно массивный web-интерфейс в стиле web 2.0. И хотя он составляет от общего объема кода примерно пятую часть (java script (ajax), заточеный под все основные браузеры) --  он порождает больше половины багов.

Хотелось бы мне верить, что причина в том, что web 2.0 слишком сложен для наших мозгов и когда мы его прочувствуем все станет на свои места. Но точно могу сказать, что ни с одной другой технологией я не чуствовал себя настолько неуверенным в результате.

А вы что думаете?

Автор: Stampede 20.9.2007, 20:33
Maksym, хороший пост: репа++ smile

По поводу применимости Аякса и Веб 2.0.

1. Динамический веб интерфейс категорически противопоказан для сайтов, которые полагаются на традиционные конитекстно-зависимые методы продвижения. Грубо говоря, на SEO. Сама идея подгрузки и модификации элементов страницы сразу же и бесповоротно ломает фундаментальную посылке старого веба о том, что адресу ресурса соответствует определенное содержимое.

Без этого у динамической страницы невозможно закодировать ее текущее состояние в каком-то стандартном (или хотя бы общепринятом) виде.

Я уверен, что со временем W3C как-то порешает эту проблему, но пока этого не произошло, обычным информационным сайтам в Веб 2.0 делать нечего.

2. Аякс действительно применим в веб приложениях общего пользования, но только там, где индексация все равно не имеет большого смысла:
  • внутренние страницы управления (профили, админки и т. д.);
  • поиск и отображение быстро меняющейся инфы (аукционы, рейтинги); вот, например, какой кульный интерфейс забабахали на http://dowjonesindexes.com/;
  • маркетинговая стратегия оипрается на бабло и мало зависит от поискового трафика.
При этом, действительно, приходится искать компромис между поддержкой "всего на свете" (что сильно повышает стоимость продукта) и жертвованием отдельными категорями танкистов юзеров в пользу упрощения и удешевления разработки

3. Зато когда речь заходит о корпоративных приложениях, ситауция меняется кардинально.

Во-первых, внутри конторы всегда моно скомандовать: такие-то и такие-то отделы для внутренних приложений юзают Firefox 2.0.0.5 и выше. На таких условиях писАть вебный софт уже становится гораздо проще, быстрее и безглючнее.

Во-вторых, хороший динамический вебный интерфейс при грамотной реализации практически не уступит десктопному. А вот поддерживать его становится в РАЗЫ проще! Грубо говоря, залил на сервер новую версию, и у всех клиентов разом обновился клиент приложения. Тот, кто сталкивался с вопросами синхронизации версий клиентского и серверного софта в традиционных ентерпрайзных системах, тот очень хорошо поймет, о чем идет речь.

Отсюда резюме: Аякс и Веб 2.0 имеют право на жизнь, но нужно хорошо представлять, где от них польза, а где вред.

Впрочем, как и с любой другой технологией smile

Добавлено через 2 минуты и 42 секунды
ЗЫ. Поскольку последние два поста представляют некоторй оффтоп по отношению к теме (и даже к разделу), возможно, есть смысл выделить их в отдельный топик. Что скажете, товарищи модеры?

Автор: Tony 20.9.2007, 21:48
Пора выпусакть javascript2. Он (текущий)задумивался для простых скриптиков, а когда смотришь на prototype.js то понятно, как извращаются люди для емуляции наследования.Да и вообще для идеи web2.0 нам надо новий js. С поддержкой OOП(a не лажи из прототипов и функций) и строгой типизацией. Коне4но FireBug  помогает при разработки,но это не то. Хо4ется надеется на лутшее, но как всегда будет каша из версий.  smile 

Автор: batigoal 21.9.2007, 08:32
Цитата(Stampede @  20.9.2007,  21:33 Найти цитируемый пост)
. Динамический веб интерфейс категорически противопоказан для сайтов, которые полагаются на традиционные конитекстно-зависимые методы продвижения. Грубо говоря, на SEO. 

Дык и что мешает использовать иные методы продвижения? Их предостаточно.

Цитата(Stampede @  20.9.2007,  21:33 Найти цитируемый пост)
ЗЫ. Поскольку последние два поста представляют некоторй оффтоп по отношению к теме (и даже к разделу), возможно, есть смысл выделить их в отдельный топик. Что скажете, товарищи модеры? 

Тогда придется вынести их из Java, а этого не хочется.

Автор: Vasay 21.9.2007, 09:43
Цитата(batigoal @ 21.9.2007,  08:32)
Дык и что мешает использовать иные методы продвижения? Их предостаточно.

Но SEO самый дешевый (при правильном подходе).

Да и при продвижении сайта нужно все делать комплексно.  SEO, Реклама, сетевой маркутинг.

+ Если грамотно подойти к созданию, то можно сделать хороший динамический интерфейс не в ущерб оптимизации. 

Автор: Maksym 21.9.2007, 13:38
Цитата(Stampede @  20.9.2007,  20:33 Найти цитируемый пост)
3. Зато когда речь заходит о корпоративных приложениях, ситауция меняется кардинально.

Во-первых, внутри конторы всегда моно скомандовать: такие-то и такие-то отделы для внутренних приложений юзают Firefox 2.0.0.5 и выше. На таких условиях писАть вебный софт уже становится гораздо проще, быстрее и безглючнее.

Справедливо. Но наилучшая ситуация, с которой я сталкивался, это требование: IE6+, FireFox1.5+, Opera по возможности -- уже граблей более чем достаточно.
Цитата(Stampede @  20.9.2007,  20:33 Найти цитируемый пост)
Во-вторых, хороший динамический вебный интерфейс при грамотной реализации практически не уступит десктопному. 

Это точно. Это и прельщает. Это и заманивает..  smile 
Цитата(Stampede @  20.9.2007,  20:33 Найти цитируемый пост)
А вот поддерживать его становится в РАЗЫ проще! Грубо говоря, залил на сервер новую версию, и у всех клиентов разом обновился клиент приложения. Тот, кто сталкивался с вопросами синхронизации версий клиентского и серверного софта в традиционных ентерпрайзных системах, тот очень хорошо поймет, о чем идет речь.

Тоже справедливо. Но если можно скомандовать пользоваться конкретной версией браузера, то несложно и заставить пользователя следить за версией более толстого клиента.
Цитата(Stampede @  20.9.2007,  20:33 Найти цитируемый пост)
Отсюда резюме: Аякс и Веб 2.0 имеют право на жизнь, но нужно хорошо представлять, где от них польза, а где вред.

Факт.

В своем посте я не хотел сказать: ребята, дружно забиваем на Web 2.0 ! smile А хотел сделать акцент на том, что этот сегмент в своем мэйнстриме пришел сейчас в состояние, когда искусственно созданных трудностей накопилось критичное количество. Соверменный веб-интерфейс теоретически выглядит панацей от всех бед (в то числе и за счет плюсов описанных Stampede выше), но в практической плоскости его реализация на нужном уровне безглючности и масштабируемости требует неоправдано больших затрат. А все из-за проблем технологий, которые напоминают попытки совместить квадрат с кругом.

Что-то скоро изменится.. но вот что..? Может быть появится какая-нибудь новая качественная клиентская среда выполнения серверного кода, которая избежит несчастливой судьбы апплетов, неудобства и костылей js, недоделок flash'а ..? Ведь идея апплетов была ой как хороша, если бы только они рисовали не уродский виндоус-ориентированный интерфейс, а симпатичные интерактивные странички (аля ajax или flash)...

Автор: Maksym 21.9.2007, 20:10
Цитата(Tony @  20.9.2007,  21:48 Найти цитируемый пост)
Да и вообще для идеи web2.0 нам надо новий js. С поддержкой OOП(a не лажи из прототипов и функций) и строгой типизацией. 

Как минимум!

Добавлено через 4 минуты и 20 секунд
Но это будет уже Web 3.0

Автор: polosatij 24.9.2007, 22:18
Цитата(LuMee @  20.9.2007,  07:51 Найти цитируемый пост)
Единственное, на производительность некоторые жалуются.


я сам не использовал эту технологию, однако хотел, пока не посмотрел тесты по JSF (JavaMagazin, JSF-Performance 10.2007 стр. 101), где чётко показано, что JSF уступает Struts по скорости в более чем 3 - 8 раз!  smile 

терь я не знаю, что мне выбрать для просто большого проекта.. я всё думал jboss + jbossseam (jsf + ejb3).. ы.. а терь чешу тыковку и не наю smile

Автор: Tony 24.9.2007, 22:57
Код

терь я не знаю, что мне выбрать для просто большого проекта.. я всё думал jboss + jbossseam (jsf + ejb3).. ы.. а терь чешу тыковку и не наю smile 

Бери Spring+Hibernate+JPA

Автор: polosatij 24.9.2007, 23:05
Цитата(Tony @  24.9.2007,  22:57 Найти цитируемый пост)
Hibernate+JPA 


не.. я хочу EJB3 в его чистом виде.. 
знаешь что мне нравится в JSF, а именно в jbossseam? там есть такое => <h:inputText value="#{location.zip}" required="true"> и связка сразу на EJB3..  а в EJB3 есть сразу: @NotNull, @Length(max=30)

смотри здесь => http://docs.jboss.com/seam/1.2.1.GA/reference/en/html/validation.html

меня просто задолбали всякого рода проверки  smile  smile 

Spring я ещё не копал.. на столе вот книга лежит  smile 



Автор: Maksym 7.10.2007, 23:24
Цитата(Maksym @  21.9.2007,  20:10 Найти цитируемый пост)
Но это будет уже Web 3.0 

Когда писал http://forum.vingrad.ru/index.php?showtopic=172414&view=findpost&p=1263026 пост, честное слово, http://en.wikipedia.org/wiki/Web_3 еще не читал...
Цитата
The term Web 3.0 first appeared prominently in early 2006 in a blog article by Jeffrey Zeldman critical of Web 2.0 and associated technologies such as Ajax.

Цитата
Web 3.0 as an "Executable" Web Abstraction Layer

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)