LINUX.ORG.RU
ФорумTalks

Хочу изучать Java


0

2

Добрый вечер.

Тема не для холивара. С криками «Java не нужна» сюда, если только у вас свирбит в жопе и всё же хочется это крикнуть.

Подробнее. Хочу разрабатывать для web. Что для этого нужно? В чём разница Java SE, ME, EE? Что учить, чем отличается? Какие фреймворки есть для разработки web-приложений.

И да… ссылки на быструю вводную документацию, где можно читать и параллельно уже ваять. А–ля Jobeet у symfony framework'a.

★★★

EE - ынтырпрайзе SE - хом юзер

nerfur ★★★
()

нахрена я все это сюда пишу не понимаю, а вообще автор иди в гугль

nerfur ★★★
()

попробуй playframework для начала (пройди их вступительный курс, сделай тестовый бложик, заодно настроишь свой энвайромент). тут будут кричать, что это и не джава вовсе - но на самом деле после этого вступительного курса многое укладывается в голове и программировать становится легче (я полностью пересмотрел после этого своё приложение на php и допилил его в 2 раза быстрей после прохождения курса по play).

ArtemZ
()

Java SE — это база, «engine». Всё остальное — надстройки, «обрезки» и библиотеки.

Хочу разрабатывать для web. Что для этого нужно?

И да… ссылки на быструю вводную документацию, где можно читать и параллельно уже ваять.

Введение в JavaServer Faces 1.2

iZEN ★★★★★
()

>Хочу разрабатывать для web

Дык тебе JavaScript надо.

Siado ★★★★★
()
Ответ на: комментарий от Droid790

>лучше rails какой-нибудь.
чем лучше? тормознутостью (порой даже по сравнению с пхп), непопулярностью (и как результат - слабой обвязкой либами?) или ещё чем-то?

ArtemZ
()
Ответ на: комментарий от Droid790

>Учить groovy без знания всей java в основе абсолютно бесполезно, мне кажется.

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

Siado ★★★★★
()
Ответ на: комментарий от Siado

Питон? Глючная поделка для мазахистов-любителей расставлять отступы, вечные проблемы при работе с памятью, переполнения стеков и прочии радости. Из-за глюков и тормознутости yum'a под CentOS пришлось часть серверов переводить на Debian

ArtemZ
()
Ответ на: комментарий от Droid790

> А какая цель? Стать JEE-разработчиком? Или просто php надоел? Тогда лучше rails какой-нибудь.

1. Ты угадал, PHP надоел.
2. В будущем хочу переквалифицироваться под андроид разработчика.

VirRaa ★★★
() автор топика

хотя бы минимально java уже знаете?
если да, то почитайте getting started with grails для понимания работы фреймворков, а потом уже можно будет выбирать фреймворки и усиленно изучать

thevery ★★★★
()

> Тема не для холивара. С криками «Java не нужна» сюда

Сам ведь все знаешь :) Подведем итог:
1) жаба не нужна (читай новости за 2010 год на лоре с тегом «oracle»)
2) изучать следует свободные языки:
- Python
- Ruby
- Perl

Nordman
()
Ответ на: комментарий от thevery

почитайте getting started with grails для понимания работы фреймворков, а потом уже можно будет выбирать фреймворки и усиленно изучать

Зачем нужен grails для java-разработчиков и вся эта околоrubyшушера, не представляю! Проясни, а?

iZEN ★★★★★
()
Ответ на: комментарий от ArtemZ

>Из-за глюков и тормознутости yum'a под CentOS

Согласен, yum то еще лютое тормозилово. Но это какбы проблема всяких центосов, федор и прочих рпм-дистров, но не питона. Для сравнения посмотри как прекрасно работает emerge.
А для сайтов java зачем? Генерить текст чтоли?

Siado ★★★★★
()
Ответ на: комментарий от thevery

> 2. учите core java (SE), а потому сразу переходите на андроид - там, увы, дофига тонкостей своеобразных

С чего начать учить посоветуете?

VirRaa ★★★
() автор топика
Ответ на: комментарий от VirRaa

В будущем хочу переквалифицироваться под андроид разработчика.

Сразу найди книжку в PDF: «Pro Android 2» Sayed Y. Hashimi, Satya Komatineni, and Dave MacLean, изд. Apress, 2010г. И читай.

iZEN ★★★★★
()

Spring - лучше фреймворка не встречал

iceberk
()
Ответ на: комментарий от Siado

> А для сайтов java зачем? Генерить текст чтоли?

Не столько для сайтов, сколько для андроида. Просто парадигмы построения web-приложения близки мне вот уже как 7-й год. Вот и решил, что легче всё начать изучать язык в той сфере, где я себя чувствую как рыба в воде.

VirRaa ★★★
() автор топика
Ответ на: комментарий от VirRaa

Моё личное мнение, заменить pure java php не получится, java - это для больших, серьёзных проектов, а блог или форум клепать с ума сойдешь же(хотя надо посмотреть этот playframework), поэтому если собрался писать для Android, то учи SE уж по-любому.

Droid790
()
Ответ на: комментарий от Siado

для хоумпейджей есть похапе, я не спорю. для создания серьёзных, безопасных и быстрых сервисов нужен серьёзный язык.

ArtemZ
()
Ответ на: комментарий от VirRaa

Ну так да )
Как любит говорить один хороший человек - «самый быстрый путь тот - который знаешь»

Siado ★★★★★
()
Ответ на: комментарий от bsdfun

>> Perl

Он же RIP вроде?


да хрен его знает. я тоже не фанат перла. есть просто знакомый хакер-си'шник, он прям тащится от перла - все на нем пишет.

Nordman
()
Ответ на: комментарий от ArtemZ

>для создания серьёзных, безопасных и быстрых

Только, если это java-аплеты.

Siado ★★★★★
()
Ответ на: комментарий от Siado

Да таких клонов разных поделок, только на Java - горы. Вон Apache Click - вылитый ASP.NET

vertexua ★★★★★
()
Ответ на: комментарий от iZEN

>Зачем нужен grails для java-разработчиков и вся эта околоrubyшушера, не представляю! Проясни, а?

full-stack web-фреймворк, построенный на готовых проверенных spring/hibernate/sitemesh/etc и который реально можно начать понимать использовать за пару часов - что ещё можно пожелать для обучения с нуля?

btw называть g/g «околоrubyшушера»'ой всё-таки некорректно, это ж вам не jython какой-нибудь

thevery ★★★★
()
Ответ на: комментарий от VirRaa

SE или android? по андроиду плюсую «Pro Android 2», очень неплохая книга, «Professional Android 2» от Reto Meier лично мне не понравилась, хотя многие считают наоборот.

thevery ★★★★
()

1. Обзорный мануал по жаве.
2. Полный мануал с разжевыванием деталей.
3. Можно пролистать книжку с реализацией стандартных паттернов, если знаешь что это, и понимаешь зачем это нужно.
4. Очень желательно прочитать про concurrency. Если с английским всё ок, то «Concurrency in Practice».

И да… ссылки на быструю вводную документацию, где можно читать и параллельно уже ваять. А–ля Jobeet у symfony framework'a.


попробуй вначале пописать десктопные программки, чтобы работали. Когда это сделаешь, путь такой: сайт на основе servlets, Ant (собираешь тот же сайт, но уже системой сборки), JDBC (пара хэлловорлдов чтобы понять как это работает), ORM например Hibernate или MyBatis (это поможет выкинуть чистый SQL), Maven (что-то типа менеджера пакетов), Spring (долго, сложно, но полезно - там много проектов, как только вкуришь что там есть, поймешь что нужно). К этому моменту ты будешь знать уже достаточно, чтобы самому выбирать что дальше нужно изучать.

И да, старайся делать не php-стайл «один файл - одна веб-страничка», а что-нибудь риалтаймовое, работающее отдельно от html-представления. Например база данных, которая постоянно что-нибудь вычисляет, а через веб-интерфейс можно смотреть текущее состояние.

stevejobs ★★★★☆
()
Ответ на: комментарий от Siado

Язык не дает никаких преимуществ ни в чем, все уже давно реализовано в том же питоне.

смысл не в синтаксических плюшках, а в расширении возможностей самой технологи.

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

>php-стайл «один файл - одна веб-страничка»
это перестало быть php-стайлом c приходом ООП в PHP. Это быдлокод-стайл.

ArtemZ
()
Ответ на: комментарий от thevery

> после таких советов никакого детектора неадекватности даже не нужно

это ты про себя что ли? по описанию уж очень похоже.

Nordman
()
Ответ на: комментарий от ArtemZ

> несвободных языков небывает, не нужно выдумывать. бывают проприетарные компиляторы. у джавы есть openjdk

Почему же у меня интернет-банк (iBank2 от компании Bifit) работает только под проприетарной Oracle/Sun Java и не работает под открытой OpenJDK? Так что не надо мне тут зачесывать про «свободную» джаву.

Nordman
()
Ответ на: комментарий от Nordman

при желании можно и для си сдеать компилятор, байткод на выходе которого не будет запускаться на свободных ОС, например. Дальше что?

ArtemZ
()
Ответ на: комментарий от thevery

что ещё можно пожелать для обучения с нуля?

Прежде всего, лучше начать со стандартных технологий, входящих в Java EE. А если чего-то будет не хватать, посмотреть на другие каркасы.

iZEN ★★★★★
()
Ответ на: комментарий от ArtemZ

Дальше то что спецификации языка отличаются для свободной и закрытой версии. А это значит что это почти разные языки.

Кроме того, Python открыто развивается с 1990 года.
Ruby - с 1995 года.
А Java только с 2008 года:

Первоначально процесс принятия исправлений извне был довольно медленный[14], и изменения в кодах до сентябре 2008 вносились только непосредственно инженерами Sun[15]. Процесс улучшился начиная с 2010, небольшие патчи и изменения от версии OpenJDK7 до OpenJDK6 могут быть приняты за несколько часов вместо нескольких дней.[16]

11 октября 2010 IBM и Oracle объявили о совместном сотрудничестве в дальнейшей разработке OpenJDK.[17]

Пруфы:
http://ru.wikipedia.org/wiki/OpenJDK
http://ru.wikipedia.org/wiki/Python
http://ru.wikipedia.org/wiki/Ruby

Я например очень настороженно отношусь к спецификациям, курируемым одной компанией, а не международным сообществом. А java и ooxml - как раз такие спецификации.

P.S. Знаю что ЛОР написан на Яве, и я тут не собираюсь щас ссать против ветра. Чувак спросил про языки - я ответил. Вот и все.

Nordman
()
Ответ на: комментарий от Nordman

Компилируйте программы открытым компилятором и будет вам счастье. У мелкософта тоже свой компилятор для си есть и тоже там почти другая спецификация, тоже компилятор закрытый и все дела. Всё! Запретить си! Он больше не православен!
Короче не выдумывайте того, чего нет. Если кто-то там написал что-то и скопилировал закрытым компилятором, накладывающим ограничения - это исключительно его вина, язык тут не при чём.

ArtemZ
()
Ответ на: комментарий от ArtemZ

> Если кто-то там написал что-то и скопилировал закрытым компилятором, накладывающим ограничения - это исключительно его вина, язык тут не при чём.

Вот с этим согласен - Bifit'у надо оторвать яйца! )) А то достало уже постоянно докачивать SunJava..

p.s. Пусть OpenJDK живет, я не против ;-)

Nordman
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.