![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Allexx |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 16.12.2003 Репутация: нет Всего: нет |
|
|||
|
||||
AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 6 Всего: 118 |
Если подходить ответственно к данному вопросу, а не просто кричать "маст дай" не важно по поводу какой-то платформе, то необходимо выбрать критерии, по которым мы можем оценивать ту или иную платформу. 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, хотя я стараюсь поддерживать свои знания на обеих платформах. |
|||
|
||||
Kurt |
|
|||
Увлеченный ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1662 Регистрация: 22.8.2003 Где: Краснодар Репутация: 20 Всего: 36 |
Наверняка, это чистый флейм (сорри), но немного сомнительно (ИМХО!!!) будущность этого высказывания. Останется ли 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 в будущем сомнительна.. З.Ы. Все это лишь ИМХО. Ничего более.. -------------------- Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед) ... Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн) |
|||
|
||||
C'hoosen++ |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 21.1.2004 Репутация: нет Всего: нет |
Мне кажется, что, хотя Java во многих местах используется, она все-таки
начинает потихоньку устаривать, а вот .NET, наоборот, сильно развивается. И через этот срок (2-3 года), если ничего нового не появиться, то .NET заваюет около 55-65% всего рынка продукции. MS сейчас мощно совер- шеннствует свою технологию и пытается внедрять ее во многих системах, поэтому, если серьезно взяться за обучение и накопления опыта по .NET, то можно стать сильно востебованным специалистом! |
|||
|
||||
__vi |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 301 Регистрация: 21.1.2004 Репутация: нет Всего: -1 |
Нет java не устаривает а наоборот развивается. И всё зависит от того что ты хочеш. Если ты ориентируешся тока на виду, то бери .NET на нём писать... легко. Java мощнее.
Это сообщение отредактировал(а) __vi - 12.2.2004, 11:36 |
|||
|
||||
AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 6 Всего: 118 |
Вполне допускаю. Недавно Vit опубликовывал востребованность программистов в Чикаго. Пока Java там впереди с огромным отрывом. Достаточно хорошо представляя построение JAVA и .NET могу сказать - сегодня JAVA более продуманная платформа, более зрелая. Пока единственный недостаток JAVA - она медленная. Более чем в 3 раза медленнее чем .NET. Это объясняется и тем, что сама JVM будучи более универсальной замедляет исполнение. И построение классов тоже более универсальное, и отсюда медленное. Увы, пока никто не смог сделать более универсальное более быстрым. Хотя говорят, что Java 1.5 (Tiger) хорошо прибавила в скорости. Думаю, что за счет типизация коллекций вполне такое возможно. А теперь IMHO .NET для меня ассоциируется с баньяном (Дерево, у которого корни могут вырастать прямо из веток и просрастать в землю. Может получится огромный лес, но как бы из одного дерева). Вот точно такая же картинка - какую-либо понятную систему построения отследить крайне сложно. Понапихано всякого, все это причудливо может переплетаться. Но садовники что-то там пытаются. Гулять пока получается только с большим мачете или с хорошим проводником. JAVA - хорошо спланированный парк, в котором есть четкие указатели, постриженные газоны, дорожки. Приятно гулять и очень удобно. |
|||
|
||||
ElectricalStorm |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 547 Регистрация: 22.1.2004 Репутация: нет Всего: 9 |
чистый пиар Микрософт !!! и обсалютная неправда ! -------------------- Нужно знать инструмент, которым пользуешься |
|||
|
||||
ElectricalStorm |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 547 Регистрация: 22.1.2004 Репутация: нет Всего: 9 |
Люди пишите на java не бойтесь вы не будет cплошного Мелкософта никогда
если мы все будем писатьна java .NET вообще умрет !!! ура да здравстует java ........... ![]() я пиарщик тоже ![]() -------------------- Нужно знать инструмент, которым пользуешься |
|||
|
||||
C'hoosen++ |
|
||||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 21.1.2004 Репутация: нет Всего: нет |
to AntonSaburov:
Это в Чикаго, а у нас то как ? to __vi:
Это врятли! (но .NET возьму) to ElectricalStorm: Никакого пиара! Просто .NET действительно мощная платформа. Пусть пока молодая, с ошибками и недоработками, но через некоторое время она обгонит Java (это точно!).
Кто кого боится, а? Хватит играть в эти монопольные игры, пиши на чем хочем и не думай о том кто его создал! Лично я за .NET! ![]() Это сообщение отредактировал(а) C'hoosen++ - 12.2.2004, 14:28 |
||||||
|
|||||||
ElectricalStorm |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 547 Регистрация: 22.1.2004 Репутация: нет Всего: 9 |
Ok ! А я за Java -------------------- Нужно знать инструмент, которым пользуешься |
|||
|
||||
AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 6 Всего: 118 |
А у нас пока никак ![]() У нас пока только базы данных для России пишут. Т.е. всем интересен Oracle, MS SQL. И средства разработки, причем типа "плюх энд плюй" - т.е. Delphi, VB. Теперь еще .NET. Можно быстро накидать всякого барахла на форму, обработать кнопочки. И готово. Если говорить за Россию, то из-за полной бесплатности .NET и Винды для нас это удобно. Но вообщем хотелось бы как-то ближе к цивилизованному рынку подвигаться. |
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
По поводу делегатов (.NET) vs. листенеры (JAVA), специально для Domestic Cat:
Делегат инкапсулирует в себе ссылку на объект и метод класса объекта (мультикаст-делегаты инкапсулируют несколько ссылок), за счёт этого можно в одном объекте публиковать несколько событий (именованных делегатов), чего нельзя достичь используя один "плоский" список, хранящий ссылки на листенеры. Другое достоинство делегатов vs. листенеры: насколько я понял, класс поддерживающий события в JAVA, наследуется от некоего базового класса, поправьте меня если я не прав. В .net наследоваться ни от чего не нужно: подписать можно любой класс на события любого другого класса. -------------------- ![]() |
|||
|
||||
batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 1 Всего: 151 |
Не совсем. Для реализации листенера нужно не наследовать, а реализовать интерфейс. Это не одно и тоже. Любой класс (унаследованный от чего угодно) декларирует, что он имеет определенные методы для обработки событий определенного типа. Это сообщение отредактировал(а) Lamer George - 7.4.2005, 10:07 -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
Наследование или реализация интерфейса у листенера - в любом случае, это "надстройка" над собственным интерфейсом объекта, а в случае с делегатами ВСЯ логика (список подписчиков, вызов их методов) спрятана внутри делегата. -------------------- ![]() |
|||
|
||||
Domestic Cat |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 9 Всего: 172 |
http://forum.vingrad.ru/index.php?act=ST&f...=47926&unread=1
Тут я не совсем понял. Ты делаешь несколько делегатов, при при наступлении определенного события можешь вызвать все методы. Только это скрыто от тебя. В Java регистрируются листенеры, при наступлении события на каждом вызывается определенный метод. Вроде то же самое.
Происходит вот что: делается интерфейс, например, ValueChangeListener, с методом, например, valueChanged(). Класс, который хочет слушать такие ивенты, обязан наследовать от этого интерфейса и имплементировать этот метод. Тот, кого должны слушать, имеет обычно методы типа addValueChangeListener(ValueChangeListener v), removeValueChangeListener(ValueChangeListener v). Все листенеры хранятся в коллекции, если наступает ивент, на каждом вызывается метод valueChanged. Естественно, стандартные ГУИ и проч листенер-интерфейсы уже существыют, потому с ними так же просто, как и со стандартными .НЕТ делегатами. Для юзер-дефайнед листенеров - можно написать самому (это дольше, чем пользовать делегат), или воспользоваться одним из стандартных "общих" листенеров. Для меня отличие в том, что я понимаю листенеры полностью; а вот что же передается делегату - загадка ![]() Но : для меня разницы особой нет, что там, что тут пользую одинаково, особых сложностей нигде не вижу. -------------------- |
||||
|
|||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |