А вообще вспоминаю все свои попытки прохавать J2xx технологию:
1. Первое что попробовал, это было давно но все же: J2ME. Написал простенький pacman для своей моторолы. Удовольствия получил мало, после опыта с DirectX'ами, OpenGL'ами и т.д. Затем прикола ради реализовал то же на WinMobile — конечно тоже без DirectX но на порядок приятнее разработка, отладка и утановка на девайс.
2. Начинался новый проект — десктоп приложение. 2 недели убил на изучение разработки сего творения на J2SE. В итоге не всех гуёв мне хватило, куча приколов о которых сейчас не припомню, но осадок остался. Короче, сделали на .NET C# WinForms и забыли.
3. Вот сейчас решил прохавать J2EE написать простенький веб-сервис. В общем.... опять негативные эмоции, по сравнению как это делается в .NET.
Подозреваю что у меня моск не поддерживает jvm
Начните с фундамента (сделайте небольшие программки): Servlet, JDBC, EJB 3, Log4j или Commons Logging можно также посмотреть JSP — всё еще популярная тема в западном J2EE
Обязательно гляньте раздел Apache Commons (Apache Jakarta), в частности обратите внимание:
Хотя бы поверхностное знание этих библиотек спасёт от написания велосипедов. Опять же побродите по Apache Jakarta там есть куча интересных вещей от веб-фреймворков до поискового движка на основе Lucene.
Что касается представления, то стандарт это JSF, но честно говоря он сейчас в догоняющих и есть более интересные решения: Tapestry 5 или Wicket
И конечно нужно разобраться, что такое IoC, многие используют Spring, в Tapestry 5 есть собственный IoC, в том числе и с интеграцией в Spring.
И да, чуть не забыл — обязательное понимание Ant и желательно Maven — без этого просто никуда в J2EE с его кучей библиотек и зависимостей между ними в любом мало-мальском проекте.
По контейнеру — популярны Tomcat и Jetty. Tomcat обычно использую на продакшене, а Jetty в повседневной разрабоке и тестировании, плюс просто интегрируется с Maven.
По БД — когда у вас Hibernatе и EhCache в кластере, то в общем то на БД пофиг.
P.S. Прикольно, 4 года назад сам читал тут похожий ответ, когда думал о переходе с php на java, а теперь вот и сам могу
не хуже ответить
Попробую малость реабилитировать
S>1. Первое что попробовал, это было давно но все же: J2ME. Написал простенький pacman для своей моторолы. Удовольствия получил мало, после опыта с DirectX'ами, OpenGL'ами и т.д. Затем прикола ради реализовал то же на WinMobile — конечно тоже без DirectX но на порядок приятнее разработка, отладка и утановка на девайс.
1.1 Важен год, когда ты пробовал. В самом начале (2002-2003 года) SDK действительно были ужасны, у каждого производителя свой, не совместимый с другими, очень мало информации.
1.2 Неудачный выбор устройства. Моторола до сих пор, кажется, какую-то отсебятину делает, заместо унифицированного по интерфейсу вызова эмулятора.
1.3 Сравнение с WM некорректно. J2ME и WM — это разные практически непересекающиеся аппаратные платформы.
Лично мне понравилось рисовать все с нуля. Во-первых, начинаешь понимать, а как устроен ГУИ, во-вторых, очень пригождается математическая и логическая подготовка.
S>2. Начинался новый проект — десктоп приложение. 2 недели убил на изучение разработки сего творения на J2SE. В итоге не всех гуёв мне хватило, куча приколов о которых сейчас не припомню, но осадок остался. Короче, сделали на .NET C# WinForms и забыли.
Десктопные приложения до сих пор слабое место явы, тут сказать нечего. Одни, блин, стратегии изменения размеров окна чего стоят.
S>3. Вот сейчас решил прохавать J2EE написать простенький веб-сервис. В общем.... опять негативные эмоции, по сравнению как это делается в .NET.
А тут можно подробнее?
Если все делать самому, то не могу сказать, что там рокет саенс.
Но от самого же Sun есть приблуды для мышеклиательного программирования веб-сервисов. Только они не популярны.
Здравствуйте, Donz, Вы писали:
D>1.1 Важен год, когда ты пробовал. В самом начале (2002-2003 года) SDK действительно были ужасны, у каждого производителя свой, не совместимый с другими, очень мало информации.
D>Десктопные приложения до сих пор слабое место явы, тут сказать нечего. Одни, блин, стратегии изменения размеров окна чего стоят.
D>Но от самого же Sun есть приблуды для мышеклиательного программирования веб-сервисов. Только они не популярны.
Работая с VS я забыл что такое "приблуды", "несовместимость", "мало информации" — все есть в коробке.
Donz, Вы пробовали создать примитивный веб сервис в студии? Весьма приятное занятие.
Здравствуйте, Donz, Вы писали: D>1.3 Сравнение с WM некорректно. J2ME и WM — это разные практически непересекающиеся аппаратные платформы.
Очень кстати корректно когда стоит задача в общем виде: сделать приложение для мобильной платформы, которое будут юзать 25 менеджеров. Платформу и язык разработки выбираешь сам. А теперь угадайте с трех раз какую платформу я выберу, если необходимо взаимодействие с веб-сервисом?
Кстати, написание клиента вебсервиса под WinMobile ничем не отличается от обычного приложения. Разве что WinMobile не все binding'и поддерживает.
Здравствуйте, skodnik, Вы писали:
D>>Но от самого же Sun есть приблуды для мышеклиательного программирования веб-сервисов. Только они не популярны. S>Работая с VS я забыл что такое "приблуды", "несовместимость", "мало информации" — все есть в коробке. S>Donz, Вы пробовали создать примитивный веб сервис в студии? Весьма приятное занятие.
Нет. Но видел как мышекликательно создали веб-сервисный клиент на J2ME в Нетбинсе.
Все визарды и красивые управляторы позволяют быстро сделать типовую задачу. Но если потом потребуется сделать что-то изначально непредусмотренное мастером создания, то все равно придется вникать, как же все устроено. При этом разобраться в автоматически нагенеренном коде и метаданных будет значительно сложнее.
При оценке проекта в один человеко-месяц потратить на изучение основ веб-сервисов и их конкретную реализацию и работу под конкретным сервером пару-тройку дней — это небольшая плата, которая в последующем позволит быстрее решать проблемы, связанные с настройкой и оптимизацией сервера.
Здравствуйте, skodnik, Вы писали:
D>>1.3 Сравнение с WM некорректно. J2ME и WM — это разные практически непересекающиеся аппаратные платформы. S>Очень кстати корректно когда стоит задача в общем виде: сделать приложение для мобильной платформы, которое будут юзать 25 менеджеров.
А если будет стоять задача защищенной коммуникации менеджеров через почту и т.д., тоже будете выбирать между J2ME и готовым решением от Blackberry?
S>Платформу и язык разработки выбираешь сам. А теперь угадайте с трех раз какую платформу я выберу, если необходимо взаимодействие с веб-сервисом?
Ту, под которую уже есть решение. Или в случае его отсутствия, под которую есть знания, опыт и куча изученных или самостоятельно написанных библиотек. Я выберу J2ME, если не требуется писать очень толстого клиента. Пишущий под Visual'ы, очевидно, выберет WM. При этом моя аппаратная часть будет раз в пять дешевле, а само приложение совместимо с гораздо большим количеством аппаратов, в том числе и со многими WM.
S>Работая с VS я забыл что такое "приблуды", "несовместимость", "мало информации" — все есть в коробке. S>Donz, Вы пробовали создать примитивный веб сервис в студии? Весьма приятное занятие.
ну в яве веб сервис я тоже могу создать обычный за 5 минут без мыши ) просто юзай JAX-WS из коробки да и все....все работает...
если взять Apache CXF +Spring будет еще лучше и проще... не вижу проблем с веб сервисами на яве....
Здравствуйте, skodnik, Вы писали:
S>А вообще вспоминаю все свои попытки прохавать J2xx технологию: S>1. Первое что попробовал, это было давно но все же: J2ME. Написал простенький pacman для своей моторолы. Удовольствия получил мало, после опыта с DirectX'ами, OpenGL'ами и т.д. Затем прикола ради реализовал то же на WinMobile — конечно тоже без DirectX но на порядок приятнее разработка, отладка и утановка на девайс. S>2. Начинался новый проект — десктоп приложение. 2 недели убил на изучение разработки сего творения на J2SE. В итоге не всех гуёв мне хватило, куча приколов о которых сейчас не припомню, но осадок остался. Короче, сделали на .NET C# WinForms и забыли. S>3. Вот сейчас решил прохавать J2EE написать простенький веб-сервис. В общем.... опять негативные эмоции, по сравнению как это делается в .NET.
S>Подозреваю что у меня моск не поддерживает jvm
Нет. Просто у тебя мозг заточен на "визуальное программирование мышкой".
Здравствуйте, skodnik, Вы писали:
S>Любопытства ради, что в мире Java используют для написания RIA? S>(Аналог Silverlight+RIA Web-Services)
Прямой аналог Silverlight это JavaFX. Но по объективным причинам используют, естественно, Flex. Ещё интересные решения это GWT и Eclipse RAP.
Здравствуйте, Blazkowicz, Вы писали:
B>Здравствуйте, skodnik, Вы писали:
S>>Любопытства ради, что в мире Java используют для написания RIA? S>>(Аналог Silverlight+RIA Web-Services) B>Прямой аналог Silverlight это JavaFX. Но по объективным причинам используют, естественно, Flex. Ещё интересные решения это GWT и Eclipse RAP.
Объективные причины — это какие?
Мне при освоении Silverlight не потребовалось изучать новый язык, используется старый добрый C# с небольшими ограничениями по использованию библиотек. JavaFX, Flex & GWT — это все такое разное.
Здравствуйте, skodnik, Вы писали:
S>Объективные причины — это какие?
Здраааавствуйте. Количество клиентов, на которых установлен Flash Player.
S>Мне при освоении Silverlight не потребовалось изучать новый язык, используется старый добрый C# с небольшими ограничениями по использованию библиотек. JavaFX, Flex & GWT — это все такое разное.
И что? GWT использует Java синтаксис и API. Садишься и пишешь, изучать кроме процесса сборки особо нечего. Eclipse RAP — та же Java вообще. JavaFX отдельный разговор. Sun сделали на это большую ставку, а прогресса пока не видно. Flex поддерживается как Eclipse-ом, так и InteliJ IDEA. Синтаксис от Java отличается слабо. Разница лишь в API и некотороый скриптовости языка.
Здравствуйте, Blazkowicz, Вы писали:
B>Здравствуйте, skodnik, Вы писали:
S>>Объективные причины — это какие? B>Здраааавствуйте. Количество клиентов, на которых установлен Flash Player.
S>>Мне при освоении Silverlight не потребовалось изучать новый язык, используется старый добрый C# с небольшими ограничениями по использованию библиотек. JavaFX, Flex & GWT — это все такое разное. B>И что? GWT использует Java синтаксис и API. Садишься и пишешь, изучать кроме процесса сборки особо нечего. Eclipse RAP — та же Java вообще. JavaFX отдельный разговор. Sun сделали на это большую ставку, а прогресса пока не видно. Flex поддерживается как Eclipse-ом, так и InteliJ IDEA. Синтаксис от Java отличается слабо. Разница лишь в API и некотороый скриптовости языка.
Я не трогал руками Eclipse RAP, JavaFX и GWT, но вот флешеры которые со мной работают в команде официально называют все продукты Adobe — bug technology. Иногда я развлекаюсь тем, что расстраиваю их показывая небольшие примеры на сильверлайте.
Здравствуйте, skodnik, Вы писали:
S>Я не трогал руками Eclipse RAP, JavaFX и GWT, но вот флешеры которые со мной работают в команде официально называют все продукты Adobe — bug technology. Иногда я развлекаюсь тем, что расстраиваю их показывая небольшие примеры на сильверлайте.
Есть технологии которые удобны разработчикам. Есть технологии, которые актуальны для рынка. Хорошо когда они пересекаются. Можно и апплеты использовать — вся мощь JVM у вас в браузере.
Вот вы на sliverlight уже много проктов сделали для массового пользователя?
Здравствуйте, Blazkowicz, Вы писали:
B>Вот вы на sliverlight уже много проктов сделали для массового пользователя?
Я не делаю проекты для массового пользователя. Тут у меня руки развязаны, если надо всем поставить новый фреймворк AdobeJava.NETSilverlight 25.1 — то он всем будет установлен.
С другой стороны, sliverlight уже не есть проблема для конечного пользователя — ставится автоматически также как и флешплейер.
Здравствуйте, skodnik, Вы писали:
S>С другой стороны, sliverlight уже не есть проблема для конечного пользователя — ставится автоматически также как и флешплейер.
И Java тоже так умеет.
Здравствуйте, Blazkowicz, Вы писали: B>Есть технологии которые удобны разработчикам. Есть технологии, которые актуальны для рынка.
Кстати, хорошо сказано. Я об этом и сам иногда размышляю. Более того, например как можно имея обалденно классные инструменты для разработки так слить WinMobile???? И как у людей из говна получаются конфеты