|
|
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Kachalov- достаточно заняться обновлением версии Spring или одной из десятка связанных с проектом библиотек, чтобы лишиться иллюзии относительно переносимости и начать ценить спецификации, реализация которых соответствует написанному (не написанное есть не только в спецификации JavaEE, но и где угодно, обычно в этих случаях начинается нытье про "слабое" документирование того или иного фреймворка) +1. Буквально позавчера столкнулся с ацкими танцами с бубном. Нам предоставили сорс код типового приложения, которое нам надо было интегрировать со своим и кастомизировать под свои нужды. Ну собрал их еарник - положил в веблоджик - все шерстит. В проекте 30 спринговых джарок. Поменял только главный pom, там где стандартные версии Спринга и других наших библиотек. Собрал еар - не работает {sic}. Скопировал все либы спринга из присланного проекта в свой - работает:). Отщемливал по одной - пока не нашел что со spring-aop-3.0.5 работает а со spring-aop-3.0.11 нет. Если использовать все либы 3.0.5 тоже не работает, если все 3.0.11 - тоже нет:). Пришлось написать кучу exclusions, теперь все версии 3.0.11 а aop - 3.0.5:) Ну и день в никуда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 16:29:44 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Kachalov - часто оказывается что задачи не вписывающие в JavaEE либо изначально идеологически не соответствуют платформе JavaEE (неверный выбор технологии архитектором), либо имеют архитектурные извращения Это слишком субъективно. Я выше уже перечислил задачи, которые приходится часто решать в серверных приложениях, и о которых в JEE спеках почти ничего нет. Это просто на вскидку. В крупных проектах можно поднасобирать больше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 16:34:15 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Ну, бывает, тоже на днях нашел, у одного из модулей 3.1.2 версии были зависимости от 3.0.7, пришлось перекрыть явно указав версию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 16:46:52 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Blazkowiczвыше уже перечислил задачи, которые приходится часто решать в серверных приложениях, и о которых в JEE спеках почти ничего нет - ну так никто и не утверждает что спецификация JavaEE описывает все . Не все но многое, в отличие от документации к некоторым фреймворкам которая сплошь и рядом грешит неполнотой или неактуальностью. Т. е. я клоню к тому что поведение JavaEE приложения все же более подробно описано и более предсказуемо даже с учетом того что можно использовать различные реализации ORM, контейнера сервлетов и т. п. Ну а если хочется стабильности (как в морге) можно всегда использовать знакомый сервер приложений, в этом случае существование спецификации JavaEE никак не должно повредить приложению ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 18:53:06 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Предлагаю викторину. Ниже перечислены названия классов из спринга вперемежку с результатами работы этого замечательного сервиса http://www.classnamer.com/ . Надо угадать, где что. Ответ под спойлером. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Они все из спринга. Мегабайты бессмысленных классов, которые ничего не делают и состоят в основном из геттеров, сеттеров и вызовов других бессмысленных классов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 22:09:00 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Йуный джавистЪМегабайты бессмысленных классов, которые ничего не делают и состоят в основном из геттеров, сеттеров и вызовов других бессмысленных классов. JBoss-а классы почитай, умник. Во-первых у каждого класса своё предназначение, которое подробно описано в доке. При этом каждый класс остаётся достаточно простым и соответствует SRP. Проблем с чтением исходников не возникло не разу. В Hibernate, всё гораздо запутанее. При этом тонны классов с назвнием в одно слово, которое ни о чем не говорит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 22:20:55 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Немного не в тему но вот с реального проекта - Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 22:45:13 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
постоянно забываю че в этой переменной ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 22:46:00 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
забыл никпостоянно забываю че в этой переменной EWS + JAXWS = getCreateItemResponseMessageOrDeleteItemResponseMessageOrGetItemResponseMessage() getAppendToItemFieldOrSetItemFieldOrDeleteItemField() и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 22:51:49 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
JBoss-а классы почитай, умник. Во-первых у каждого класса своё предназначение, которое подробно описано в доке. При этом каждый класс остаётся достаточно простым и соответствует SRP. Проблем с чтением исходников не возникло не разу. Все эти чудеса нужны для одной цели: чтобы можно было лепить аннотацию @Transactional. Неизбежно рано или поздно кто-то забудет прилепить эту аннотацию, и начнут происходить разные нескучные вещи, например деньги с одного счета списались, а на другой не пришли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 23:06:51 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Kachalovosonу Spring хорошая переносимость - сам есть контейнер и не зависит от сервера, на котором запускается. JEE является набором стандартов, а реализация - есть аппликейшн сервре - то есть полностью зависит от реализации сервера - достаточно заняться обновлением версии Spring или одной из десятка связанных с проектом библиотек, чтобы лишиться иллюзии относительно переносимости и начать ценить спецификации, реализация которых соответствует написанному (не написанное есть не только в спецификации JavaEE, но и где угодно, обычно в этих случаях начинается нытье про "слабое" документирование того или иного фреймворка) При чем тут обновление версий зависимостей, какое это отношение имеет к переносимости? Спринг приложения переносятся как есть, потому что используют от сервера приложений только необходимый минимум, JEE приложения такой переносимостью не обладают. Я не говорю JEE не переносимом совсем, но по слухам на перенос с jboss на glassfish уходит где-то неделя. На портирование JEE приложения нужно потратить больше усилий это точно. Spring разработчики не против спецификаций, а только за, так как они делают наши приложения легко портируемыми. Чем больше всё регламентировано тем нам же лучше. Если уж так сильно хочется поговорить об апгрейде, давайте поговорим. C JEE всё совсем туго, платформа обновляется раз в несколько лет, а это означает что несколько лет ты пишешь код в мусорное ведро использую устаревшие подходы, в то время как программисты спринг использующие фреймворки напрямую без посредников всегда могут позволить себе иметь самые свежие версии библиотек и своевременно обновляться. Чтобы проанализировать граф maven зависимостей мозгов много не надо, различные графические тулы анализа зависимостей есть в каждой IDE. Обновление же JEE приложения это всегда шок, в отличии от спринг где новые версии новых либ команда внедряет в каждом цикле релиза приложения, в JEE приложении ничего не менялось несколько лет и эфект от смены мажорной версии платформы ровно такой же как у адинэсников. Я видел несколько приложений которые так и не смогли справиться с таким ударом и так и продолжают унылое существование на J2EE-1.4 и java-1.4. Kachalovoson JEE работает в пределах стандартизированных и реализованных на аппликейшн серврее задач. Дополнительные задачи требуют прибегать к трюкам, в том числе например использовать для отдельных задач Spring. - часто оказывается что задачи не вписывающие в JavaEE либо изначально идеологически не соответствуют платформе JavaEE (неверный выбор технологии архитектором), либо имеют архитектурные извращения [/quot] Следуя вашей логике JEE5 архитектурное извращение, так как оно содержит решения не вписывающиеся в J2EE-1.4. Но вот почему то JEE5 все считают прорывом, а не архитектурным извращением. Или к примеру возьмём опенсорс библиотеку jfreechart, как рисовать графики в JEE не сказано и вообще там про графики ничего не сказано, следуя вашей логике все кто захочет с помощью не1 что-то показать пользователю либо извращенец, либо какой-то фигнёй занимается, либо вообще архитектурно безграмотен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 23:22:57 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
oson, Вставлю свои пять копеек. На мой взгляд спринг наиболее предпочтительное решение чем j2ee. 1. Спринг не чуть не сложнее, а во многом гораздо проще и прозрачнее чем j2ее 2. Можно заменить или проапгрейдить любой компонент. 3. Спринг гораздо динамичнее развивается постоянно появляются очень нужные вещи, имеет в составе современный web фреймворк. 4. Свобода выбора контейнера. Например мы завели кейс в томкате и его исправили, но jboss новую версию не включил в поставку, а самим апгрейлить это та еще задача. 5. Юнит тесты со спрингом это одно удовольтсвие 6. Jpa отстает от хибера по фичам и динамике с спрингом мы не привязаны к JPA В общем я не вижу ни одного аргумента за j2ee и я это по опыту говорю мы несколько лет перелезали на спринг. В краткосрочной перспективе возможности технологии сравнимы, но если смотреть на шаг вперед, то спринг однозначный выбор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 23:30:57 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
авторC JEE всё совсем туго, платформа обновляется раз в несколько лет, а это означает что несколько лет ты пишешь код в мусорное ведро использую устаревшие подходы Приложения под CICS отлично живут уже по 40 лет, нет сомнений что вебсфера проживет столько же. Востребованность spring в 2052 году мне кажется сомнительной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 23:35:27 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
ех.. как дети малые вы понимаете, что категоричность в целом снижает вашу ценность на рынке? не? это непонятно? ну, ок. дурачьтесь дальше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 23:43:57 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Йуный джавистЪавторC JEE всё совсем туго, платформа обновляется раз в несколько лет, а это означает что несколько лет ты пишешь код в мусорное ведро использую устаревшие подходы Приложения под CICS отлично живут уже по 40 лет, нет сомнений что вебсфера проживет столько же. Востребованность spring в 2052 году мне кажется сомнительной. Не доживёт твоя вебсфера до 2052, девятнадцатого января 2038 гарантированно ляжет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2012, 23:47:11 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
dominator, спасибо за подсказку. По поводу апдейта Spring чтото не совсем понял. Написали систему например на Spring 3.1 Выхожит Spring 3.2 - надо обязательно апгрейдить? Нельзя что-ли продолжать работать в 3.1? Или в плане, что баги пофиксили, которые в 3.1 найдены. Ну и по аналогии с JEE. Написана например система на J2EE 2.0, выходит J2EE 3.0 Наверное проапгрейдить очень легко? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2012, 00:03:40 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
osonНаписана например система на J2EE 2.0, выходит J2EE 3.0 Наверное проапгрейдить очень легко? :)зависит но обычно - нет, не легко ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2012, 00:04:56 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Наверное Spring легче проапгрейдить. Хотя зачем собственно апгрейдить - только из-за багов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2012, 00:11:12 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
osonНаверное Spring легче проапгрейдить. Хотя зачем собственно апгрейдить - только из-за багов. Философия у спринг разработчиков другая. Вот если у человека есть дофига бабла то он каждый месяц меняет мобилу на более новую, раз в год меняет тачку и.т.д. Если есть возможность жить на всю каташку то почему ей не пользоваться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2012, 00:28:14 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
grasoff.netosonНаписана например система на J2EE 2.0, выходит J2EE 3.0 Наверное проапгрейдить очень легко? :)зависит но обычно - нет, не легко Сказал тот кто его в глаза не видел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2012, 10:18:59 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
vimbagrasoff.netпропущено... зависит но обычно - нет, не легко Сказал тот кто его в глаза не видел.што? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2012, 10:48:23 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
Йуный джавистЪ, С точки зрения постороннеого многие классы (особенно внутренние) твоего проекта тоже покажутся весьма бессмысленными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2012, 12:17:20 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
vimbaПри чем тут обновление версий зависимостей, какое это отношение имеет к переносимости? Спринг приложения переносятся как есть, потому что используют от сервера приложений только необходимый минимум ... программисты спринг использующие фреймворки напрямую без посредников всегда могут позволить себе иметь самые свежие версии библиотек и своевременно обновляться - Вы противоречите сами себе. Либо приложение вечно тащит с собой ту версию Spring под которую разрабатывалось, либо Вы обновляете версию Spring и получаете не работающее приложение. Ну и, само собой, попытка интегрировать несколько Spring приложений разработанных под разные версии Spring может вызвать проблемы чреватые переделкой кода приложений. vimbaJEE приложения такой переносимостью не обладают. Я не говорю JEE не переносимом совсем, но по слухам на перенос с jboss на glassfish уходит где-то неделя. На портирование JEE приложения нужно потратить больше усилий это точно. - единственный комментарий: это зависит от приложения (настраивать неделю JDBC-пулы и JMS-очереди вряд ли возможно). Все остальное считаю троллингом. vimbaЕсли уж так сильно хочется поговорить об апгрейде, давайте поговорим. C JEE всё совсем туго, платформа обновляется раз в несколько лет, а это означает что несколько лет ты пишешь код в мусорное ведро использую устаревшие подходы Это Вы про EJB 2 vs EJB 3? Ну так когда появился EJB 2 никакого Spring и в зародыше не было, собственно сам Spring это реализация идей появившихся после использования EJB 2, которая затем была портирована в EJB 3. Если говорить о преемственности приложений, то компоненты написанные под EJB 2 работоспособны и в актуальных серверах приложений и совместимы с современными приложениями. vimbaЯ видел несколько приложений которые так и не смогли справиться с таким ударом и так и продолжают унылое существование на J2EE-1.4 и java-1.4. - ну если нельзя поменять версию JVM, то это не к технологии JavaEE, проблема явно в чем-то другом. А что касается J2EE то, повторюсь, современные сервера приложений сохраняют поддержку этой технологии и никто не мешает держать на одном сервере как J2EE-приложения, так и JavaEE 6 приложения. vimbaСледуя вашей логике JEE5 архитектурное извращение, так как оно содержит решения не вписывающиеся в J2EE-1.4. - не утрируйте, я такого не говорил. В приведенном примере наоборот J2EE проигрывает JavaEE 5, но это нормально - технология развивается и старый подход потому и старый, что есть более свежие и разумные решения учитывающие ошибки и проблемы связанные с предыдущим опытом. vimbaИли к примеру возьмём опенсорс библиотеку jfreechart, как рисовать графики в JEE не сказано и вообще там про графики ничего не сказано, следуя вашей логике все кто захочет с помощью не1 что-то показать пользователю либо извращенец, либо какой-то фигнёй занимается, либо вообще архитектурно безграмотен. - мы говорим о серверных решениях или о чем? Вы еще упрекните меня в том что JavaEE ничего не пишет о CSS и HTML PS Вы не ответили на 13268845 PPS Вы так много пишите о недостатках JavaEE что я не понял какую конкретно мысль Вы хотите донести до общественности - что JavaEE негодная технология для лузеров, а Spring - кул для реальных пацанов? Ну так я не спорю с этим тезисом и с его носителями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2012, 14:10:13 |
|
||
|
JEE или Spring?
|
|||
|---|---|---|---|
|
#18+
KachalovvimbaПри чем тут обновление версий зависимостей, какое это отношение имеет к переносимости? Спринг приложения переносятся как есть, потому что используют от сервера приложений только необходимый минимум ... программисты спринг использующие фреймворки напрямую без посредников всегда могут позволить себе иметь самые свежие версии библиотек и своевременно обновляться - Вы противоречите сами себе. Либо приложение вечно тащит с собой ту версию Spring под которую разрабатывалось, либо Вы обновляете версию Spring и получаете не работающее приложение. Ну и, само собой, попытка интегрировать несколько Spring приложений разработанных под разные версии Spring может вызвать проблемы чреватые переделкой кода приложений. Я противоречу? Это ты постояно применяешь приёмчики опытного демагога. Уже второй раз съезжаешь с темы про перенос с приложения с сервера на сервер, приводя аргументы к делу непосредсвено выдергивания приложения из одного сервера и деплой на другой, совершенно не относящиеся доводы. Спринг приложение легче перенести, по одной простой причине большинство конфигурации находится в самом приложении, всё точка. В общем не хочется вести диалог с демагогом, тут говорил тут неговорил, ещё и преписываешь мне что я кого-то делю на на группы по используемым в работе технологиям. В общем, удачи и досвидания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2012, 23:16:46 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37984600&tid=2130273]: |
0ms |
get settings: |
15ms |
get forum list: |
20ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
39ms |
get topic data: |
15ms |
get forum data: |
3ms |
get page messages: |
84ms |
get tp. blocked users: |
2ms |
| others: | 295ms |
| total: | 483ms |

| 0 / 0 |
