Приложение на Java. С чего начать?
От: Flier  
Дата: 23.05.07 06:46
Оценка:
У меня такая ситуация получилась. Требуется написать приложение на Java, а я никогда с ним не работал, даже не знаю с чего начать. Среда разработки? Книги? Работа с базами данных на Java? Вообще с чего начать? Очень нужна помощь, к работе нужно приступать немедленно и чесно говоря я пока в растерянности.
Буду благодарен за информацию.
Заранее спасибо всем откликнувшимся.

24.05.07 13:52: Перенесено модератором из 'О работе' — Хитрик Денис
Re: Приложение на Java. С чего начать?
От: Aviator  
Дата: 23.05.07 07:12
Оценка:
Здравствуйте, Flier, Вы писали:


F>У меня такая ситуация получилась. Требуется написать приложение на Java, а я никогда с ним не работал, даже не знаю с чего начать. Среда разработки? Книги? Работа с базами данных на Java? Вообще с чего начать? Очень нужна помощь, к работе нужно приступать немедленно и чесно говоря я пока в растерянности.

F>Буду благодарен за информацию.
F>Заранее спасибо всем откликнувшимся.
Опыт программирования какой?
Re[2]: Приложение на Java. С чего начать?
От: Flier  
Дата: 23.05.07 07:26
Оценка:
Здравствуйте, Aviator, Вы писали:

A>Здравствуйте, Flier, Вы писали:



A>Опыт программирования какой?


Если в смысле опыта работы, то недавно окончил универ (Работаю 2,5 месяца всего).
На работе выпустили 2 инсталляции (среда разработки Builder C++)
Остальные программы (и языки соответственно) с которыми работал, думаю, нет смысла перечислять.
Re: Приложение на Java. С чего начать?
От: Александр Каширин  
Дата: 23.05.07 07:31
Оценка:
Здравствуйте, Flier, Вы писали:


F>У меня такая ситуация получилась. Требуется написать приложение на Java, а я никогда с ним не работал, даже не знаю с чего начать.

Любое приложение на Java начинается с

public static void main(String[] params)
{
    // start here
}



F>Среда разработки? Книги?

А если серьезно, то рекомендую начать с книги "Горький вкус Java". А потом попытаться понять, приложение какой архитектуры тебе предстоит разрабатывать (J2SE, servlet/jsp, J2EE)... и приступать к изучению данного конкретного направления.

F>к работе нужно приступать немедленно...

А вот это практически нереально: на изучение технологии уйдет какое-то время. Расчитывай сразу не меньше чем на 2 недели в режиме ночных посиделок на работе вместо вечерних просмотров телевизора по домам.
Re[3]: Приложение на Java. С чего начать?
От: Александр Каширин  
Дата: 23.05.07 07:32
Оценка:
Здравствуйте, Flier, Вы писали:

F>Здравствуйте, Aviator, Вы писали:


A>>Здравствуйте, Flier, Вы писали:


A>>Опыт программирования какой?


F>Если в смысле опыта работы, то недавно окончил универ (Работаю 2,5 месяца всего).

F>На работе выпустили 2 инсталляции (среда разработки Builder C++)

А, если так, то расчитывай больше, чем на 2 недели
Re[4]: Приложение на Java. С чего начать?
От: Flier  
Дата: 23.05.07 07:44
Оценка:
Здравствуйте, Александр Каширин,

В случае разработки приложений на Java, среду разработки можно приобрести бесплатно?
Re[5]: Приложение на Java. С чего начать?
От: dulanov  
Дата: 23.05.07 08:28
Оценка:
Здравствуйте, Flier, Вы писали:

F>Здравствуйте, Александр Каширин,


F>В случае разработки приложений на Java, среду разработки можно приобрести бесплатно?


Что за приложение собираешься писать?

Лучшая среда разработки для Java это IntelliJ IDEA (http://www.jetbrains.com/idea/), которую можно попробовать бесплатно в течении 30 дней или найти лекарство где угодно. Из книг попробуй начать с "Философия Java" (http://www.ozon.ru/context/detail/id/1498360/). Остальное уже сильно зависит от специфики задачи, так как вся сложность не в самом языке Java, который на базовом уровне можно выучить за неделю, а в знании библиотек, коих немерянно.
Re[5]: Приложение на Java. С чего начать?
От: dulanov  
Дата: 23.05.07 08:35
Оценка: -2
Здравствуйте, Flier, Вы писали:

F>Здравствуйте, Александр Каширин,


F>В случае разработки приложений на Java, среду разработки можно приобрести бесплатно?


Хорошей бесплатной средой является Sun NetBeans (http://www.netbeans.org/) и Eclipse (http://www.eclipse.org/jdt/). Но они все же уступают IntelliJ IDEA, поэтому лучше её для начала используй.
Re: Приложение на Java. С чего начать?
От: dulanov  
Дата: 23.05.07 08:39
Оценка:
Здравствуйте, Flier, Вы писали:


F>У меня такая ситуация получилась. Требуется написать приложение на Java, а я никогда с ним не работал, даже не знаю с чего начать. Среда разработки? Книги? Работа с базами данных на Java? Вообще с чего начать? Очень нужна помощь, к работе нужно приступать немедленно и чесно говоря я пока в растерянности.

F>Буду благодарен за информацию.
F>Заранее спасибо всем откликнувшимся.

Некоторое время я могу тебе подсказывать что делать по аське 137615431.
Re[2]: Приложение на Java. С чего начать?
От: Flier  
Дата: 23.05.07 09:12
Оценка:
Здравствуйте, dulanov, Вы писали:

D>Некоторое время я могу тебе подсказывать что делать по аське 137615431.


У меня на данный момент сложилось впечатление, что Java SE, EE, ME являются средами разработки. Это заблуждение? Если не сложно, в двух словах, что-же это такое?
Что касается проекта, то подразумевается достаточно мощный программный продукт для работы с базой данных (тоже достаточно мощной) и возможностью интеграции с Интернет-технологиями (очень приблизительно пока об этом знаю).
Т.е. это не портал в интернете, а обычная прога для пользователей, только достаточно мощная. Кстати, возможно вопрос покажется странным, в указанных средах разработки можно создавать формы (как в Builder, например) или это вообще что-то другое?

Спасибо за помощь и за аську.
Re[3]: Приложение на Java. С чего начать?
От: Aviator  
Дата: 23.05.07 09:21
Оценка: +1
Здравствуйте, Flier, Вы писали:

F>Здравствуйте, dulanov, Вы писали:


D>>Некоторое время я могу тебе подсказывать что делать по аське 137615431.


F>У меня на данный момент сложилось впечатление, что Java SE, EE, ME являются средами разработки. Это заблуждение? Если не сложно, в двух словах, что-же это такое?

F>Что касается проекта, то подразумевается достаточно мощный программный продукт для работы с базой данных (тоже достаточно мощной) и возможностью интеграции с Интернет-технологиями (очень приблизительно пока об этом знаю).
F>Т.е. это не портал в интернете, а обычная прога для пользователей, только достаточно мощная. Кстати, возможно вопрос покажется странным, в указанных средах разработки можно создавать формы (как в Builder, например) или это вообще что-то другое?

F>Спасибо за помощь и за аську.

И всё таки я бы настоятельно рекомендовал бы для начала быстро пролистать "философию жабы".
Re[4]: Приложение на Java. С чего начать?
От: Flier  
Дата: 23.05.07 09:24
Оценка:
Здравствуйте, Aviator, Вы писали:

A>И всё таки я бы настоятельно рекомендовал бы для начала быстро пролистать "философию жабы".

Спасибо за совет
Re[2]: Приложение на Java. С чего начать?
От: minato  
Дата: 23.05.07 09:34
Оценка: :)
АК>Любое приложение на Java начинается с

АК>
АК>public static void main(String[] params)
АК>{
АК>    // start here
АК>}
АК>

АК>

Нууу, Сань, надо ж вроде еще класс какой-то объявить.
Re[3]: Приложение на Java. С чего начать?
От: dulanov  
Дата: 23.05.07 09:34
Оценка:
Здравствуйте, Flier, Вы писали:

F>Здравствуйте, dulanov, Вы писали:


D>>Некоторое время я могу тебе подсказывать что делать по аське 137615431.


F>У меня на данный момент сложилось впечатление, что Java SE, EE, ME являются средами разработки. Это заблуждение? Если не сложно, в двух словах, что-же это такое?

F>Что касается проекта, то подразумевается достаточно мощный программный продукт для работы с базой данных (тоже достаточно мощной) и возможностью интеграции с Интернет-технологиями (очень приблизительно пока об этом знаю).
F>Т.е. это не портал в интернете, а обычная прога для пользователей, только достаточно мощная. Кстати, возможно вопрос покажется странным, в указанных средах разработки можно создавать формы (как в Builder, например) или это вообще что-то другое?

F>Спасибо за помощь и за аську.


Java SE/Java EE/Java ME — это не среды разработки. Java SE — это собственно стандартная Java для десктопа, включающая в себя Java машину (JVM) и набор базовых классов. Java EE — это отдельно скачиваемая библиотека для программирования преимущественно серверных вещей (Servlet/JSP и пр.) и разработки корпоративных распределенных приложений (EJB/JMS) включающая сервер приложений. Java ME — это урезанный вариант Java SE для использования в мобильных устройствах. Т.е. если кратко то это варианты Java машины и окружения для неё.

Если проект для работы с базой данных, то тебе необходимо вкратце посмотреть что такое JDBC (независимый от базы данных интерфейс для работы с ней на Java), его поддерживают все производители баз данных и обычно приложение на Java можно написать не привязываясь к той или иной СУБД. JDBC встроена в Java SE. Чтобы начать работу с той или иной СУДБ надо скачать для неё JDBC драйвер. Сейчас непосредственно для JDBC уже не пишут и используют высокоуровневые библиотеки типа iBatis, JPA (Hibernate, Oracle TopLink) или JDO. Собственно знание тонкостей различных библиотек и их применимости и составляет основную проблему программирования в Java.

Создавать формы по аналогии с Borland Builder и Delphi можно, в том же Eclipse и IntelliJ IDEA есть такие возможности, но это обычно неудобно. Почитай в той же философии Java про Swing из JavaSE и ты увидишь что в коде это даже удобнее сделать, потому что эта библиотека удобнее, на мой взгляд, той что в Delphi.
Re[5]: Приложение на Java. С чего начать?
От: dulanov  
Дата: 23.05.07 09:42
Оценка:
Здравствуйте, Flier, Вы писали:

F>Здравствуйте, Aviator, Вы писали:


A>>И всё таки я бы настоятельно рекомендовал бы для начала быстро пролистать "философию жабы".

F>Спасибо за совет

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

Лично я в своём последнем проекте использовал помимо Java SE и EE следующие библиотеки: Log4J, TestNG, Hibernate, Wicket, Maven, Ant, Jakarta Commons Lang/IO/DBCP, dbunit, hsqldb, jetty, Spring, EasyMock, JWebUnit. И это не предел. Но ты пока об этом не думай, просто имей в виду что сам язык Java — это далеко не всё.
Re[4]: Приложение на Java. С чего начать?
От: Flier  
Дата: 23.05.07 09:52
Оценка:
Здравствуйте, dulanov,


А что касается пользователей, то созданное на Java приложение не требует установки на их машинах JVM? Если да, то для них не будет определенных ограничений на этот счет (может точно и не знаю о чем говорю ..)?
С точки зрения пользователя, будут ли для него определенные неудобства при установке программного продукта (по сравнению с программой, написанной в др. средах), о которых я в связи с неопытностью в данном вопросе могу не предполагать? Или этим можно пренебречь. Я задаю такой вопрос, т.к. мне необходимо на первом этапе владеть этой информацией для разговора с начальством, о том, во что выльется фирме такой проект — не потребует ли он каких-либо непредвиденных затрат (о которых я сейчас могу не предполагать) по сравнению с проектом на Builder. Или это вообще не актуально и об этом можно не беспокоиться?
Re[5]: Приложение на Java. С чего начать?
От: Aviator  
Дата: 23.05.07 10:06
Оценка:
Здравствуйте, Flier, Вы писали:

F>Здравствуйте, dulanov,



F>А что касается пользователей, то созданное на Java приложение не требует установки на их машинах JVM? Если да, то для них не будет определенных ограничений на этот счет (может точно и не знаю о чем говорю ..)?

F>С точки зрения пользователя, будут ли для него определенные неудобства при установке программного продукта (по сравнению с программой, написанной в др. средах), о которых я в связи с неопытностью в данном вопросе могу не предполагать? Или этим можно пренебречь. Я задаю такой вопрос, т.к. мне необходимо на первом этапе владеть этой информацией для разговора с начальством, о том, во что выльется фирме такой проект — не потребует ли он каких-либо непредвиденных затрат (о которых я сейчас могу не предполагать) по сравнению с проектом на Builder. Или это вообще не актуально и об этом можно не беспокоиться?
если у юзера не стоит jvm то нму придётся её установить. могу ошибаться, но по моему можно посталять дистрибутив виртуальной машины вместе со своим приложением.
Re: Приложение на Java. С чего начать?
От: TMU Россия  
Дата: 23.05.07 11:11
Оценка: +2
F>У меня такая ситуация получилась. Требуется написать приложение на Java, а я никогда с ним не работал, даже не знаю с чего начать. Среда разработки? Книги? Работа с базами данных на Java? Вообще с чего начать? Очень нужна помощь, к работе нужно приступать немедленно и чесно говоря я пока в растерянности.


А старших товарищей в конторе, имеющих опыт работы с джавой не имеется? Начальство, по всей видимости, тоже не представляет что такое джава и с чем ее едят. Но приступить к работе требует немедленно. Хочешь прогноз? Ничего путного из этой затеи не выйдет (и ты тут не виноват, так что не обижайся). Точнее, для тебя польза будет, приобретешь опыт работы с новым языком Если же выйдет, то ты — гений
Re[2]: Приложение на Java. С чего начать?
От: Flier  
Дата: 23.05.07 11:44
Оценка:
Здравствуйте, TMU, Вы писали:


TMU>А старших товарищей в конторе, имеющих опыт работы с джавой не имеется? Начальство, по всей видимости, тоже не представляет что такое джава и с чем ее едят. Но приступить к работе требует немедленно. Хочешь прогноз? Ничего путного из этой затеи не выйдет (и ты тут не виноват, так что не обижайся). Точнее, для тебя польза будет, приобретешь опыт работы с новым языком Если же выйдет, то ты — гений


Приступать к разработке немедленно, но ТЗ на конечный срок еще не составлено, я же не говорю, что надо закончить через неделю. По поводу старших товарищей — они, конечно, есть, но без опыта работы с джавой. Так что будем разбираться вместе, а там посмотрим. Но писать на Builder такой проект тоже утопия, насколько он может быть конкурентоспособным большой вопрос, если должен работать без проблем под любой ОС (не писать же JVM в конце концов) с любой БД, которой захочет пользователь, а также предсмотрена интеграция с интернет-технологиями (насколько понимаю, здесь джава тоже незаменим). Но я, надеюсь, что они сильно сроки не урежут и будет какое-то время для коллективного изучения этого вопроса. По поводу прогноза, я конечно понимаю опасения, но если буду также смотреть, то лучше вообще ни за что в жизни не браться
Все-таки стоит разобраться, т.к. проект долгосрочный (первая версия еще совсем сырая, но уже выйдет на рынок) — не видно где конечная цель пока, есть только некоторая документация по-поводу того, что должно быть. Но уже глядя на нее можно сказать, что Builder, думаю, не то, что в данном случае позволит все реализовать корректно. Изобретать велосипед тоже, вроде, не хочется
Re[6]: Приложение на Java. С чего начать?
От: Александр Каширин  
Дата: 23.05.07 14:52
Оценка:
Здравствуйте, Aviator, Вы писали:

A>Здравствуйте, Flier, Вы писали:


F>>А что касается пользователей, то созданное на Java приложение не требует установки на их машинах JVM? Если да, то для них не будет определенных ограничений на этот счет (может точно и не знаю о чем говорю ..)?

A>если у юзера не стоит jvm то нму придётся её установить. могу ошибаться, но по моему можно посталять дистрибутив виртуальной машины вместе со своим приложением.

Для проектов J2EE, servlet/jsp единственное, что нужно у клиента — это web-browser. Все остальное необходимо на сервере. Поэтому можно подумать над тем, чтобы отказаться от "мощного" клиента. Проанализируйте ТЗ на предмет требований к клиенту.
Re[7]: Приложение на Java. С чего начать?
От: Flier  
Дата: 24.05.07 08:11
Оценка:
Здравствуйте, Александр Каширин, Вы писали:

АК>Здравствуйте, Aviator, Вы писали:


A>>Здравствуйте, Flier, Вы писали:


F>>>А что касается пользователей, то созданное на Java приложение не требует установки на их машинах JVM? Если да, то для них не будет определенных ограничений на этот счет (может точно и не знаю о чем говорю ..)?

A>>если у юзера не стоит jvm то нму придётся её установить. могу ошибаться, но по моему можно посталять дистрибутив виртуальной машины вместе со своим приложением.

АК>Для проектов J2EE, servlet/jsp единственное, что нужно у клиента — это web-browser. Все остальное необходимо на сервере. Поэтому можно подумать над тем, чтобы отказаться от "мощного" клиента. Проанализируйте ТЗ на предмет требований к клиенту.


Подразумевается десктопное приложение
Re[8]: Приложение на Java. С чего начать?
От: Александр Каширин  
Дата: 24.05.07 08:50
Оценка:
Здравствуйте, Flier, Вы писали:

F>Здравствуйте, Александр Каширин, Вы писали:


АК>>Для проектов J2EE, servlet/jsp единственное, что нужно у клиента — это web-browser. Все остальное необходимо на сервере. Поэтому можно подумать над тем, чтобы отказаться от "мощного" клиента. Проанализируйте ТЗ на предмет требований к клиенту.


F>Подразумевается десктопное приложение


Как и положено программисту из известного анекдота про Шерлока Холмса: "Только программист может дать абсолютно точный, но совершенно бесполезный ответ"

Пока что я вижу в вашем техническом задании полную неопределенность: нужно немедленно начинать писать, и непременно на Java, достаточно мощное десктопное приложение, которое будет использовать достаточно мощную базу данных... Рекомендую вместо того, чтобы немедленно начинать писать приложение, все же начать с технического задания. Тогда может вдруг окажется, что трехуровневая архитектура, лежащая в основе J2EE или servlet/jsp, подходит лучше.
Re[2]: Приложение на Java. С чего начать?
От: LeonidV Ниоткуда http://vygovskiy.com
Дата: 24.05.07 10:14
Оценка: +1
АК>А если серьезно, то рекомендую начать с книги "Горький вкус Java". А потом попытаться понять, приложение какой архитектуры тебе предстоит разрабатывать (J2SE, servlet/jsp, J2EE)... и приступать к изучению данного конкретного направления.
Ну-ну.

Начать нужно с покупки двухтомника Хорстманна. В вашем случае будет самое то, что нужно.
http://www.books.ru/shop/books/393818
http://www.books.ru/shop/books/415487
Цена кусается, но скупиться не стоит.
Если делаете большой ГИП — попробуйте посмотреть в сторону таких вещей, как "платформа для богатого клиента ;)" (Rich Client Platform). Таковых самых известных сейчас две — Eclipse и NetBeans. Причем первая более широко применяемая. Примеры построенных на ней приложений (если так сказать нельзя, поправьте меня) — Azureus, rssOwl, Borland Together, Borland JBuilder.
С базой данных лучше работать через ORM — стандарт де-факт Hibernate. Но есть и другие реализации, например TopLink от Oracle (доступен свободно). Плюс еще очень полезный сайт — jakarta.apache.org.
Прикладные технологии, существенно облегчающие процесс программирования — Ant (аналог make) и JUnit (тут почти все остальные фреймворки модульного тестирования ему аналоги).
http://jvmmemory.com — простой способ настройки JVM
Re[3]: Приложение на Java. С чего начать?
От: Lucker Беларусь http://lucker.intervelopers.com/
Дата: 24.05.07 11:44
Оценка: +1
Здравствуйте, Flier, Вы писали:

...
Я понимаю, что это у нас в стране не модно, и "лучше день потерять, зато потом за пять минут долететь", но все же настойчиво бы рекомендовал вашему руководству обратиться за помошью к консультанту, хотя бы на начальных этапах, что бы потом не жалеть о бесцельно потраченых деньгах.
Blog
Re[5]: Приложение на Java. С чего начать?
От: rsn81 Россия http://rsn81.wordpress.com
Дата: 24.05.07 12:21
Оценка:
Здравствуйте, Flier, Вы писали:

F>В случае разработки приложений на Java, среду разработки можно приобрести бесплатно?

Да, скачать, а не приобрести Eclipse SDK с http://eclipse.org.
Re[3]: Приложение на Java. С чего начать?
От: rsn81 Россия http://rsn81.wordpress.com
Дата: 24.05.07 12:21
Оценка:
Здравствуйте, LeonidV, Вы писали:

Издеваетесь, да?
Все эти технологии начинающему программисту просто физически не понять в течение как минимум полугода-года. Если конечно есть опытный руководитель, который будет вести программиста, то можно... а в одного... человек попросту не поймет, на кой все так сложно?
Re[6]: Приложение на Java. С чего начать?
От: rsn81 Россия http://rsn81.wordpress.com
Дата: 24.05.07 12:21
Оценка:
Здравствуйте, dulanov, Вы писали:

D>вся сложность не в самом языке Java, который на базовом уровне можно выучить за неделю

Речь о синтаксисе Java или JDK? По-моему, вы несколько погорячились.
Re[3]: Приложение на Java. С чего начать?
От: rsn81 Россия http://rsn81.wordpress.com
Дата: 24.05.07 12:21
Оценка:
Здравствуйте, Flier, Вы писали:

В описании мощная совокупность употребления слова "мощная".

У вас ведущий инженер, руководитель проекта, архитектор или кто-нибудь другой в команде есть, кто искушен в Java? Иначе, поймите правильно, ничего "мощного" из вашей работы, судя по описанию, в разумных временных рамках не выйдет.
Re[3]: Приложение на Java. С чего начать?
От: rsn81 Россия http://rsn81.wordpress.com
Дата: 24.05.07 12:21
Оценка:
Здравствуйте, Flier, Вы писали:

F>Кстати, возможно вопрос покажется странным, в указанных средах разработки можно создавать формы (как в Builder, например) или это вообще что-то другое?

Не пользуйтесь этой пакостью — Java не Delphi. Сейчас просто примите на веру — и научитесь проектировать, а не накидывать ГИП, а с опытом поймете сами почему.
Re[6]: Приложение на Java. С чего начать?
От: rsn81 Россия http://rsn81.wordpress.com
Дата: 24.05.07 12:21
Оценка:
Здравствуйте, Aviator, Вы писали:

A>могу ошибаться, но по моему можно посталять дистрибутив виртуальной машины вместе со своим приложением.

Не ошибаетесь: лицензия JRE это позволяет, технологически нужно упаковать каталог JRE утилитой pack200 (входит в JRE), встроить в пакет инсталляции с программой, при установке распаковать утилитой unpack200 (тоже из JRE) хоть прямо в один каталог с программой.
Re: Приложение на Java. С чего начать?
От: Flier  
Дата: 24.05.07 14:31
Оценка:
Хотелось бы еще узнать об общих подходах к разработке сложных программных систем (я имею ввиду не привязываясь к предметной области). Как вообще грамотно происходить к разработке? Может быть об этом можно где-то прочитать?
Re[2]: Приложение на Java. С чего начать?
От: Blazkowicz Россия  
Дата: 24.05.07 14:57
Оценка: +1
Здравствуйте, Flier, Вы писали:

F>Хотелось бы еще узнать об общих подходах к разработке сложных программных систем (я имею ввиду не привязываясь к предметной области). Как вообще грамотно происходить к разработке? Может быть об этом можно где-то прочитать?


Да полнО, например. Martin Fowler, Patterns of Enterprise Application Architecture.
Только я не уверен что эту книгу можно осилить не имея за плечами хотя бы года комерческой разработки.
Re[3]: Приложение на Java. С чего начать?
От: rsn81 Россия http://rsn81.wordpress.com
Дата: 24.05.07 15:34
Оценка:
Здравствуйте, Blazkowicz, Вы писали:

B>Только я не уверен что эту книгу можно осилить не имея за плечами хотя бы года комерческой разработки.

Не уверен, что шаблоны проектирования вообще можно понять (сиречь почуять их преимущество и необходимость использования), не имея...
Re[2]: Обобщенный Model-View-Controller
Автор: rsn81
Дата: 29.03.07
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.