powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / .Net -> Java
51 сообщений из 51, показаны все 3 страниц
.Net -> Java
    #34747552
.Net -> Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сейчас работаю прогом на .Net. Но есть огромное желание перелезть на J2EE.
Если есть люди, который успешно провели такой "трансфер", плиз поделитесь опытом:
1. Какие технологии следует изучить в первую очередь, т.е с чего начать.
2. Какие книжки могут быть полезными(минимум воды, максимум информации).
3. Если вы меняли работу, то шли на позицию джуниора или просто прога?

Сорри если не совсем понятно. Нахожусь в глубоких раздумьях.
Заранее очень благодарен.
...
Рейтинг: 0 / 0
.Net -> Java
    #34747577
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
".Net -&gt; Java" <nospam@sql.ru>;
Но есть огромное желание перелезть на J2EE.



а зачем?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
.Net -> Java
    #34747663
Deady
".Net -> Java" <nospam@sql.ru>;
Но есть огромное желание перелезть на J2EE.



а зачем?
Posted via ActualForum NNTP Server 1.4

Желание участвовать в разработке продуктов масштаба крупного предприятия.
Нравится более широкий набор технологий, фреймворков и общий подход к разработке. На сколько я знаю из опыта общения с прогами, в Java уделяется гораздо большее внимание к архитектуре.

Немного сумбурный поток мыслей , но думаю понять можно.
...
Рейтинг: 0 / 0
.Net -> Java
    #34747720
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в недавнем споре в неким grexhide выяснили, что все это фуфло, фреймворки - излишняя тормознутая навеска, swing - вообще не дееспособен.

пишите лучше на делфи :))
а вообще все есть в топе задаваемых вопросов
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
.Net -> Java
    #34747759
Фотография grexhide
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
".Net -> Javaк архитектуре.

fine grained part of - это еще не архитектура.

На самом деле в Java уделяется слишком много внимания псевдонаучным методам (т.н. паттернам).
В результате - степенью крутизны является типовая практика (вызовов):

Код: plaintext
1.
myView().bindingSource().bindingContext().bindingIterator().superController().contextFactory()modelProxy().itemFacade().cretinoObserver().rowSet().dataItem().someBooleanField().toString() != "false"

Степень крутости явера - определяется количеством элементов вот в этих цепочках.
Говорят - настоящие гуру - доходят до >32 уровней вложенности (т.е. гуру это > 5-го порядка вложенности, никак не меньше).

..

Достаточно посмотреть хоть раз на типовой лог AV... тьфуты, NullPointerException, конечно же ;)
...
Рейтинг: 0 / 0
.Net -> Java
    #34747824
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чувак реально дело говорит.
хде там мой борманд запылилсо ...
...
Рейтинг: 0 / 0
.Net -> Java
    #34747866
Alexandr Romanoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну я перелез.. чего и вам советую!

C сеньера на сеньера, реально переход занял меньше месяца и то только изза изучение неиспользуемых на NET концепций.

Те же яйца только True!
...
Рейтинг: 0 / 0
.Net -> Java
    #34747885
Michael Ponomarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grexhide
На самом деле в Java уделяется слишком много внимания псевдонаучным методам (т.н. паттернам).
В результате - степенью крутизны является типовая практика (вызовов):

Во-первых о паттернах "заговороли" когда JAVA еще не было (см. GoF - дату издания и на каких языках приводятся примеры), или С++ тоже "ф топку" ?
Во-вторых (как следствие во-первых) паттерны применяются не только в JAVA, но и, например, в .NET языках.
В-третьих где он критерий научности / псевдонаучности и кто его определяет? Или вы проецируете на себя сами знаете кого и "псевдонаучную" генетику?
Про stackTrace ввобще не понял, он то здесь причем ?
...
Рейтинг: 0 / 0
.Net -> Java
    #34747904
Фотография grexhide
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexandr Romanoff
C сеньера на сеньера, реально переход занял меньше месяца

Пацталом......
...
Рейтинг: 0 / 0
.Net -> Java
    #34747913
.Net -&gt; Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2. Grexhide. Вроде не спрашивал как перелезть на дельфи. А о вашем мнении прекрасно осведомлен. Просьба в топике не гадить.

2. Michael Ponomarev. К сожалению на .Net паттерны применяются не так активно и им уделяется меньшее внимание. Из опыта общения со знакомыми имхо.

2. Alexandr Romanoff. Это радует =) А конкретно что пришлось подучить?
...
Рейтинг: 0 / 0
.Net -> Java
    #34747955
Фотография grexhide
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Michael Ponomarev
Во-первых о паттернах "заговороли" когда JAVA еще не было (см. GoF - дату издания и на каких языках приводятся примеры), или С++ тоже "ф топку" ?
Во-вторых (как следствие во-первых) паттерны применяются не только в JAVA, но и, например, в .NET языках.
В-третьих где он критерий научности / псевдонаучности и кто его определяет? Или вы проецируете на себя сами знаете кого и "псевдонаучную" генетику?
Про stackTrace ввобще не понял, он то здесь причем ?

1) Во первых, GoF паттерны довольно примитивны, и испольуются, действительно, очень давно (в
неявном виде). В явном виде их стали тянуть (в библиотеки) - как раз в яве (такой студенческий
прикол - ... Model, ...Controller, ...View, ...Factory) - наверное, чтоб "научное знание" не
сразу выветривалось

--

про псевдонаучность - я говорил больше на примере J2EE Blue Prints. IMHO, редкостное говно, оторванное от реалий жизни.

2) .NET это недоDelphi и недоJava. Типичный пример того, что бывает, если скрестить слона с носорогом.

3) А какие тебе критерии нужны? Математические доказательства псевдонаучности? Самому хоть не смешно?

Впрочем, я говорил больше о следствиях, жаль, что ты этого не понял (рассматривая очередной чудо стрек-трейс дамп упавшего чудо Java поделия SQL Developer (свежевыкачанного)). Или апплет
в файрфоксе, загнувшийся естественной смертью, после выедания всех ресурсов памяти.


---

Особо порадовало когда то вычинанное откровение Альфреда Чанга (BEA CEO), в котором он честно и
откровенно признавался, что современная ситуация в мире "корпоративных виртуальных миров EE
объектов" - нечто среднее, между бардаком и дурдомом.


....


И что самое смешное - .NET уготована точна та же судьба, только на порядок хужее (инфраструктура....).
...
Рейтинг: 0 / 0
.Net -> Java
    #34748151
.Net -&gt; Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может ктонить всетаки сможет еще ответить по теме топика?=)
...
Рейтинг: 0 / 0
.Net -> Java
    #34748165
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ответил же. см топ часто задаваемых вопросов.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
.Net -> Java
    #34748177
.Net -&gt; Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Deady
ответил же. см топ часто задаваемых вопросов.
Posted via ActualForum NNTP Server 1.4
Сорри не заметил. Спасибо
...
Рейтинг: 0 / 0
.Net -> Java
    #34748194
Tapac
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
exppветка закрывается по причине рецидивного обострения вербальной диареи у нашего всеобщего любимца.... или весь форум к чёрту

Давно хотел спросить: модератор в этих форумах есть? кто либо с правами полного или временного блокирования участников форума?
...
Рейтинг: 0 / 0
.Net -> Java
    #34748234
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
только чтоб не забанили ...

2 ".Net -> Java":

на жабе слишком много отдельных хреновин, половина из них начинается на J , для начала неплохо было бы примерно ориентироваться в них и тем как они соотносятся с .Net аналогами, после этого можно углубляться в нужных вам областях.

чем на .Net е занимались, и чем хотели бы ?

2Tapac: надо жать
...
Рейтинг: 0 / 0
.Net -> Java
    #34748336
.Net -&gt; Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
exppтолько чтоб не забанили ...

2 ".Net -> Java":

на жабе слишком много отдельных хреновин, половина из них начинается на J , для начала неплохо было бы примерно ориентироваться в них и тем как они соотносятся с .Net аналогами, после этого можно углубляться в нужных вам областях.

чем на .Net е занимались, и чем хотели бы ?


Сбор и обработка данных. КС: Винформы, вебсервисы, xml/xslt. На Java хотелось бы разработка web 2.0 apps в корпоративной среде масштаба региона и выше.
...
Рейтинг: 0 / 0
.Net -> Java
    #34749449
Гость_42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторразработка web 2.0 apps в корпоративной среде масштаба региона и выше
У меня лично писания grexhide в этом форуме легкое отвращение обычно вызывают, но читая вот такой вот набор штампов, я думаю, а ведь в чем-то он прав. Это же писец просто. Ну скажи просто, что денег хочешь больше. Что ты посчитал на каком-нибудь hh.ru среднюю по всем предложениям зп для .NET и для Java и понял, что за Java вроде как платят чуть побольше и поэтому страстно желаешь обратиться в новую веру. Нет ведь! Вебдванольбля. Ууууу.
...
Рейтинг: 0 / 0
.Net -> Java
    #34749630
.Net -&gt; Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гость_42 авторразработка web 2.0 apps в корпоративной среде масштаба региона и выше
У меня лично писания grexhide в этом форуме легкое отвращение обычно вызывают, но читая вот такой вот набор штампов, я думаю, а ведь в чем-то он прав. Это же писец просто. Ну скажи просто, что денег хочешь больше. Что ты посчитал на каком-нибудь hh.ru среднюю по всем предложениям зп для .NET и для Java и понял, что за Java вроде как платят чуть побольше и поэтому страстно желаешь обратиться в новую веру. Нет ведь! Вебдванольбля. Ууууу.
Ошибаешься=)
Я особо не переживаю за зп =) в нашей деревне зп C# такая же как у Java прогов. Так шта ни ф бабле дело =) А вы видимо относитесь к тем , кому лишь бы сляпать и забыть, раз тебе не понятны мои мотивы, озвученные выше.
...
Рейтинг: 0 / 0
.Net -> Java
    #34750106
Leonidv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гость_42
Может быть человек понимает, что завязываться на MS - очень опасно?
...
Рейтинг: 0 / 0
.Net -> Java
    #34750381
Гость_42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonidv Гость_42
Может быть человек понимает, что завязываться на MS - очень опасно?

Да ну чепуха какая. Просветите уж тогда штоле, чем опасно-то?
...
Рейтинг: 0 / 0
.Net -> Java
    #34750418
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Гость_42" <nospam@sql.ru>;
Да ну чепуха какая. Просветите уж тогда штоле, чем опасно-то?



скоро наступит священный вендекапец и мелкомягкие разорятся
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
.Net -> Java
    #34750514
.Net -&gt; Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Только без холиваров=)
Для .Net гораздо меньше стороних библиотек фреймворков и тд. Тоесть можно с определенной натяжкой сказать , что платформа сама в себе. Сама разработка более straitforward чтоли.. Кто работал, тот я думаю, понимает.
Плюс я чет не встречал виндов на мк серваках и тд.=)
Ничего плохого в сторону МС. На десктопах вне конкуренции. Для малого и среднего бизнеса тож хорошо. Но по настоящему крупные системы - не МС. А они то как раз и интересуют.
...
Рейтинг: 0 / 0
.Net -> Java
    #34750615
Щитъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
.Net -> JavaНичего плохого в сторону МС. На десктопах вне конкуренции. Для малого и среднего бизнеса тож хорошо. Но по настоящему крупные системы - не МС. А они то как раз и интересуют.Да и по настоящему крупные системы обслуживают тоже мальчики на побегушках. Счас появилась куча вакансий на Java, потому что запад стал аутсорсить в Индию и Рашку. Как только доучатся достаточно прогеров под Javу, зарплаты упадут до уровней php-сайто-ваятелей.

Я вообще жалею что учился на инженера и прогера. Надо было на хирурга или стоматолога учиться. У них зарплаты не падают, потому что неумытых гастарбайтеров во врачебное дело не пускают.
...
Рейтинг: 0 / 0
.Net -> Java
    #34750726
.Net -&gt; Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не буду спорить =) каждому свое=)
Когда это произойдет(если произойдет) тогда и надо думать =) а пока вон дырку в космосе нашли - тож страшно, а еще земля остывает - тоже страшно =)
Разработка и обслуживание не одно и то же. Обычно сапорт, внедрение и девелопмент разделены в компаниях(в которых мне приходилось работать, про другие не знаю - мало ли там какой бардак).

Интересует какие технологии сейчас активно используются. Т.е на сколько я знаю ejb до 3 версии лучше было не трогать. А сейчас? Что по orm можете посоветовать?

Думаю ответы будут полезны не только мне , но и другим людям, которые хотят сделать свич с .net на java
...
Рейтинг: 0 / 0
.Net -> Java
    #34751013
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЩитъДа и по настоящему крупные системы обслуживают тоже мальчики на побегушках. Счас появилась куча вакансий на Java, потому что запад стал аутсорсить в Индию и Рашку. Как только доучатся достаточно прогеров под Javу, зарплаты упадут до уровней php-сайто-ваятелей.
Я тебе хочу сказать лишь одно.
Зарплаты программистов-профессионалов ни разу не падали за все 30 лет существования этой профессии. Это на фоне постоянного рыночного голода на таких специалистов.

Размер зарплаты php-ваятелей, вчерашних студентов, а также тупых недопрограммеров, рисующих формочки с 9 до 6, а после дико визжащих "ПЯДНИЦЦЦОООО" меня не волнует. Эти тенденции относятся к другим людям.
...
Рейтинг: 0 / 0
.Net -> Java
    #34751019
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.Net -> JavaТ.е на сколько я знаю ejb до 3 версии лучше было не трогать. А сейчас? Что по orm можете посоветовать?
Так может считать лишь дремучий человек, начитавшийся тявкания в форумах.
...
Рейтинг: 0 / 0
.Net -> Java
    #34751119
.Net -&gt; Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хрюхрюшкин. .Net -> JavaТ.е на сколько я знаю ejb до 3 версии лучше было не трогать. А сейчас? Что по orm можете посоветовать?
Так может считать лишь дремучий человек, начитавшийся тявкания в форумах.
Вот и спрашиваю=) лучше бы ответил по существу =)
В основном по форумам и смотрю, ибо по пресс релизам бесполезно.
...
Рейтинг: 0 / 0
.Net -> Java
    #34751126
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.Net -> Java
Вот и спрашиваю=) лучше бы ответил по существу =)
В основном по форумам и смотрю, ибо по пресс релизам бесполезно.
Что я тебе могу ответить по существу? Каждая технология хороша для своих задач. Задачи обучения всех подряд работе с EJB или еще какой другой технологии у меня нет.
...
Рейтинг: 0 / 0
.Net -> Java
    #34751146
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Процитирую себя:
Хрюхрюшкин.Размер зарплаты php-ваятелей, вчерашних студентов, а также тупых недопрограммеров, рисующих формочки с 9 до 6, а после дико визжащих "ПЯДНИЦЦЦОООО" меня не волнует. Эти тенденции относятся к другим людям.

Вот взять параллельный форум по Javascript'у. Там задают свои никчёмные вопросы такие дремучие люди, что я искренне удивляюсь, А ЗА ЧТО ИМ ПЛАТЯТ ДЕНЬГИ? Если, конечно, платят. Они не знают ничего, кроме своего тупорылого PHP или ASPX. Да и эти языки — на уровне прочитать значения из реквеста методом "GET" и нарисовать на странице три формочки.

Этих людей вполне можно заменять таджЫками. Хотя, не советовал бы. ТаджЫк прирежет еще свое начальство, если оно будет сильно орать и выпендриваться :)
...
Рейтинг: 0 / 0
.Net -> Java
    #34751195
.Net -&gt; Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хрюхрюшкин. .Net -> Java
Вот и спрашиваю=) лучше бы ответил по существу =)
В основном по форумам и смотрю, ибо по пресс релизам бесполезно.
Что я тебе могу ответить по существу? Каждая технология хороша для своих задач. Задачи обучения всех подряд работе с EJB или еще какой другой технологии у меня нет.

ejb были как пример. Вопросы возникают когда переходишь с мс платформы. На Java дикий зоопарк технологий, фремворков и тд, в которых черт ногу сломит. Собсна и вопрос, что из этого бардака сейчас используется, а что устарело и тд.
Вы можете опираясь на свой опыт высказать мнение относительно этого, что возможно поможет сконцентрировать усилия на определенном наборе технологий и не распыляться на ненужные/кривый/устаревшие/сырые.
...
Рейтинг: 0 / 0
.Net -> Java
    #34751242
Anarion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зная крепко основы и понимая как все это работает на уровне аппсервера, любой фреймворк осваивается в среднем за неделю. Меня очень умиляют люди, которые делают красивости на JSF, творят вебдваноль, но не знают, куда деплоятся классы в томкате.
...
Рейтинг: 0 / 0
.Net -> Java
    #34751247
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.Net -> Java
ejb были как пример. Вопросы возникают когда переходишь с мс платформы. На Java дикий зоопарк технологий, фремворков и тд, в которых черт ногу сломит. Собсна и вопрос, что из этого бардака сейчас используется, а что устарело и тд.
Вы можете опираясь на свой опыт высказать мнение относительно этого, что возможно поможет сконцентрировать усилия на определенном наборе технологий и не распыляться на ненужные/кривый/устаревшие/сырые.
В принципе, подходы Hibernate в любом случае помогут разбираться в том, как делается персистенция и маппинг объектов. Можете учить его, для начала.
Симпатичная вещь — Spring. Поможет разобраться в MVC архитектуре.

Можете использовать Struts + EJB (несмотря на активную критику этих технологий, во многом заслуженную) ты научишься делать многие вещи эффективно и просто.
...
Рейтинг: 0 / 0
.Net -> Java
    #34751252
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AnarionЗная крепко основы и понимая как все это работает на уровне аппсервера, любой фреймворк осваивается в среднем за неделю. Меня очень умиляют люди, которые делают красивости на JSF, творят вебдваноль, но не знают, куда деплоятся классы в томкате.
+1
Ну, не за неделю, но за месяц — вполне.
Внутри всё основано на стандартных спецификациях J2EE.
...
Рейтинг: 0 / 0
.Net -> Java
    #34751253
.Net -&gt; Java
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хрюхрюшкин. .Net -> Java
ejb были как пример. Вопросы возникают когда переходишь с мс платформы. На Java дикий зоопарк технологий, фремворков и тд, в которых черт ногу сломит. Собсна и вопрос, что из этого бардака сейчас используется, а что устарело и тд.
Вы можете опираясь на свой опыт высказать мнение относительно этого, что возможно поможет сконцентрировать усилия на определенном наборе технологий и не распыляться на ненужные/кривый/устаревшие/сырые.
В принципе, подходы Hibernate в любом случае помогут разбираться в том, как делается персистенция и маппинг объектов. Можете учить его, для начала.
Симпатичная вещь — Spring. Поможет разобраться в MVC архитектуре.

Можете использовать Struts + EJB (несмотря на активную критику этих технологий, во многом заслуженную) ты научишься делать многие вещи эффективно и просто.

Спасибо большое =)
...
Рейтинг: 0 / 0
.Net -> Java
    #34751604
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хрюхрюшкин. .Net -> JavaТ.е на сколько я знаю ejb до 3 версии лучше было не трогать. А сейчас? Что по orm можете посоветовать?
Так может считать лишь дремучий человек, начитавшийся тявкания в форумах.

Я дремучий челавег, нинавидящий xdoclet согласен с тем что ejb2 это издевательство какое-то.

По существу ветки сформулировать ответ как-то трудно.

ORM он и есть орм JPA Hibernate и всё остальное, кому ORM тяжеловат (функционально, а не ментально) берут генерялку SQL iBATIS. голый JDBC используется довольно редко, хотя в последних версиях там появились DataSetы (отзывов не встречал). Реализации ActiveRecord (как в Ruby например) не припоминаю.
В отличии от .Netа транзакциями модно управлять декларативно: ejb, Spring. это работает и давно. (+1 старым ejb, но боюсь только один). Spring - придумали тогда когда ejb окончательно достали одного парня. начиналось это с Dependency Inection и AOP, в итоге получилась кучка клёвых библиотечек..
Web. тут всё гораздо обширнее. внизу Tomcat JavaBean JSP (прямые аналоги IIS и ASP), из этого и нетолько создана куча всяких фрэймворков. самый самый конечно Struts - action-based, тупой и беспощадный. к сожалению морально устарел, вместо него актуальны Spring MVC, Struts 2. противоположный лагерь component-based frameworks (похоже на ASP.NET) JSF , Wicket, Shale, Tapestry, WebWork, Seam.
В вместо JSP (которые имхо не сахар) модно Freemarker, Velocity, Facelets. JFS в исходном виде к сожалению не удобоварим и больше используется другими движками как база.
Ещё отличия организационные. Есть куча вендоров и понятие спецификации открытого сорца и халявы.

Это мой взгляд на ee и web жабу. Хотелось бы услышать мнение остальных по данному вопросу
____________________
если говорить про .Net то мне там много чего не понравилось. могу высказаться обстоятельно и по делу еслии интересует кого
...
Рейтинг: 0 / 0
.Net -> Java
    #34751825
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
expp
Я дремучий челавег, нинавидящий xdoclet согласен с тем что ejb2 это издевательство какое-то.

Ууууу, как страшно!!!

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
287.
288.
289.
290.
291.
292.
293.
294.
295.
296.
297.
298.
299.
300.
301.
302.
303.
304.
305.
306.
307.
308.
309.
310.
311.
312.
313.
314.
315.
316.
317.
318.
319.
320.
321.
322.
323.
324.
325.
326.
327.
328.
329.
330.
331.
332.
333.
334.
335.
336.
337.
338.
339.
340.
341.
342.
343.
344.
345.
346.
347.
348.
349.
350.
351.
352.
353.
354.
355.
356.
357.
358.
359.
360.
361.
362.
363.
364.
365.
366.
367.
368.
369.
370.
371.
372.
373.
374.
375.
376.
377.
378.
379.
380.
381.
382.
383.
384.
385.
386.
387.
388.
389.
390.
391.
392.
393.
394.
395.
396.
397.
398.
399.
400.
401.
402.
403.
404.
405.
406.
407.
408.
409.
410.
411.
412.
413.
414.
415.
416.
417.
418.
419.
420.
421.
422.
423.
424.
425.
426.
 package  com.forward.ejb.main.parametersLayout;

 import  java.sql.*;
 import  java.util.*;

 import  javax.ejb.*;

 import  com.forward.db.cover.*;
 import  com.forward.ejb.main.parameters.*;
 import  com.forward.system.*;
 import  org.apache.log4j.*;
 import  org.json.*;

/**
 * <p>Title: Forward 1.38 EE 4</p>
 *
 * <p>Description: Биллинговая система</p>
 *
 * <p>Copyright: © 2006—2007, Forward Telecom</p>
 *
 * <p>Company: Forward Telecom</p>
 *
 * <p>
 * Бин для управления разметкой параметров — сохранение и загрузка настроек в БД.
 *
 * <p>
 * <b>Принцип хранения разметки</b>:
 * <ul>
 *   <li>Таблицы могут быть вложены друг в друга (с теоретически неограниченным уровнем вложенности)
 *   <li>У каждой таблицы есть набор ячеек, которых также сохраняются
 *   <li>В каждой ячейке может быть помещена как новая таблица, так и параметр
 *   <li>Для хранения подобных вложенных настроек используется древовидная структура
 *   <li>Для хранение свойств каждого объекта использует текст в JSON-совместимом формате (это
 * позволит гибко менять свойства объектов, не переписывая код)
 * </ul>
 *
 * <p>
 * JSON-совместимый формат — запись вида
 * <pre>
 * {"borders":true,"rows":1,"header":false,"cellAlign":"left","tableWidth":"100%","headerName":"",
 * "columns":2,"tableClass":"table-form"}
 * </pre>
 * Состоит из наборов "код":значение, разделенный запятой
 *
 * <p>
 * <b>Описание формата хранения данных</b>:
 * <table width="100%">
 * <tr bgcolor="#ccccff">
 *   <th>Название поля
 *   <th>Тип
 *   <th>Описание
 *
 * <tr>
 *   <td>ID_OBJECT
 *   <td>varchar(255)
 *   <td>Идентификатор объекта. В зависимости от типа (поле TYPE) имеет следующий вид:
 * <ul>
 *   <li>Для таблицы выглядит как tableid@4151015 (где 4151015 — некий уникальный код)
 *   <li>Для ячейки выглядит как id@5421018 (где 5421018 — некий уникальный код)
 *   <li>Для параметра выглядит как 1015 (1015 — код данного параметра из таблицы <code>CII_SYSOBJECT_PARAM</code>)
 * </ul>
 *
 * <tr bgcolor="#eeeeff">
 *   <td>ID_PARENT
 *   <td>varchar(255)
 *   <td>Ссылка на родительский код (имеет ровно тот же вид, что и ID_OBJECT). Если это запись относится к таблице
 * или параметру, то ссылка может быть только на ячейку; если к ячейку — то ссылка на таблицу, которой принадлежит
 * эта ячейка.
 *
 * <tr>
 *   <td>PROPERTIES
 *   <td>varchar(1024)
 *   <td>Свойства объекта. В этом поле данные записываются в JSON-совместимом формате.
 * В зависимости от типа (поле TYPE) имеют следующие параметры:<br>
 *   <b>Для таблицы:</b>
 *   <table width="100%">
 *   <tr bgcolor="#ccccff">
 *     <th>Название
 *     <th>Описание
 *   <tr>
 *     <td>borders
 *     <td>true или false — наличие или отсутствие границы
 *   <tr bgcolor="#eeeeff">
 *     <td>rows
 *     <td>1 — количество строк
 *   <tr>
 *     <td>columns
 *     <td>2 — количество столбцов
 *   <tr bgcolor="#eeeeff">
 *     <td>header
 *     <td>true или false — наличие или отсутствие заголовка
 *   <tr>
 *     <td>headerName
 *     <td>текст заголовка; если header:false, то значение будет пустым
 *   <tr bgcolor="#eeeeff">
 *     <td>tableWidth
 *     <td>100% или пустое значение — максимальная или минимальная ширина
 *   <tr>
 *     <td>tableClass
 *     <td>CSS-класс отображения, по-умолчанию имеет значение table-form
 *   </table>
 *   <br>
 *   <b>Для ячейки:</b>
 *   <table width="100%">
 *   <tr bgcolor="#ccccff">
 *     <th>Название
 *     <th>Описание
 *   <tr>
 *     <td>align
 *     <td>center, left или right — выравнивание данных в ячейке по-центру, по левому или по правому краю
 *   </table>
 *   <br>
 *   <b>Для параметра:</b>
 *   <table width="100%">
 *   <tr bgcolor="#ccccff">
 *     <th>Название
 *     <th>Описание
 *   <tr>
 *     <td>styleClass
 *     <td>CSS-стиль отображения, по-умолчанию пуст
 *   <tr bgcolor="#eeeeff">
 *     <td>styleType
 *     <td>S, L или N — стиль отображения (Раздельно, В одной строке слитно, В одной строке c переносом)
 *   </table>
 *
 * <tr bgcolor="#eeeeff">
 *   <td>ID_SYSOBJECT
 *   <td>numeric(10)
 *   <td>Код sysobject — ссылка на системный объект, настройки которого сохранены в строке
 *
 * <tr>
 *   <td>TYPE
 *   <td>char
 *   <td>Тип сохраняемой в строке сущности. T, C, P — таблица, ячейка или параметр.
 *
 * <tr bgcolor="#eeeeff">
 *   <td>N_ORDER
 *   <td>numeric(10)
 *   <td>Порядковый номер в списке отображения одного уровня
 *
 * </table>
 *
 * @author raidan
 * @version 1.0
 */
 public   class  ParametersLayoutBean  implements  SessionBean
{

     private  Category cat = WU.getEJBLogger();

     private  Connection conn =  null ;

    /**
     * Конструктор по-умолчанию
     */
     public  ParametersLayoutBean ()
    {

    }

    /**
     * Конструктор для локальных вызовов с передачей внутрь <code>Connection</code>
     *
     * @param conn Connection
     */
     public  ParametersLayoutBean (Connection conn)
    {
         this .conn = conn;
    }

    SessionContext sessionContext;
     public   void  ejbCreate ()
             throws  CreateException
    {
    }

     public   void  ejbRemove ()
    {
    }

     public   void  ejbActivate ()
    {
    }

     public   void  ejbPassivate ()
    {
    }


     public   void  setSessionContext (SessionContext sessionContext)
    {
         this .sessionContext = sessionContext;
    }

    // Извлекает строку настроек из БД
     private  ParamLayoutDO fetchRow (ResultSet rs)
             throws  SQLException, JSONException
    {
        ParamLayoutDO data =  new  ParamLayoutDO();
        data.setId_sysobject(rs.getString("ID_SYSOBJECT"));
        data.setId(rs.getString("ID_OBJECT"));
        data.setProperties(rs.getString("PROPERTIES"));
        data.setId_parent(rs.getString("ID_PARENT"));
        data.setType(rs.getString("TYPE"));
        data.setOrder(rs.getString("N_ORDER"));

        JSONObject json =  new  JSONObject(data.getProperties());
        json.put("id", data.getId());
        json.put("parentId", data.getId_parent());
        data.setProperties(json.toString());

         return  data;
    }

    // Вызывается при сохранении
    // Управляет наличием параметра parentId в наборе JSON
    // Если parentId задан (это таблица), то подставляем это значение в отдельное поле ParamLayoutDO
     private  ParamLayoutDO processParamByJSON (ParamLayoutDO data)
             throws  JSONException
    {
        JSONObject json =  new  JSONObject(data.getProperties());
        data.setId(json.getString("id"));
        json.remove("id");
         if  (!json.isNull("parentId")) {
            data.setId_parent(json.getString("parentId"));
             if  (data.getId_parent().toLowerCase().equals("motherplace")) {
                data.setId_parent( null );
            }
            json.remove("parentId");
        }
        data.setProperties(json.toString());
         return  data;
    }

    /**
     * Обертка для метода. Загружает разметку без установки значений в параметры sysobject.
     *
     * @param data SystemObjectDO
     * @return SystemObjectDO
     */
     public  SystemObjectDO loadLayout (SystemObjectDO data)
    {
         return  loadLayout(data, false);
    }

    /**
     * Загружает настройки разметки для системного объекта. В <code>data</code> уже должен быть
     * загруженный sysobject.
     *
     * @param data SystemObjectDO
     * @param fillParameters если true, то в каждый параметр sysobject, если для него задана разметка?
     * загружает настройки рендеринга этого параметра; если false — просто загружает настройки
     * @return SystemObjectDO
     */
     public  SystemObjectDO loadLayout (SystemObjectDO data,  boolean  fillParameters)
    {

        Collection result =  new  ArrayList();

         if  (cat.isDebugEnabled()) {
            cat.debug("loading layout for " + data.getId());
        }
         try  {
            DBQuery query =  new  DBQuery(conn, true);
             try  {

                query.prepare(
                        "select ID_SYSOBJECT, ID_OBJECT, ID_PARENT, PROPERTIES, N_ORDER, TYPE " +
                        "from CII_SYSOBJECT_LAYOUT where TYPE = ? order by N_ORDER");
                query.addString( Const .SYSTEM_OBJECTS.LAYOUT_TYPE_CELL);

                // Загружаем список всех ячеек всех таблиц
                ResultSet rs = query.executeQuery();
                Map cellMap =  new  HashMap();
                 while  (rs.next()) {
                    ParamLayoutDO layout = fetchRow(rs);
                    Collection list = (Collection) cellMap.get(layout.getId_parent());
                     if  (list ==  null ) {
                        list =  new  ArrayList();
                        cellMap.put(layout.getId_parent(), list);
                    }
                    list.add(layout);
                }

                // Создаем кэш параметров
                Map parametersMap =  new  HashMap();
                 if  (fillParameters) {
                     for  (Iterator iter = data.getParameters().iterator(); iter.hasNext(); ) {
                        SystemParameterDO param = (SystemParameterDO) iter.next();
                        parametersMap.put(param.getId(), param);
                    }
                }

                // Загружаем все настройки кроме ячеек
                query.prepare(
                        "select ID_SYSOBJECT, ID_OBJECT, ID_PARENT, PROPERTIES, N_ORDER, TYPE " +
                        " from CII_SYSOBJECT_LAYOUT where ID_SYSOBJECT = ? and TYPE <> ? order by TYPE, N_ORDER");
                query.addLongM(data.getId());
                query.addString( Const .SYSTEM_OBJECTS.LAYOUT_TYPE_CELL);
                rs = query.executeQuery();
                 while  (rs.next()) {
                    ParamLayoutDO layout = fetchRow(rs);
                    // Если это таблица — находим ячейки
                     if  (layout.getType().equals( Const .SYSTEM_OBJECTS.LAYOUT_TYPE_TABLE)) {
                        Collection list = (Collection) cellMap.get(layout.getId());
                         if  (list !=  null ) {
                            layout.setCells(list);
                        }
                        data.getLayouts().add(layout);
                    }  else  {
                        // Если задано заполнение параметров — подставляем загруженные properties
                         if  (fillParameters) {
                            SystemParameterDO param = (SystemParameterDO) parametersMap.get(layout.
                                                                                            getId());
                             if  (param !=  null ) {
                                param.setLayoutProperties(layout.getProperties());
                            }
                        }  else  {
                            data.getLayouts().add(layout);
                        }
                    }
                }
                 if  (cat.isDebugEnabled()) {
                    cat.debug("Extracted " + result.size() + " records in layout");
                }
            }  finally  {
                query.close();
            }
        }  catch  (Exception sql) {
             throw   new  EJBException(sql);
        }
         return  data;
    }

    /**
     * Сохраняем разметку параметров. Вся старая разметка удаляется, новая вставляется.
     *
     * @param data SystemObjectDO
     */
     public   void  saveLayout (SystemObjectDO data)
    {

         if  (cat.isDebugEnabled()) {
            cat.debug("saving layout for " + data.getId());
        }
         try  {
            DBQuery query =  new  DBQuery(conn, true);
             try  {
                query.prepare("delete from CII_SYSOBJECT_LAYOUT where ID_SYSOBJECT = ?");
                query.addLongM(data.getId());
                query.executeUpdate();

                query.prepare(
                        "insert into CII_SYSOBJECT_LAYOUT (ID_SYSOBJECT, ID_OBJECT, ID_PARENT, PROPERTIES, N_ORDER, TYPE)" +
                        "values (?, ?, ?, ?, ?, ?)");

                query.setLongM( 1 , data.getId());

                 for  (Iterator iter = data.getLayouts().iterator(); iter.hasNext(); ) {
                    ParamLayoutDO param = processParamByJSON( (ParamLayoutDO) iter.next());
                     if  (cat.isDebugEnabled()) {
                        cat.debug("saving parameter " + param);
                    }
                    query.setString( 2 , param.getId());
                    query.setString( 3 , param.getId_parent());
                    query.setString( 4 , param.getProperties());
                    query.setInt( 5 , param.getOrder());
                    query.setString( 6 , param.getType());
                    query.executeUpdate();

                     if  (param.getCells().size() >  0 ) {
                         for  (Iterator cells = param.getCells().iterator(); cells.hasNext(); ) {
                            ParamLayoutDO cell = processParamByJSON( (ParamLayoutDO) cells.next());

                            query.setString( 2 , cell.getId());
                            query.setString( 3 , param.getId());
                            query.setString( 4 , cell.getProperties());
                            query.setInt( 5 , cell.getOrder());
                            query.setString( 6 , cell.getType());
                            query.executeUpdate();
                        }
                    }
                }

            }  finally  {
                query.close();
            }
        }  catch  (Exception sql) {
             throw   new  EJBException(sql);
        }
    }

    /**
     * Удаляет всю разметку, относящиеся к текущему sysobject. Вызывается при удалении
     * системного объекта.
     *
     * @param id_sysobject Long
     */
     public   void  removeLayout ( Long  id_sysobject)
    {
         try  {
            DBQuery query =  new  DBQuery(conn, true);
             try  {

                 if  (cat.isDebugEnabled()) {
                    cat.debug(" Deleting layout for system object " + id_sysobject);
                }

                 int  rows =  0 ;

                query.prepare("delete from CII_SYSOBJECT_LAYOUT where ID_SYSOBJECT = ?");
                query.addLongM(id_sysobject);
                rows = query.executeUpdate();

                 if  (cat.isDebugEnabled()) {
                    cat.debug(" Removing CII_SYSOBJECT_LAYOUT : " + rows + " rows");
                }
            }  finally  {
                query.close();
            }
        }  catch  (SQLException sql) {
             throw   new  EJBException(sql);
        }
    }
}


Страшный EJB2 бин, который я написал руками. Всё остальное среда сделала автоматически. Чуть-чуть потыркал руками, включая local/remote интерфейсы для нескольких методов.
...
Рейтинг: 0 / 0
.Net -> Java
    #34752009
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хрюхрюшкин.Страшный EJB2 бин, который я написал руками

+1

и так n-раз по нескольку раз, плюс debug и bugfixing.

код просто гениален. (без тени стёба)
но я такого ужо наившись
...
Рейтинг: 0 / 0
.Net -> Java
    #34752025
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
expp
+1

и так n-раз по нескольку раз, плюс debug и bugfixing.

код просто гениален. (без тени стёба)
но я такого ужо наившись
Вот этот конкретный код — это один кусок адского механизма для окучивания всех без исключений справочников, поисковых интерфейсов и параметров всех сущностей системы, отвечающий за расположение элементов на форме.
К щастью, больше его писать не нужно.
Да, в рядом лежащих бинах опять делаем запрос к очередной таблице, опять получаем resultSet, опять накачиваем данные из resultSet'а в объект...

К сожалению, использовать доступ к таблицам путем прямого маппинга (Hibernate/Spring/Toplink) не представляется возможным.
...
Рейтинг: 0 / 0
.Net -> Java
    #34752038
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
померялись письками да и будет
...
Рейтинг: 0 / 0
.Net -> Java
    #34752039
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Буагагагаа
...
Рейтинг: 0 / 0
.Net -> Java
    #34752052
Фотография grexhide
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хрюхрюшкин.Буагагагаа

"Хоть ты мне друг, но истина дороже" vs "москаль мэни нэ брат"
-
http://denvor.ru/content/humor/ruscode.htm

----

P.S. Это я так - рассматривая код (в части JashMap).

P.P.S. Ужо на какие непотебства народ идёт, не имея внятного редактору междумордий.
Тут покупкой коровы и велосипада - не отделаешься.
...
Рейтинг: 0 / 0
.Net -> Java
    #34752056
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хрюхрюшкин.К сожалению, использовать доступ к таблицам путем прямого маппинга (Hibernate/Spring/Toplink) не представляется возможным.

много раз такое слышал. и вижу. расскажите плиз в чём причина?
...
Рейтинг: 0 / 0
.Net -> Java
    #34752061
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grexhide
P.S. Это я так - рассматривая код (в части JashMap).

P.P.S. Ужо на какие непотебства народ идёт, не имея внятного редактору междумордий.
Тут покупкой коровы и велосипада - не отделаешься.
Ну что ты рассматриваешь, болезный?
На основе чего ты делаешь далекоидущие выводы о моей некомпетентности? На основе того, что я использую HashMap? А ты знаешь, какое количество элементов я этим кодом обрабатываю? А ты знаешь, что такое JSON?
...
Рейтинг: 0 / 0
.Net -> Java
    #34752069
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
expp Хрюхрюшкин.К сожалению, использовать доступ к таблицам путем прямого маппинга (Hibernate/Spring/Toplink) не представляется возможным.

много раз такое слышал. и вижу. расскажите плиз в чём причина?
Ну, так уж получается :)
Система слишком итеративно развивается.
Многие вещи всё-равно приходится делать на чистом JDBC (ради скорости). Заморачиваться с маппингом бессмысленно.
...
Рейтинг: 0 / 0
.Net -> Java
    #34752070
Фотография grexhide
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хрюхрюшкин.

Я ж говорю - попробуй купить велосипед. (Раз свой то не или выходит, или удовольствия не доставляет... по причине отсутствия удобного интерфейсу видать... седла то есть)
...
Рейтинг: 0 / 0
.Net -> Java
    #34752072
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grexhide
Я ж говорю - попробуй купить велосипед. (Раз свой то не или выходит, или удовольствия не доставляет... по причине отсутствия удобного интерфейсу видать... седла то есть)
Ну почему же так сразу. У меня лично вполне выходит. Решения о создании велосипедов принимаю не я. Я лишь воплощаю их в жизнь. Это даже интересно — создавать свое говно, а не копаться в чужом.
...
Рейтинг: 0 / 0
.Net -> Java
    #34752820
Telepat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Щитъ .Net -> JavaНичего плохого в сторону МС. На десктопах вне конкуренции. Для малого и среднего бизнеса тож хорошо. Но по настоящему крупные системы - не МС. А они то как раз и интересуют.Да и по настоящему крупные системы обслуживают тоже мальчики на побегушках. Счас появилась куча вакансий на Java, потому что запад стал аутсорсить в Индию и Рашку. Как только доучатся достаточно прогеров под Javу, зарплаты упадут до уровней php-сайто-ваятелей.

Я вообще жалею что учился на инженера и прогера. Надо было на хирурга или стоматолога учиться. У них зарплаты не падают, потому что неумытых гастарбайтеров во врачебное дело не пускают.

Золотые слова "неумытых гастарбайтеров во врачебное дело не пускают". Тут какой-то товарищ вон аж за месяц стал сеньером. Прикиньте кем он будет через год ?!!!
2 автор: Мне абсолютно не понятно, почему вы недоучив .NET пытаетесь перескочить на Java. Если ты действительно хороший спец по C#, то нет никаких причин переходить на Java. Это как стать хирургом, а потом переучиваться на пилота. Чушь.
И кто вам сказал что .NET не подходит для крупных проектов ? Откуда такие выводы ?

По моему мнению: Java - это винигрет из спецификаций. .NET - стройно выстороенная платформа. Посмотрите на темпы развития .NET'а: WPF, WCF, Framework 3/3.5, сюда отнесу и развитие SQL Server 2008 (Который тоже разрабатывается мелкомягкими и всяко будет "подточен" под .NET), MS VS 2008, проект Mono и т.д. А что Жава ?!!! по сути дела ничего нового. просто тупо добавляют в свой винигрет новые ингридиенты-спецификации и всё.
...
Рейтинг: 0 / 0
.Net -> Java
    #34752900
Microsoft must die
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TelepatЗолотые слова "неумытых гастарбайтеров во врачебное дело не пускают". Тут какой-то товарищ вон аж за месяц стал сеньером. Где это?Прикиньте кем он будет через год ?!!! Кем-кем, продавцом мобилок, кем же еще?По моему мнению: Java - это винигрет из спецификаций. .NET - стройно выстороенная платформа. Посмотрите на темпы развития .NET'а: WPF, WCF, Framework 3/3.5, сюда отнесу и развитие SQL Server 2008 (Который тоже разрабатывается мелкомягкими и всяко будет "подточен" под .NET), MS VS 2008, проект Mono и т.д. А что Жава ?!!! по сути дела ничего нового. просто тупо добавляют в свой винигрет новые ингридиенты-спецификации и всё.А что по сути дела новое в технологиях Microsoft? Что будет нового в SQL 2008? Чем реально сейчас прогеры пользуются из WPF, Framework 3/3.5? Где сайты, использующие это "новое"? Почему sql.ru не перепрыгнул на .NET Framework 3? Почему rsdn.ru до сих пор стоит на хламе ASP? Одни вопросы.А что Жава ?!!! по сути дела ничего нового.Принеси песочку. А что можно нового-то придумать под солнцем, родной? Что _нового_ создает Microsoft, если они просто тупо перетаскивают отшлифованные в java наработки, ака NHibernate, NUnit etc? LINQ? Так под жабу просто нет "единого" ORM-мапера, каждый выбирает себе платный-бесплатный, быстрый-навороченный, вариантов LINQ много, а LINQ претендует опять быть "молотком для всех гвоздей", и опять у LINQ это не получится, опять кодемонки не почитав, зачем нужон LINQ, станут пихать его во все щели, проги будут тормозить и LINQ охают последними словами.

.NET'а: WPF, WCF, Framework 3/3.5, сюда отнесу и развитие SQL Server 2008 , MS VS 2008По-моему как раз это винегрет из разрозненных спецификаций, а Mono вообще никаким боком сюда не относится, потому что как раз доказывает, что спецификации микрософта никому кроме микрософта реализовать не позволено

Microsoft must die
...
Рейтинг: 0 / 0
.Net -> Java
    #34752916
Фотография grexhide
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Microsoft must dieА что по сути дела новое в технологиях Microsoft?
Нового в их технологиях следующее:

а) все в одном флаконе и.. с довольно приличной документаций. А т.к. 90% т.н. "прогов" (кодемонков) - не умеют пользоваться документацией, не говоря уже о вдумчивых селекциях технологий - то тут у Microsoft огромное преимущество

б) PR. Тупой и беспощадный PR. Сходи в любой ВУЗ, на IT специальность (недобитки оных), и поинтересуйся мнением сту(пи)дентов. Будешь приятно удивлен тенденцией

в) программы сертификаций, обучения, и даже уровни тех же студенческих олимпиад

г) и так далее, и тому подобное. Microsoft, как всегда, возьмет не качеством, а количеством, ей это - не в первой

д) особо, правда, отчаиваться смысла нет, т.к. дела на северном уровне - у них оставляют до сих пор желать лучшего. Тем не менее, ресурсов и возможности их координации у них, как ни странно, куда поболее, чем у JCP

---

В общем будет, конечно, весело (ну или, по меньшей мере - не скучно).
...
Рейтинг: 0 / 0
.Net -> Java
    #34752939
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторСейчас работаю прогом на .Net. Но есть огромное желание перелезть на J2EE.

Я-бы посоветовал остаться хорошим прогером под .Net.
...
Рейтинг: 0 / 0
51 сообщений из 51, показаны все 3 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / .Net -> Java
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]