Здравствуйте, Awaken, Вы писали:
A>если бы в Java присутсововало прозрачное взаимодействие с COM, A>возможно не было бы нужды для M$ выдумывать .NET
В самую точку. Действительно — основная причина появления .NET это то что МС оттерли от джавы. А причина этого в боязни сана выпускать управление java из своих рук.
Здравствуйте, AndrewVK, Вы писали:
AVK>Здравствуйте, Awaken, Вы писали:
A>>если бы в Java присутсововало прозрачное взаимодействие с COM, A>>возможно не было бы нужды для M$ выдумывать .NET
AVK>В самую точку. Действительно — основная причина появления .NET это то что МС оттерли от джавы. А причина этого в боязни сана выпускать управление java из своих рук.
Net. koncepciya java eto krosplatformennost i chistota tehnologii.
COM eto narushaet.
Здравствуйте, Magister, Вы писали:
M>Net. koncepciya java eto krosplatformennost i chistota tehnologii.
Эта замечательная концепция вышла на первое место когда поняли что джава на десктопе мягко говоря неадекватна. На заре становления никто на многоплатформенности сильно внимание не заострял. Так что write once run everywhere появилось попозже.
M>COM eto narushaet.
СОМ тоже многоплатформенная технология, если ты не знал.
Здравствуйте, AndrewVK, Вы писали:
AVK>Здравствуйте, Magister, Вы писали:
M>>Net. koncepciya java eto krosplatformennost i chistota tehnologii.
AVK>Эта замечательная концепция вышла на первое место когда поняли что джава на десктопе мягко говоря неадекватна. На заре становления никто на многоплатформенности сильно внимание не заострял. Так что write once run everywhere появилось попозже.
M>>COM eto narushaet.
AVK>СОМ тоже многоплатформенная технология, если ты не знал.
cONST>COM — межплатформенная? Смешно! представь себе COM-сервер в Линукс!!! Что? Не получается? То-то же... А Java-апплет в Линуксе работает даже лучше, чем под Виндами . Может, ты с CORBA перепутал? Так её, насколько я знаю, Java поддерживает... Вообще, MS, кажется, начали сам язык менять, вот САН на них и обиделась... и в суд подала...
Здравствуйте, AndrewVK, Вы писали:
AVK>Эта замечательная концепция вышла на первое место когда поняли что джава на десктопе мягко говоря неадекватна. На заре становления никто на многоплатформенности сильно внимание не заострял. Так что write once run everywhere появилось попозже.
А по-моему многоплатформенность в нее с самого начала закладывалась...
P.S.
И вообще после некоторого ознакомления с Java/.NET + чтение форума .NET сложилось впечатление, что Java писали гении ( красивый язык, и, на мой взгляд, очень красиво построенная стандартная библиотека классов ), а .NET — куча работяг/кодеров, которые насмотрелись чужих идей. Вобщем не нравится мне .NET .
Здравствуйте, AndrewVK, Вы писали:
AVK>Здравствуйте, cONST-od, Вы писали:
AVK>Почему ж не получается? Очень даже получается. В общем рекомендую ознакомится со спецификацией СОМ.
Позволю себе не согласиться. Да, спецификации есть. А смысл?
Нарисуйте плз хотя бы теоретическую схему, как без использования байткода заставить работать одни и те же модули в разных средах, на разных процессорах. И это только одна из проблем.
Да, для DCOM например есть стандарт. Но толку-то, если не получаем основного плюса межплатформенности и надо всё равно сервера пересобирать под каждую платформу? И тестировать по-новой, что самое главное. И релизить отдельно?
Здравствуйте, WFrag, Вы писали:
WF>И вообще после некоторого ознакомления с Java/.NET + чтение форума .NET сложилось впечатление, что Java писали гении ( красивый язык, и, на мой взгляд, очень красиво построенная стандартная библиотека классов ), а .NET — куча работяг/кодеров, которые насмотрелись чужих идей.
Иначе говоря — "Microsoft". То, что они пишут, работает, но как обычно.
Здравствуйте, Awaken, Вы писали:
A>если бы в Java присутсововало прозрачное взаимодействие с COM, A>возможно не было бы нужды для M$ выдумывать .NET
MS когда придумало .Net убило сразу много зайцев. В том числе, было и желание у них покончить с межязыковой неразберихой. COM отчасти решает эту проблему, но очень, очень и очень не эффективно по сравнению с тем, как это сделано в .Net. Стоит посмотреть хотя бы на производительность VB, который очень часто неявно прибегает к использованию COM. К тому же COM гораздо сложнее реализовавать программисту, чем использовать аналогичные механизмы в .Net (я имею ввиду переиспользование компонентов написаных на разных языках).
Ещё один момент — в .Net кроссплатформеность это скорее возможность легко перенести всю платформу MS на другое железо, а не возможность исполнения под другой операционкой. Это особенно актуально для MS в контексте грядущего перехода на 64 битные платформы. А в Java как раз наоборот — это в первую очередь независимость от операционки.
Единственное, где MS может пойти на компромис — это встраиваемые устройства. Как мне кажется, тут MS имеет смысл сделать .Net Compact Framework на других платформах, иначе они не конкуренты для Java.
Из разной ориентированности этих платформ вытекает и кривость Java на десктопе, и элегантвость .Net на тех же задачах.
И ещё хотелось бы ответить на мнение, высказаное в этом треде, что .Net сделана криво — у меня сложилось противоположное мнение. .Net красиво и элегантно реализована, по крайней мере по сравнению с другими их продуктами Если сравнивать с Java, то это очень большая тема. И некорректно говорить, что кто-то из них крив, а кто-то нет. Они просто разные.
Здравствуйте, Бабокин Дмитрий, Вы писали:
БД>И ещё хотелось бы ответить на мнение, высказаное в этом треде, что .Net сделана криво — у меня сложилось противоположное мнение. .Net красиво и элегантно реализована, по крайней мере по сравнению с другими их продуктами Если сравнивать с Java, то это очень большая тема. И некорректно говорить, что кто-то из них крив, а кто-то нет. Они просто разные.
Не соизволите ли объяснить чайнику всю глубину разницы между .NET и Java в плане того, что они применимы в разных областях, и поэтому их нельзя сравнивать?
cONST>>COM — межплатформенная? Смешно! представь себе COM-сервер в Линукс!!! Что? Не получается? То-то >е... А Java-апплет в Линуксе работает даже лучше, чем под Виндами . Может, ты с CORBA перепутал?
DCOM под UNIX существует. и по отзывам очень хорошо работает
D>Нарисуйте плз хотя бы теоретическую схему, как без использования байткода заставить работать одни и >те же модули в разных средах, на разных процессорах. И это только одна из проблем.
C/C++ + make. см. Orbakus — кросс-платформный корба-сервер, написан на C++ и Java поставляется в исходниках
Здравствуйте, WFrag, Вы писали:
WF>Здравствуйте, AndrewVK, Вы писали:
AVK>>Эта замечательная концепция вышла на первое место когда поняли что джава на десктопе мягко говоря неадекватна. На заре становления никто на многоплатформенности сильно внимание не заострял. Так что write once run everywhere появилось попозже.
WF> WF>А по-моему многоплатформенность в нее с самого начала закладывалась...
WF>P.S. WF>И вообще после некоторого ознакомления с Java/.NET + чтение форума .NET сложилось впечатление, что Java писали гении ( красивый язык, и, на мой взгляд, очень красиво построенная стандартная библиотека классов ), а .NET — куча работяг/кодеров, которые насмотрелись чужих идей. Вобщем не нравится мне .NET .
Хм... А как на Java будет выглядеть функция swap для двух целых чисел?
Это к вопросу о красоте..
Не нужно спорить, что красиво и продумано, а что нет,
но бесспоно что именно в плане языка, разработчики .NET учли множество
неприятностей, которые имеются в Java и обошли их..
Хотя в плане библиотек они от Java пока что отстают, особенно в плане кросс-платформенных библиотек..
Здравствуйте, Бабокин Дмитрий, Вы писали:
БД>Здравствуйте, vvaizh, Вы писали:
V>>Хм... А как на Java будет выглядеть функция swap для двух целых чисел?
БД>Поясни, пожалуйста, для не особо сообразительных как это будет выглядеть на Java и в .Net,
БД>PS В байт коде Java, кстати, swap есть, в отличии от .Net
Я не знаю, что там в байт коде Java..
Но на C# такой код возможен (за корректность не ручаюдсь,
так как изучал C# всё больше по учебникам, да писал небольшие
утилитки для себя, но фишку просёк сразу):
void swap(ref int a, ref int b)
{
int tmp= a;
a= b;
b= tmp;
}
int a= 1;
int b= 2;
swap(a,b);
А вот как написать такое на Java, мне никто пока не сказал,
несмоттря на мой 2-х годичный опыт с этим языком
Здравствуйте, vvaizh, Вы писали:
V>Хм... А как на Java будет выглядеть функция swap для двух целых чисел? V>Это к вопросу о красоте.. V>Не нужно спорить, что красиво и продумано, а что нет, V>но бесспоно что именно в плане языка, разработчики .NET учли множество V>неприятностей, которые имеются в Java и обошли их..
V>Хотя в плане библиотек они от Java пока что отстают, особенно в плане кросс-платформенных библиотек..
Swap — это не существенно.
Я имел в виду библиотеку Java глобально. Ты писал GUI под Java (Swing)? В нем конечно (к сожалению) осталось много наследия от старых версий Java + сильна коррелированность с AWT, но тем не менее это лучшая GUI-библиотека которую я видел. Да, она может быть и не супер скоростная (хотя скорость вполне приемлема, смотри NetBeans), но она необычайно гибкая. Вот это меня в Java больше всего и восхищает — гибкость и продуманность библиотеки при простоте языка. И при этом обычно нет необходимости писать native код.
А теперь глянь форум .NET, там дофига проблем со всякими контролами предлагают решать просто: DllImport, и.т.д. Вполне возможно, что через n лет .NET приобретет красоту Java, но скорее всего этого не будет, слишком тяжело наследие...
Java и .NET — это как Mercedes и Жигуль, функциональность та же, но на Mercedes даже смотреть приятнее.
P.S. А еще мне названия MS-овские не нравятся. И названия методов с большой буквы.
P.P.S В общем это мнение — это мнение эстета внутри меня. Если мне понадобится писать под .NET — чтож, буду писать...
P.P.S Кстати, к теме топика: и слава богу, что убили
Здравствуйте, cONST-od, Вы писали:
cONST>>COM — межплатформенная? Смешно! представь себе COM-сервер в Линукс!!! Что? Не получается? То-то же... А Java-апплет в Линуксе работает даже лучше, чем под Виндами . Может, ты с CORBA перепутал? Так её, насколько я знаю, Java поддерживает... Вообще, MS, кажется, начали сам язык менять, вот САН на них и обиделась... и в суд подала...
Никак не написать, это вопрос из той же серии почему класс String в Java сделан final… Где-то в инете (помоему на JavaPower) объясняется, что это сделано по соображениям безопасности.
Здравствуйте, WFrag, Вы писали:
WF> Java и .NET — это как Mercedes и Жигуль, функциональность та же, но на Mercedes даже смотреть приятнее.
Java — это Mercedes ? Ну тогда очень медленный.
Здравствуйте, WFrag, Вы писали:
V>>Хотя в плане библиотек они от Java пока что отстают, особенно в плане кросс-платформенных библиотек.. WF> Swap — это не существенно. WF> Я имел в виду библиотеку Java глобально. Ты писал GUI под Java (Swing)? В нем конечно (к сожалению) осталось много наследия от старых версий Java + сильна коррелированность с AWT, но тем не менее это лучшая GUI-библиотека которую я видел. Да, она может быть и не супер скоростная (хотя скорость вполне приемлема, смотри NetBeans), но она необычайно гибкая. Вот это меня в Java больше всего и восхищает — гибкость и продуманность библиотеки при простоте языка. И при этом обычно нет необходимости писать native код.
Кросплатформенность это, конечно, хорошо, но главное результат, который видит пользователь у себя на экране. В случае Java результат этот просто ужасен. Почему не пишут настольные приложения в первую очередь на Java? А? Потому что домохозяйка открывает эксплорер или ворд, и ей совершенно до фени на кросплатформенность, ей нужно чтобы всё было красиво! Красиво! Пусть программист рвёт задницу и программирует хоть на ассемблере, но всё должно быть красиво и блестеть. Вот тут-то Java и отдыхает.
Re[8]: Зачем "убили" майкрософтовскую JVM?
От:
Аноним
Дата:
26.02.03 15:06
Оценка:
Здравствуйте, VCoder, Вы писали:
WF>> Java и .NET — это как Mercedes и Жигуль, функциональность та же, но на Mercedes даже смотреть приятнее. VC>Java — это Mercedes ? Ну тогда очень медленный.
Здравствуйте, Бабокин Дмитрий, Вы писали:
БД>Здравствуйте, WFrag, Вы писали:
БД>Кросплатформенность это, конечно, хорошо, но главное результат, который видит пользователь у себя на экране. В случае Java результат этот просто ужасен. Почему не пишут настольные приложения в первую очередь на Java? А? Потому что домохозяйка открывает эксплорер или ворд, и ей совершенно до фени на кросплатформенность, ей нужно чтобы всё было красиво! Красиво! Пусть программист рвёт задницу и программирует хоть на ассемблере, но всё должно быть красиво и блестеть. Вот тут-то Java и отдыхает.
Я еще согласен с тем, что Java не блещет по скоростным меркам... Но по красоте — на Java можно слепить любой GUI (не хуже любого из существующих), какой тебе только захочется. И после этого свободно менять L&F, на любой, какой приглянется.
А приложения на Java не пишут скорее всего из-за боязни получить нечто дико тормозное.
Вот, насчет L&F:
Scott Violet: This isn't really performance-related, but it's worth mentioning that Swing will finally support an XP look and feel in 1.4.2, as well as a GTK look and feel!
P.S. Короче, ждем Java 1.4.2 и 1.5, в них обещают над производительностью Swing-а сильно поработать (в том числе улучшить поддержку аппаратного ускорения Graphics2D)...
Здравствуйте, Бабокин Дмитрий, Вы писали:
БД>Кросплатформенность это, конечно, хорошо, но главное результат, который видит пользователь у себя на экране. В случае Java результат этот просто ужасен. Почему не пишут настольные приложения в первую очередь на Java? А? Потому что домохозяйка открывает эксплорер или ворд, и ей совершенно до фени на кросплатформенность, ей нужно чтобы всё было красиво! Красиво! Пусть программист рвёт задницу и программирует хоть на ассемблере, но всё должно быть красиво и блестеть. Вот тут-то Java и отдыхает.
А почему собственно? Оно и в 1.3 metal l&f неплохо выглядел, а в 1.4 и метал стал симпатичнее и виндовый стал божеский. Особые извращенцы всегда могут написать свой l&f. У свинга другая проблема — тормозной он.
Здравствуйте, vvaizh, Вы писали:
V>>>Хм... А как на Java будет выглядеть функция swap для двух целых чисел?
V>А вот как написать такое на Java, мне никто пока не сказал, V>несмоттря на мой 2-х годичный опыт с этим языком
V>Даже если использовать Integer а не int..
К слову. Когда мне надо было на Java передавать переменные по ссылке, я использовал массивы. И swap на Java можно написать в таком виде.
void swap(int[] a, int[] b) {
int t = a[0];
a[0] = b[0];
b[0] = t;
}
// использованиеint[] x = new int[] { 10 };
int[] y = new int[] { 13 };
swap(x, y);
Правда, приходилось заранее предусматривать возможность передачи по ссылке и изначально хранить значения в массивах. Несколько неудобно, но если этим не злоупотреблять, то терпимо.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, vvaizh, Вы писали:
V>>>>Хм... А как на Java будет выглядеть функция swap для двух целых чисел?
V>>А вот как написать такое на Java, мне никто пока не сказал, V>>несмоттря на мой 2-х годичный опыт с этим языком
V>>Даже если использовать Integer а не int..
А>К слову. Когда мне надо было на Java передавать переменные по ссылке, я использовал массивы. И swap на Java можно написать в таком виде. А>
А>void swap(int[] a, int[] b) {
А> int t = a[0];
А> a[0] = b[0];
А> b[0] = t;
А>}
А>// использование
А>int[] x = new int[] { 10 };
А>int[] y = new int[] { 13 };
А>swap(x, y);
А>
А>Правда, приходилось заранее предусматривать возможность передачи по ссылке и изначально хранить значения в массивах. Несколько неудобно, но если этим не злоупотреблять, то терпимо.
Получай приз, за самое короткое решение, которое мне предлагали (смотри ка ты, даже строчек столько же, сколько в C#)
Но согласись — именно в плане языка на C# красивее.. (это возвращаясь к началу трэда)
А теперь приведите мне такой же пример на Java, чтобы это было через жопу в C#
(библиотеки не предлагать, это не часть языка, и уж слишком разные, чтобы сравнивать..)
Здравствуйте, vvaizh, Вы писали:
V>Получай приз, за самое короткое решение, которое мне предлагали (смотри ка ты, даже строчек столько же, сколько в C#)
V>
V>Но согласись — именно в плане языка на C# красивее.. (это возвращаясь к началу трэда)
V>А теперь приведите мне такой же пример на Java, чтобы это было через жопу в C# V>(библиотеки не предлагать, это не часть языка, и уж слишком разные, чтобы сравнивать..)
Да, с точки зрения возможностей языка Java, видимо, слабее. Просто у Sun концепция такая, что язык должен быть максимально простым.
Здравствуйте, WFrag, Вы писали:
WF>Здравствуйте, AndrewVK, Вы писали:
AVK>>Эта замечательная концепция вышла на первое место когда поняли что джава на десктопе мягко говоря неадекватна. На заре становления никто на многоплатформенности сильно внимание не заострял. Так что write once run everywhere появилось попозже.
WF> WF>А по-моему многоплатформенность в нее с самого начала закладывалась...
Закладывалась но в основном для embeded применений, а ПиСюки они уже потом привинтили.
WF> Я имел в виду библиотеку Java глобально. Ты писал GUI под Java (Swing)? В нем конечно (к сожалению) осталось много наследия от старых версий Java + сильна коррелированность с AWT, но тем не менее это лучшая GUI-библиотека которую я видел. Да, она может быть и не супер скоростная (хотя скорость вполне приемлема, смотри NetBeans), но она необычайно гибкая. Вот это меня в Java больше всего и восхищает — гибкость и продуманность библиотеки при простоте языка. И при этом обычно нет необходимости писать native код.
WF> А теперь глянь форум .NET, там дофига проблем со всякими контролами предлагают решать просто: DllImport, и.т.д. Вполне возможно, что через n лет .NET приобретет красоту Java, но скорее всего этого не будет, слишком тяжело наследие...
DllImport используется чтоб не изобретать велосипед и каждый раз не писать самому все контролы, а взять готовые и проработаные не один год, поэтому это и называется взаимодействие с унаследованым кодом, что бы сохранить инвестиции обеспечить приемственность технологий, обеспечить юзеру привычный интефейс наконец, никто же тебе не мешает неписать полностью на шарпе свой TreeView, но вопрос за сколько времени, какого качества, с какой функциональностю, в Яве такой импорт или невозможно или сложно, сделать поэтому все делают закат сонца вручную.
Здравствуйте, cONST-od, Вы писали:
cONST>>COM — межплатформенная? Смешно! представь себе COM-сервер в Линукс!!! Что? Не получается? То-то же... А Java-апплет в Линуксе работает даже лучше, чем под Виндами . Может, ты с CORBA перепутал? Так её, насколько я знаю, Java поддерживает... Вообще, MS, кажется, начали сам язык менять, вот САН на них и обиделась... и в суд подала...
Линух это ёщё не весь спектр платформ, тем более солидные конторы предпочитают пока UNIXы, а там COM/DCOM давно реализирован и работает получше CORBA, если ты не знаеш то Майкрософт очень даже много софта именно для Юниксов делает.
Полностью поддерживаю. Суть .NET в том что он довольно хорошо вписывается в существующую инфраструктуру и обеспечивает плавный переход на неё. С Явой этого мы не наблюдаем. НЕТ позициируется как главное средство разработки прикладных програм для Виндовса почти для всех применений на ближайшие несколько лет, тоисть охват рынка всех Виндовс-совместимых сисьем, а в области настольного компютинга у Форточек около 90% рынка, Яве такие показатели и не снились, из чего следует что хочеш не хочеш, а если будеш писать для Форточек придётся учить ДотНет.
Здравствуйте, Stoune, Вы писали:
S>Здравствуйте, Бабокин Дмитрий, Вы писали: БД>... S>Полностью поддерживаю. Суть .NET в том что он довольно хорошо вписывается в существующую инфраструктуру и обеспечивает плавный переход на неё.
Для десктопов. В серверном гетерогенном мире — наоборот.
.Net пока ещё в младенческом возрасте по сравнению с J2EE и CORBA. О гетерогенных распределённых системах, сделанных на .Net лучше не заикаться.
S>С Явой этого мы не наблюдаем.
Смысл Явы на десктопах? Ну сделали Swing, чтобы знали: возможно красивое и функциональное GUI; ну сделали SWT для Eclipse, чтобы знали: можно быстрое GUI. Ну и что? Это кому-нибудь (кроме программистов) нужно?
S>НЕТ позициируется как главное средство разработки прикладных програм для Виндовса почти для всех применений на ближайшие несколько лет, тоисть охват рынка всех Виндовс-совместимых сисьем, а в области настольного компютинга у Форточек около 90% рынка, Яве такие показатели и не снились, из чего следует что хочеш не хочеш, а если будеш писать для Форточек придётся учить ДотНет.
Здравствуйте, mihailik, Вы писали:
S>>С Явой этого мы не наблюдаем.
ZEN>Смысл Явы на десктопах?
M>Это ты у Sun спроси, нафига они его на десктопах продвигали.
Ну сейчас-то всё замечательно смотрится... Так ведь? Не то что 2-3 года назад.
Я же говорил: Java прорвётся на десктопы! Кто хочет — тот её туда использует, кто не хочет — сила привычки сильнее, уж извините, на Delphi будет всё ещё ваять GUI к Oracle.
(NetBeans сейчас тормозит только на Celeron-ах...На AMD — летает (не знаю почему).)
ZEN>Я же говорил: Java прорвётся на десктопы! Кто хочет — тот её туда использует, кто не хочет — сила привычки сильнее, уж извините, на Delphi будет всё ещё ваять GUI к Oracle.
Ну и слава богу . Хотя я лично приверженец дотнета
ZEN>(NetBeans сейчас тормозит только на Celeron-ах...На AMD — летает (не знаю почему).)
В таких хитромудрых архитектурах, как дотнет и java, много зависит от параметров кеша, латентности очереди команд и т.п. Сейчас java уже не интерпретируется, а компилируется во многих случаях, и это только усложняет зависимость от архитектуры.
Кстати, я как-то делал тест делегатов дотнетовских, он тоже как-то специфически менял картину на P4.
Здравствуйте, shmakov, Вы писали:
S>Кончаем спорить JVM и CLR по сути одно и тоже, и есть преобразователи из байт-кодов JVM в CLR и обратно, причем без потери функциональности.
Ну-ка, ну-ка, в этом месте поподробнее. Я бы сказал, что это очень сильное утверждение, что можно туда и обратно без потери функциональности... Точнее Java -> .Net можно, а вот обратно геморно. Очень хотелось бы увидеть такие продукты про которые ты говоришь — буду очень принателен за ссылочки на любую инфу по этому вопросу.
Здравствуйте, WFrag, Вы писали:
WF>А по-моему многоплатформенность в нее с самого начала закладывалась...
Нет, почитайте историю создания от Гослинга и Нотона. WF>P.S. WF>И вообще после некоторого ознакомления с Java/.NET + чтение форума .NET сложилось впечатление, что Java писали гении (красивый язык, и, на мой взгляд, очень красиво построенная стандартная библиотека классов )
Ага, а только не до конца продуманная. На мой взгляд, массивы в Яве остались исключительно как дань традиции. Нафига они там нужны, если есть реализованный вектор? Или наоборот — зачем тогда вектор, если есть массив. От структуры-то совсем отказались. Можно привести и еще ряд несообразностей.
Хотя не спорю, некоторые вещи мне самому понравились. Отказ от указателей, например, отказ от множественного наследования и интерфейсы, явный final и finally. Библиотека богатая, конечно. Но написана тоже несколько беспорядочно. Особенно первые версии, с которыми мне пришлось иметь дело, когда литературы почти не было. Недаром они ее переделывали потом, особенно диалоговую часть. WF>а .NET — куча работяг/кодеров, которые насмотрелись чужих идей. Вобщем не нравится мне .NET .
Ну, этого хватает с обоих сторон! Идея байт-кода — она ой-ой-ой как давно реализована! Я помнится, писал еще на бэсм-6 на языке АЛМО. А все трансляторы переводили на АЛМО. Да и синтаксис слизан с С/С++ явно из маркетинговых соображений — легче мир завоевать с таким синтаксисом.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
LVV>Ага, а только не до конца продуманная. На мой взгляд, массивы в Яве остались исключительно как дань традиции. Нафига они там нужны, если есть реализованный вектор?
Перфоманс однако не тот.
LVV> Или наоборот — зачем тогда вектор, если есть массив.
Вектор может на ходу менять размер, массив нет. И вобще про вектор лучше не поминать, deprecated. Теперича рулит ArrayList.
LVV>они ее переделывали потом, особенно диалоговую часть.
В смысле GUI? Они не переделывали, AWT так и остался практически в первозданном виде, они прикрутили поверх него свинг.
Здравствуйте, AndrewVK, Вы писали:
LVV>>Ага, а только не до конца продуманная. На мой взгляд, массивы в Яве остались исключительно как дань традиции. Нафига они там нужны, если есть реализованный вектор? AVK>Перфоманс однако не тот. LVV>> Или наоборот — зачем тогда вектор, если есть массив. AVK>Вектор может на ходу менять размер, массив нет. И вобще про вектор лучше не поминать, deprecated. Теперича рулит ArrayList.
Ну понятно, что если две конструкции (а их уже больше значительно!!!), то и по-разному работают. Вопрос, однако, в принципе. Если уж делать новый язык, то вообще одна единственная конструкция должна быть — контейнер. А уж его свойства определяют, фиксированной он длины или переменной, однотипные у него элементы или нет. Сохраняемый он или нет.
LVV>>они ее переделывали потом, особенно диалоговую часть. AVK>В смысле GUI? Они не переделывали, AWT так и остался практически в первозданном виде, они прикрутили поверх него свинг.
Тут я как-то влез в форум по Яве посмотреть, что народ пишет. Про свинг было ТАКОЕ написано!!! В общем, не свинг, а сплошное свинство. Извините, если задел чьи-то чувства.
Ява — еще один обычный язык программирования. Да, фишка — переносимый. Но и это уже было. И еще много раз будет. Ничего существенно нового в нем не видать. Говорить, что его делали гении — ИМНО явный перебор
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
LVV>Ну понятно, что если две конструкции (а их уже больше значительно!!!), то и по-разному работают. Вопрос, однако, в принципе.
Это именно принцип — массив это структура в памяти, а вектор это полиморфная коллекция. Помоему отличия кардинальные.
LVV>Если уж делать новый язык, то вообще одна единственная конструкция должна быть — контейнер.
Ты забываешь про то что промышленные языки должны давать эффективный код. Если сделать один контейнер то производительность такого чуда будет печальной.
LVV>Тут я как-то влез в форум по Яве посмотреть, что народ пишет. Про свинг было ТАКОЕ написано!!! В общем, не свинг, а сплошное свинство. Извините, если задел чьи-то чувства.
Тормозит. Но архитектура очень красивая. Правда нетривиальная и программисты-мышководители конечно будут ругаться при знакомстве.
LVV>Ява — еще один обычный язык программирования.
Не язык, платформа. И я бы не сказал что такая уж обычная.
LVV>Да, фишка — переносимый. Но и это уже было. И еще много раз будет. Ничего существенно нового в нем не видать. Говорить, что его делали гении — ИМНО явный перебор
Ну про гениев конечно перебор, но очень неплохая платформа, со множеством реализованных неплохих идей.