Доброго времени суток.
Имеется серьезный вопрос к опытным разработчикам.
Предисловие
Учусь в универе на программиста. 2-й курс. Год программировал на Delphi, потом перешел на Java (уже почти год).
До недавнего времени, Java меня полностью устраивала: как язык так и средства разработки (JavaSE и Eclipse). Т.к. будущем хочу заниматься веб-разработкой, то недавно начал осваивать JSP, в последствии чего столкнулся с массой неудобностей, а имено — отсутствие хороших средств разработки, как, например, средства для быстрого запуска сервлетов с автогенерацией конфигурационных файлов, и т.п.(юзал плагин для интеграции Tomcat в Eclipse от Sysdeo). Поиск решений не дал хороших результатов. Начал спрашивать совета у знакомых, и вот что мне сказали...
Суть
Человек, который мне это рассказал уже долгое время занимается разработкой на .NET.
"Cуть в том, что Java — хорошая платформа, но не более. На ней можно писать первоклассный софт, но для нее отсутствует среда All-in-one, т.е. мне всю жизнь придется искать плагины под Eclipse (те же Subversion, Hibernate и.т.п.), а это — куча гемора." В сравнение он приводит Visual Studio в котором, по его словам есть все Я приводил аналоги каждой фичи от Microsoft, которую он называл для Java, но все это были отдельные решения, и я не мог с ним не согласится, что их взаимная интеграция уступает готовому Visual Studio.
Он говорил, что Java не предназначена для массовой (конвейерной) разработки, для очень крупны проектов, для совместной разработки многими людьми, что в крупных конторах это знают, мне придется с этим столкунтся и нужно быть готовым. Правда ли все это?
Смысл
Смысл в том, что я хочу разрабатывать очень быстро. Т.е. я должен лишь тратить время на проектировку ПО, а потом собрать его за считанные часы.
Вопрос
Стоит ли мне подумать о переходе на другую платформу? Если да, то на какую? Сам пока не решил, стоит ли, так как люблю Джаву, но начал поглядывать в сторону .NET.
Здравствуйте, A1taiR, Вы писали:
AR>Смысл AR>Смысл в том, что я хочу разрабатывать очень быстро. Т.е. я должен лишь тратить время на проектировку ПО, а потом собрать его за считанные часы.
Так не бывает и не будет. Прочитай книжку Ф. Брукса " The Mythical Man-Month". Начни со статьи "No Silver Bullet".
AR>Вопрос AR>Стоит ли мне подумать о переходе на другую платформу? Если да, то на какую? Сам пока не решил, стоит ли, так как люблю Джаву, но начал поглядывать в сторону .NET.
Переходи 100%. Нельзя любить платформу. Это всего лишь инструмент. Поработай с годик на .NET и поймёшь что нет в жизни счастья.
Здравствуйте, A1taiR, Вы писали:
AR>Смысл AR>Смысл в том, что я хочу разрабатывать очень быстро. Т.е. я должен лишь тратить время на проектировку ПО, а потом собрать его за считанные часы.
А я хочу деревянную лошадку в полный рост.
Если интересуют проекты уровня больше, чем "Hello, world!", то про "собрать из компонентов" — можно забыть. И несколько минут на правильную настройку окружения тоже ничего не решают.
Sapienti sat!
Re[2]: Выбор платформы программирования на всю оставшуюся жи
Здравствуйте, Cyberax, Вы писали:
C>Если интересуют проекты уровня больше, чем "Hello, world!", то про "собрать из компонентов" — можно забыть.
Почему нельзя собрать что-то серьезное из компонентов? Я ведь могу взять что-то похожее и подправить так, как мне надо. Ведь задачки уже давно решены и можно (даже нужно) юзать паттерн. А по вашим словам — надо изобретать велосипед.
C>И несколько минут на правильную настройку окружения тоже ничего не решают.
Может и не решают, но очень утомляют.
Re[3]: Выбор платформы программирования на всю оставшуюся жи
Здравствуйте, A1taiR, Вы писали:
C>>Если интересуют проекты уровня больше, чем "Hello, world!", то про "собрать из компонентов" — можно забыть. AR>Почему нельзя собрать что-то серьезное из компонентов?
Потому, что при этом количество используемых "компонентов" при этом будет столь большим, что проблемой будет уже работа с ними.
AR>Я ведь могу взять что-то похожее и подправить так, как мне надо. Ведь задачки уже давно решены и можно (даже нужно) юзать паттерн.
Если бы все задачи были давно решены, то у программистов не было бы работы.
А паттерны проектирования — это не решения проблем, а просто рекомендации КАК их решать.
AR>А по вашим словам — надо изобретать велосипед.
Очень полезное занятие, иногда совершенно необходимое.
C>>И несколько минут на правильную настройку окружения тоже ничего не решают. AR>Может и не решают, но очень утомляют.
Ты думаешь, что с MS всё будет сильно лучше? Наивный
Я свои окружения (для Java, .NET, C++, Python) один раз настроил, и сейчас работаю без проблем. Какие-либо изменения в них делать приходится сравнительно редко.
Sapienti sat!
Re: Выбор платформы программирования на всю оставшуюся жизнь
AR>Суть AR>Человек, который мне это рассказал уже долгое время занимается разработкой на .NET. AR>"Cуть в том, что Java — хорошая платформа, но не более. На ней можно писать первоклассный софт, но для нее отсутствует среда All-in-one, т.е. мне всю жизнь придется искать плагины под Eclipse (те же Subversion, Hibernate и.т.п.), а это — куча гемора." В сравнение он приводит Visual Studio в котором, по его словам есть все Я приводил аналоги каждой фичи от Microsoft, которую он называл для Java, но все это были отдельные решения, и я не мог с ним не согласится, что их взаимная интеграция уступает готовому Visual Studio.
Это последнее, на что стоит обращать внимание при выборе платформы для разработки.
AR>Он говорил, что Java не предназначена для массовой (конвейерной) разработки, для очень крупны проектов, для совместной разработки многими людьми, что в крупных конторах это знают, мне придется с этим столкунтся и нужно быть готовым. Правда ли все это?
Нет.
Лично мне java не нравится. чисто с эстетической точки зрения. И если выбирать между java и .NET я бы при прочих равных выбрал последнее. Однако it depends. Все зависит от задачи
AR>Смысл AR>Смысл в том, что я хочу разрабатывать очень быстро. Т.е. я должен лишь тратить время на проектировку ПО, а потом собрать его за считанные часы.
Так бывает только в сказках или книжках людей, которые продают технологии проектирования.
--
Sergey Chadov
... << RSDN@Home 1.2.0 alpha rev. 685>>
Re: Выбор платформы программирования на всю оставшуюся жизнь
Здравствуйте, A1taiR, Вы писали:
AR>Смысл AR>Смысл в том, что я хочу разрабатывать очень быстро. Т.е. я должен лишь тратить время на проектировку ПО, а потом собрать его за считанные часы.
Быстро только кролики плодятся.
Если тебя все утомляет (на втором то курсе), то может ты не ту специальность выбрал.
Re: Выбор платформы программирования на всю оставшуюся жизнь
Здравствуйте, A1taiR, Вы писали:
AR>Доброго времени суток. AR>Имеется серьезный вопрос к опытным разработчикам.
AR>Суть AR>Человек, который мне это рассказал уже долгое время занимается разработкой на .NET. AR>"Cуть в том, что Java — хорошая платформа, но не более. На ней можно писать первоклассный софт, но для нее отсутствует среда All-in-one, т.е. мне всю жизнь придется искать плагины под Eclipse (те же Subversion, Hibernate и.т.п.), а это — куча гемора." В сравнение он приводит Visual Studio в котором, по его словам есть все Я приводил аналоги каждой фичи от Microsoft, которую он называл для Java, но все это были отдельные решения, и я не мог с ним не согласится, что их взаимная интеграция уступает готовому Visual Studio.
А зачем нужна среда All-In-One? Вы что в своих продуктах используете все технологии сразу? Микрософт пытается подсебя подгрести по-больше, наверное, это генетическое у этой конторы. Java оставляет выбор за разработчиком, .Net — здесь МС за тебя уже все решила (фреймворки, библиотеки, ide).
Гемор с плагинами мне непонятен, ну решил ты под андроид писать — установка плагина считанные минуты занимает, ничего долго искать не надо. Нужен auto-completion для Spring? — поставил плагин и забыл. Зато ждать не надо, пока МС сподобится добавить поддержку чего-то там нового (и тем более не своего) в свою IDE или пофиксит баги в своих многочисленных модулях.
AR>Он говорил, что Java не предназначена для массовой (конвейерной) разработки, для очень крупны проектов, для совместной разработки многими людьми, что в крупных конторах это знают, мне придется с этим столкунтся и нужно быть готовым. Правда ли все это?
А пацаны-то не в курсе! Мне казалось, что успех разработки крупного проекта зависит в большей мере от того насколько хорошо поставлен процесс разработки, от удачно спроектированной архитектуры, ну уж точно не от языка, на котором пишут разработчики.
AR>Смысл AR>Смысл в том, что я хочу разрабатывать очень быстро. Т.е. я должен лишь тратить время на проектировку ПО, а потом собрать его за считанные часы.
Обычно все достаточно настроить один раз и затем по мере необходимости вносить изменения в конфигурацию, ни о каких часах сборки и речи нет, если это не супер-мега-проект с кучей тестов.
AR>Вопрос AR>Стоит ли мне подумать о переходе на другую платформу? Если да, то на какую? Сам пока не решил, стоит ли, так как люблю Джаву, но начал поглядывать в сторону .NET.
PHP/Ruby?
Переходить с java на .net — это как шило на мыло менять
Re: Выбор платформы программирования на всю оставшуюся жизнь
Здравствуйте, A1taiR, Вы писали:
AR>Смысл в том, что я хочу разрабатывать очень быстро. Т.е. я должен лишь тратить время на проектировку ПО, а потом собрать его за считанные часы.
AR>Почему нельзя собрать что-то серьезное из компонентов? Я ведь могу взять что-то похожее и подправить так, как мне надо. Ведь задачки уже давно решены и можно (даже нужно) юзать паттерн. А по вашим словам — надо изобретать велосипед.
Судя по этим фразам, тебе нужно просто еще учиться. До тех пор, пока как следует не поймешь, что такое программирование, выбирать платформу рано. Пока же твое понимание, как бы помягче сказать... на уровне именно того курса, на котором ты учишься.
With best regards
Pavel Dvorkin
Re: Выбор платформы программирования на всю оставшуюся жизнь
Здравствуйте, A1taiR, Вы писали:
AR>Человек, который мне это рассказал уже долгое время занимается разработкой на .NET. AR>"Cуть в том, что Java — хорошая платформа, но не более. На ней можно писать первоклассный софт, но для нее отсутствует среда All-in-one, т.е. мне всю жизнь придется искать плагины под Eclipse (те же Subversion, Hibernate и.т.п.), а это — куча гемора." В сравнение он приводит Visual Studio в котором, по его словам есть все Я приводил аналоги каждой фичи от Microsoft, которую он называл для Java, но все это были отдельные решения, и я не мог с ним не согласится, что их взаимная интеграция уступает готовому Visual Studio. AR>Он говорил, что Java не предназначена для массовой (конвейерной) разработки, для очень крупны проектов, для совместной разработки многими людьми, что в крупных конторах это знают, мне придется с этим столкунтся и нужно быть готовым. Правда ли все это?
это все бред имхо
могу привести в пример мнение другого человека, который гвоорит прямо противоположное — после java + IntellijIdea (кстати, если не нравится эклипс с тучей плагинов, может быть взглянуть на эту IDE? в ней автоматически встроено много вещей которых либо нет в эклипсе, либо они платны, либо сделаны через одно место..) — глючная visualстудия и вообще весь фреймворк, весь этот гемор с часовыми сборками — показались просто кошмаром..
AR>Смысл AR>Смысл в том, что я хочу разрабатывать очень быстро. Т.е. я должен лишь тратить время на проектировку ПО, а потом собрать его за считанные часы.
вот как раз таки на яве получается почему то быстрее.
AR>Вопрос AR>Стоит ли мне подумать о переходе на другую платформу? Если да, то на какую? Сам пока не решил, стоит ли, так как люблю Джаву, но начал поглядывать в сторону .NET.
тебе правильнос советовали — попробуй, убедись сам. глядишь и кругозора добавится, лишним не будет..
выбирать на 2м курсе платформу на всю оставшуюся жизнь — это сильно
Re[3]: Выбор платформы программирования на всю оставшуюся жи
Здравствуйте, A1taiR, Вы писали:
AR>Здравствуйте, Mazay, Вы писали: M>>Поработай с годик на .NET и поймёшь что нет в жизни счастья. AR>Что бы это значило?
Это значит, что невозможно всю жизнь любить одну-единственную женщину...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: Выбор платформы программирования на всю оставшуюся жизнь
Здравствуйте, A1taiR, Вы писали:
AR>Смысл AR>Смысл в том, что я хочу разрабатывать очень быстро. Т.е. я должен лишь тратить время на проектировку ПО, а потом собрать его за считанные часы.
Скорость разработки в основном зависит от личных профессиональных навыков, во вторую очередь от применяемых языков и только в третью очередь от используемой среды и редактора.
Re[2]: Выбор платформы программирования на всю оставшуюся жи
Здравствуйте, Trean, Вы писали:
AR>>Вопрос AR>>Стоит ли мне подумать о переходе на другую платформу? Если да, то на какую? Сам пока не решил, стоит ли, так как люблю Джаву, но начал поглядывать в сторону .NET.
T>PHP/Ruby?
Смотрел я в сторону руби. Пробовал Ruby on Rails, юзал RadRails. Мне понравилось: 1.Уровень языка выше чем Java. 2. Rails — отличный фреймворк.
Но решил все-таки пока остаться на Java — рассмотрю подробнее фреймворки под JSP.
Re[3]: Выбор платформы программирования на всю оставшуюся жи
Здравствуйте, A1taiR, Вы писали:
AR>Почему нельзя собрать что-то серьезное из компонентов? Я ведь могу взять что-то похожее и подправить так, как мне надо. Ведь задачки уже давно решены и можно (даже нужно) юзать паттерн. А по вашим словам — надо изобретать велосипед.
Эти компоненты должен кто-то написать. Если их нет — пишешь сам.
Не все задачи решены. В противном случае на рсдн не собралась бы такая толпа программеров и тех, кто хочет ими стать.
На самом деле, под каждую задачу выбирается наиболее подходящая платформа.
Вот пример: недавно дежавюшную книжку напечатать решил.
Задача: выдрать все страницы в Jpeg и собрать их по 4 штуки на листе А4 (как обычная книжка в твердом переплете делается). Выдираем через IrfanView. Затем делаем книжку.
Для этого все jpeg'и надо особым образом склеить — соединить по две страницы на каждой стороне листа.
На шарпе задача решена не более чем за полчаса с учетом поиска алгоритма.
Можно решить и на GDI+ (широко в свое вемя агитировал за C++), но сколько на это уйдет времени?
Подойдет и ява. Но пока NetBeans грузится, половина кода могла быть написана в VS.
Когда преподавал физику, соорудил небольшой графический калькулятор для мобильника — возникают моменты, когда позарез надо студентам график показать, причем с разными параметрами. Перед занятиям приготовишь шаблоны, а затем быстро их в подходящий момент достаешь.
Писать, естественно, пришлось на J2ME.
Нет платформы для всех случаев жизни. Надо иметь представление о том, что есть в данный момент и активно используется, и просто стараться не отставать от прогресса. Основательно надо знать одну-две платформы. Остальное — держать нос по ветру.
Re: Выбор платформы программирования на всю оставшуюся жизнь
AR>Вопрос AR>Стоит ли мне подумать о переходе на другую платформу? Если да, то на какую? Сам пока не решил, стоит ли, так как люблю Джаву, но начал поглядывать в сторону .NET.
выбор между ява и технологиями Микрософт это не только выбор языка программирования и среды разработки, ето принципильное различие
между кросс платформ (в случае ява ето все семейство юних/линух) в случае дот.нет ето только виндовс.Так же выбор ява -- ето выбор в сторону
корпоративного софта. А вообше когда соберетесь работать возмите газету и выберете себе платформу за которую будут платить наибольшие
деньги на тот момент. Так вы и ваша семья будут максимально удовлетворены выбором платформы (конечно ето ИМХО).
AR>Заранее благодарен.
Re: Выбор платформы программирования на всю оставшуюся жизнь
Здравствуйте, A1taiR, Вы писали:
AR>Выбор платформы программирования на всю оставшуюся жизнь.
Это как выбор ботинок на всю оставшуюся жизнь.
AR>Учусь в универе на программиста. 2-й курс.
Это как раз время попробовать все, и чем больше тем лучше. Начиная с asm и заканчивая разнообразными frameworks. IMHO, это жизненно необходимо и если это время упустить, то такой возможности уже больше не будет.
Что касается вашего вопроса, то я бы его заменил на: "Выбор предметной области на всю оставшуюся жизнь".
AR>Смысл AR>Смысл в том, что я хочу разрабатывать очень быстро. Т.е. я должен лишь тратить время на проектировку ПО, а потом собрать его за считанные часы.
Эта ниша свободна. IMHO, многие хотели бы такое чудо и уже избавиться от этой армии разработчиков.
Re: Выбор платформы программирования на всю оставшуюся жизнь
Здравствуйте, A1taiR, Вы писали: AR>Выбор платформы программирования на всю оставшуюся жизнь
А Вы сколько прожить собираетесь? Я вот как-то планирую пережить и жаву, и дотнет.
Инструмент разработки можно сменить в любой момент — было бы желание.
Re[3]: Выбор платформы программирования на всю оставшуюся жи
Здравствуйте, A1taiR, Вы писали:
AR>Здравствуйте, Mazay, Вы писали: M>>Поработай с годик на .NET и поймёшь что нет в жизни счастья. AR>Что бы это значило?
Любовь зла, полюбишь и коз... Билл Гейтса или кто-там за него...