Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JAVA или .NET ? обсуждаем достоинства и недостатки 
:(
    Опции темы
Allexx
Дата 3.2.2004, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 16.12.2003

Репутация: нет
Всего: нет




M
mr.DUDA
Вопросы, мнения и просто свои мысли по поводу особенностей платформы .NET в сравнении с JAVA можно обсудить в этой теме. В любых других темах замечания типа "JAVA (или .NET) круче!" будут являться оффтопом, даже в том случае, если они аргументированы :).

P.S. аналогичная тема есть в разделе по JAVA.

PM MAIL   Вверх
AntonSaburov
Дата 3.2.2004, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: 6
Всего: 118



Цитата
Как вы считаете, что является более перспективным для использования в разработке web-приложений: технология .NET или технология Java?

Если подходить ответственно к данному вопросу, а не просто кричать "маст дай" не важно по поводу какой-то платформе, то необходимо выбрать критерии, по которым мы можем оценивать ту или иную платформу.

1. Если мы возьмем критерием скорость работы, то тут скорее всего выигрывает .NET
2. Если мы возьмем критерием возможность работать на разных платформах, то тут несомненно выигрывает JAVA.
3. Если мы возьмем критерием распространенность ОС, под которую все это будет работать, то здесь опять же выиграет скорее всего .NET
4. Если берем скорость разработки, то для небольших проектов .NET тоже скорее всего выигрывает. Потому как скорость разработки сложных проектов уже определяются не кто сколько кнопочек быстрее накидает, а поддерживаемыми технологиями, а в этом системы в принципе равны.
5. Если мы говорим о зрелости и устойчивости платформы, то пока лидирует J2EE
6. Если мы берем количество компонент, то здесь выигрышь пока никому не принадлежит. Обе платформы имеют очень большой набор всевозможных компонентов.
7. Если мы говорим о таком явлении, как аплет, то в .NET что-то такое пока отсутствует (Я не говорю об ActiveX компонентах, т.к. это работает только в IE и не может рассматриваться как полная альтернатива аплетам). Хотя при распространенности IE это достаточно маленький выигрышь.

В принципе я склонен согласится с одним исследованием, по которому через небольшое время (2-3 года) около 40% рынка будет занимать .NET, другие 40% - JAVA, остальное будет распределено по специализированным системам (SQL на .NET или JAVA писать вы не будете - скорость все-таки нужна).
Рынок имеется в виду не количество проектов, а количество денег, вложенных в них. Понятно, что IIS очень сильно распространен потому как идет вместе с ОС. Но если смотреть на дорогой и крупный корпоративный рынок, то там пока Apache недосягаем. (Я не говорю и фирмах в 15-20 человек, где администратора-то часто не бывает).

Если смотреть на это как разработчик, то я уверен в том, что и те, и другие специалисты будут востребованы еще долгое время. Можно конечно прикрепится к монстру MS, но лично мне импонирует Java, хотя я стараюсь поддерживать свои знания на обеих платформах.

PM MAIL WWW ICQ   Вверх
Kurt
Дата 6.2.2004, 11:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлеченный
***


Профиль
Группа: Участник Клуба
Сообщений: 1662
Регистрация: 22.8.2003
Где: Краснодар

Репутация: 20
Всего: 36



Цитата
2. Если мы возьмем критерием возможность работать на разных платформах, то тут несомненно выигрывает JAVA.

Наверняка, это чистый флейм (сорри), но немного сомнительно (ИМХО!!!) будущность этого высказывания.
Останется ли Java кроссплатформенной, при хороших показателях, естесственно?
1) Насколько я знаю, лицензия от Sun на использование JavaVM у Microsoft только до сентября 2004г. Потом - только Sun's JVM.
2) Все последующие версии Windows будут основываться на технологии .NET (пока еще что-нибудь не придумают..) - т.е. все программы будут исполняться через Microsoft's VM, а Win32-приложения будут считаться устаревшими (как ныне DOS-программы) и выполняться медленне .NET-программ (из "публичных" выступлений Microsoft.. может, я не так понимаю ситуацию?) и потреблять больше ресурсов. Вся дальнейшая разработка - только под .NET. Замечательно.. Но JavaVM на Windows - не более чем просто программа. Win32-приложение! => Если не изменять реализацию виртуальной машины - она просто устареет, будет сильно отставать по всем показателям.. Ее надо будет переписывать.. На чем?! На .NET? Виртуальная машина на виртуальной машине?! Тогда опять же Microsoft обойдет Java..
Хотя.. может, есть еще какой выход..
3) Просто дополнение - последние разработки SUN реализованы под Solaris, Linux'ы, по-моему под MacOS, но не под Windows! (судя по их официальным сайтам).. Конечно, тут играет роль профиль конторы и обыденная политика фирм.. Но так, чисто как дополнение, настораживает..

Итого, мое ЛИЧНОЕ мнение - "хорошая" кроссплатформенность Java в будущем сомнительна..

З.Ы. Все это лишь ИМХО. Ничего более..



--------------------
Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед)
...
Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн)
PM ICQ   Вверх
C'hoosen++
Дата 12.2.2004, 03:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 21.1.2004

Репутация: нет
Всего: нет



Мне кажется, что, хотя Java во многих местах используется, она все-таки
начинает потихоньку устаривать, а вот .NET, наоборот, сильно развивается.
И через этот срок (2-3 года), если ничего нового не появиться, то .NET
заваюет около 55-65% всего рынка продукции. MS сейчас мощно совер-
шеннствует свою технологию и пытается внедрять ее во многих системах,
поэтому, если серьезно взяться за обучение и накопления опыта по .NET,
то можно стать сильно востебованным специалистом!
PM MAIL   Вверх
__vi
Дата 12.2.2004, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 301
Регистрация: 21.1.2004

Репутация: нет
Всего: -1



Нет java не устаривает а наоборот развивается. И всё зависит от того что ты хочеш. Если ты ориентируешся тока на виду, то бери .NET на нём писать... легко. Java мощнее.

Это сообщение отредактировал(а) __vi - 12.2.2004, 11:36
PM MAIL   Вверх
AntonSaburov
Дата 12.2.2004, 12:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: 6
Всего: 118



Цитата
MS сейчас мощно совершеннствует свою технологию и пытается внедрять ее во многих системах,
поэтому, если серьезно взяться за обучение и накопления опыта по .NET, то можно стать сильно востебованным специалистом!

Вполне допускаю. Недавно Vit опубликовывал востребованность программистов в Чикаго. Пока Java там впереди с огромным отрывом.
Достаточно хорошо представляя построение JAVA и .NET могу сказать - сегодня JAVA более продуманная платформа, более зрелая. Пока единственный недостаток JAVA - она медленная. Более чем в 3 раза медленнее чем .NET. Это объясняется и тем, что сама JVM будучи более универсальной замедляет исполнение. И построение классов тоже более универсальное, и отсюда медленное. Увы, пока никто не смог сделать более универсальное более быстрым.
Хотя говорят, что Java 1.5 (Tiger) хорошо прибавила в скорости. Думаю, что за счет типизация коллекций вполне такое возможно.

А теперь IMHO

.NET для меня ассоциируется с баньяном (Дерево, у которого корни могут вырастать прямо из веток и просрастать в землю. Может получится огромный лес, но как бы из одного дерева). Вот точно такая же картинка - какую-либо понятную систему построения отследить крайне сложно. Понапихано всякого, все это причудливо может переплетаться. Но садовники что-то там пытаются. Гулять пока получается только с большим мачете или с хорошим проводником.

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

PM MAIL WWW ICQ   Вверх
ElectricalStorm
Дата 12.2.2004, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 547
Регистрация: 22.1.2004

Репутация: нет
Всего: 9



Цитата

Мне кажется, что, хотя Java во многих местах используется, она все-таки
начинает потихоньку устаривать, а вот .NET, наоборот, сильно развивается.
И через этот срок (2-3 года), если ничего нового не появиться, то .NET
заваюет около 55-65% всего рынка продукции. MS сейчас мощно совер-
шеннствует свою технологию и пытается внедрять ее во многих системах,
поэтому, если серьезно взяться за обучение и накопления опыта по .NET,
то можно стать сильно востебованным специалистом!


чистый пиар Микрософт !!!

и обсалютная неправда !




--------------------
Нужно знать инструмент, которым пользуешься
PM MAIL   Вверх
ElectricalStorm
Дата 12.2.2004, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 547
Регистрация: 22.1.2004

Репутация: нет
Всего: 9



Люди пишите на java не бойтесь вы не будет cплошного Мелкософта никогда
если мы все будем писатьна java .NET вообще умрет !!!
ура да здравстует java ........... smile.gif)))

я пиарщик тоже smile.gif


--------------------
Нужно знать инструмент, которым пользуешься
PM MAIL   Вверх
C'hoosen++
Дата 12.2.2004, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 21.1.2004

Репутация: нет
Всего: нет



to AntonSaburov:
Цитата
Недавно Vit опубликовывал востребованность программистов в Чикаго. Пока Java там впереди с огромным отрывом.

Это в Чикаго, а у нас то как ?

to __vi:
Цитата

бери .NET на нём писать... легко. Java мощнее.

Это врятли! (но .NET возьму)

to ElectricalStorm:
Никакого пиара! Просто .NET действительно мощная платформа. Пусть
пока молодая, с ошибками и недоработками, но через некоторое время
она обгонит Java (это точно!).
Цитата

Люди пишите на java не бойтесь вы, не будет cплошного Мелкософта никогда
если мы все будем писатьна java .NET вообще умрет !!!

Кто кого боится, а? Хватит играть в эти монопольные игры, пиши на чем
хочем и не думай о том кто его создал!
Лично я за .NET! wink.gif

Это сообщение отредактировал(а) C'hoosen++ - 12.2.2004, 14:28
PM MAIL   Вверх
ElectricalStorm
Дата 12.2.2004, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 547
Регистрация: 22.1.2004

Репутация: нет
Всего: 9



Цитата
Лично я за .NET!


Ok !
А я за Java


--------------------
Нужно знать инструмент, которым пользуешься
PM MAIL   Вверх
AntonSaburov
Дата 12.2.2004, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: 6
Всего: 118



Цитата
Это в Чикаго, а у нас то как ?

А у нас пока никак smile.gif Наш рынок ПО по сравнению с США - это просто капля в море.
У нас пока только базы данных для России пишут. Т.е. всем интересен Oracle, MS SQL. И средства разработки, причем типа "плюх энд плюй" - т.е. Delphi, VB. Теперь еще .NET. Можно быстро накидать всякого барахла на форму, обработать кнопочки. И готово. Если говорить за Россию, то из-за полной бесплатности .NET и Винды для нас это удобно. Но вообщем хотелось бы как-то ближе к цивилизованному рынку подвигаться.

PM MAIL WWW ICQ   Вверх
mr.DUDA
Дата 7.4.2005, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



По поводу делегатов (.NET) vs. листенеры (JAVA), специально для Domestic Cat:

Делегат инкапсулирует в себе ссылку на объект и метод класса объекта (мультикаст-делегаты инкапсулируют несколько ссылок), за счёт этого можно в одном объекте публиковать несколько событий (именованных делегатов), чего нельзя достичь используя один "плоский" список, хранящий ссылки на листенеры.

Другое достоинство делегатов vs. листенеры: насколько я понял, класс поддерживающий события в JAVA, наследуется от некоего базового класса, поправьте меня если я не прав. В .net наследоваться ни от чего не нужно: подписать можно любой класс на события любого другого класса.


--------------------
user posted image
PM MAIL WWW   Вверх
batigoal
Дата 7.4.2005, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 1
Всего: 151



Цитата(mr @ 7.4.2005, 09:55)
класс поддерживающий события в JAVA, наследуется от некоего базового класса, поправьте меня если я не прав

Не совсем. Для реализации листенера нужно не наследовать, а реализовать интерфейс. Это не одно и тоже. Любой класс (унаследованный от чего угодно) декларирует, что он имеет определенные методы для обработки событий определенного типа.

Это сообщение отредактировал(а) Lamer George - 7.4.2005, 10:07


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
mr.DUDA
Дата 7.4.2005, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Цитата(Lamer @ 7.4.2005, 10:06)
Не совсем. Для реализации листенера нужно не наследовать, а реализовать интерфейс. Это не одно и тоже. Любой класс (унаследованный от чего угодно) декларирует, что он имеет определенные методы для обработки событий определенного типа.


Наследование или реализация интерфейса у листенера - в любом случае, это "надстройка" над собственным интерфейсом объекта, а в случае с делегатами ВСЯ логика (список подписчиков, вызов их методов) спрятана внутри делегата.


--------------------
user posted image
PM MAIL WWW   Вверх
Domestic Cat
Дата 7.4.2005, 10:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 9
Всего: 172



http://forum.vingrad.ru/index.php?act=ST&f...=47926&unread=1


Цитата(mr @ 7.4.2005, 00:55)
Делегат инкапсулирует в себе ссылку на объект и метод класса объекта (мультикаст-делегаты инкапсулируют несколько ссылок), за счёт этого можно в одном объекте публиковать несколько событий (именованных делегатов), чего нельзя достичь используя один "плоский" список, хранящий ссылки на листенеры.

Тут я не совсем понял. Ты делаешь несколько делегатов, при при наступлении определенного события можешь вызвать все методы. Только это скрыто от тебя.
В Java регистрируются листенеры, при наступлении события на каждом вызывается определенный метод. Вроде то же самое.


Цитата(mr @ 7.4.2005, 00:55)
Другое достоинство делегатов vs. листенеры: насколько я понял, класс поддерживающий события в JAVA, наследуется от некоего базового класса, поправьте меня если я не прав. В .net наследоваться ни от чего не нужно: подписать можно любой класс на события любого другого класса.


Происходит вот что: делается интерфейс, например, ValueChangeListener, с методом, например, valueChanged(). Класс, который хочет слушать такие ивенты, обязан наследовать от этого интерфейса и имплементировать этот метод.
Тот, кого должны слушать, имеет обычно методы типа addValueChangeListener(ValueChangeListener v), removeValueChangeListener(ValueChangeListener v). Все листенеры хранятся в коллекции, если наступает ивент, на каждом вызывается метод valueChanged.
Естественно, стандартные ГУИ и проч листенер-интерфейсы уже существыют, потому с ними так же просто, как и со стандартными .НЕТ делегатами.
Для юзер-дефайнед листенеров - можно написать самому (это дольше, чем пользовать делегат), или воспользоваться одним из стандартных "общих" листенеров.
Для меня отличие в том, что я понимаю листенеры полностью; а вот что же передается делегату - загадка smile То есть, все-таки это не Питон, где можно определить функцию function , а потом писать x = function, в .НЕТ же явно указатели на методы нельзя пользовать.

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



--------------------

PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1239 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.