Модераторы: 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   Вверх
arilou
Дата 27.4.2005, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


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

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



Цитата(alir @ 25.4.2005, 21:13)
Народ, расскажите как в .net организована переносимость. Т.е., например, в java после компиляции получаем байт-код, исполняемый после JMV (все знают), но в .net получаютя *.exe под win'ду, которые естесвенно не переносятся.


Интересно то, что никто так и не ответил на первоначальный вопрос, поэтому я возьму на себя такую смелость smile

Фишка .NET в общем, и Моно в данном случае, заключается как раз в том, что EXE-файлы, скомпилированные под Microsoft .NET framework под Виндой, запускаются в Linux при помощи Моно без перекомпиляции. Я не слишком силен в линуксовой терминологии, но реализуется это с помощью:
1) Запуска EXE приложения из командной строки с помощью mono <path to exe>
2) Включением загрузчика PE-файлов в ядро Линукса. Вроде как можно либо перекомпилить ядро с поддержкой PE-загрузчика, либо включить его как модуль.

Таким образом, переносимость реализуется, так как и Mono и MS.NET C# компиляторы производят IL-код, а компилируется в машинный он в момент запуска. Если же вы используете утилиту ngen для создания предкомпилированного image'a, то уже, естественно, в других ОСях он не пойдет.

Вот.


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
redrick
Дата 27.4.2005, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



alir
Цитата

Цитата 
Так что не будет .НЕТ(с)Микрософт для линуха, не потому что МС этого не может сделать, а потому что это ей невыгодно...


Конечно невыгодно, это все понимают. Но, я слышал про какую-ту реализацую под FreeBSD (не mono). Кто-нить знает?


http://www.microsoft.com/downloads/details...&displaylang=en

- бай МС, заметьте. Ну и что что писали его в HP по заказу МС =)




--------------------
Имею Мнение Хрен Оспоришь   
PM MAIL ICQ   Вверх
AntonSaburov
Дата 27.4.2005, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


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

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



Цитата(arilou @ 27.4.2005, 14:39)
Таким образом, переносимость реализуется, так как и Mono и MS.NET C# компиляторы производят IL-код, а компилируется в машинный он в момент запуска.

А библиотеки тоже все реализованы ?
Фишка как раз не в том, чтобы сделать виртуальную машину - это как раз не так уж и сложно имея спецификацию. Парси байт-код, выбирай команды и аргументы и делай под них нативный код. Т.к. команд не так уж и много (базовых) то вообщем-то это не проблема.

А вот библиотеки все портировать - это вам не фунт изюма. Тот же Delphi (да даже VC) имел ИСХОДНИКИ. А где вы видели исходники для .NET ? Значит все на собственном энтузазизме. А значит будет всегда отставание. А значит при выборе платформы всегда будет отдаваться предпочтение NET под Винду, как более полной и тестированной системе.

Да, несомненно можно будет Mono использовать, но это будет что-то вроде J2SE и J2ME - вообщем-то одинаково JAVA но реализовано не все во втором случае.
И я не удивлюсь, если тот же MS как-то спонсирует Mono - только для того, чтобы все даже под Юниксом перешли на .NET а потом, когда аппетит вырастет появилось желание перейти на Винду. Вот вам и результат.
PM MAIL WWW ICQ   Вверх
arilou
Дата 27.4.2005, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


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

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



Цитата(AntonSaburov @ 27.4.2005, 15:56)
А библиотеки тоже все реализованы ?

не все, но благополучно редиректятся вызова на System.* в Mono.*


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
Exception
Дата 27.4.2005, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(AntonSaburov @ 27.4.2005, 16:56)
А где вы видели исходники для .NET ?

А ты рефлектора чтоли не видел(?)
PM   Вверх
redrick
Дата 27.4.2005, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Run-time error
Цитата

Цитата (AntonSaburov @ 27.4.2005, 16:56)
А где вы видели исходники для .NET ?

А ты рефлектора чтоли не видел(?)


ну рефлектор это мягко говоря не исходники...

а вот проигнорированный (или я млость туплю ??? ) ротор - самый что ни на есть исходник, правда не самого MS Framework конечно - но всё по спецификации


--------------------
Имею Мнение Хрен Оспоришь   
PM MAIL ICQ   Вверх
alir
Дата 27.4.2005, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата
А ты рефлектора чтоли не видел(?)

Там только исходники библиотеки.

Ксати, если MS делали .net только под винду (а так и есть), то смысл было разрабатывать виртуальную машину и лишь уменьшать производительность, а не на прямую. По-моему этим они добились лишь двух вещей:
1) многоязычность (но сами знаете, что кроме C# все остально лишь реклама)
2) написание программ с защитным кодом (но это опытным прграммистам вообще не нужно).

И все... Зачем тогда все эти трудности? IL, JIT и т.д. - насоздавали всякого, нафиг...
PM MAIL ICQ   Вверх
mr.DUDA
Дата 28.4.2005, 07:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Модератор: последние 2 страницы были перемещены из темы "Как организована переносимость в .net" сюда, т.к. все ответы свелись к сравнению JAVA vs .NET. Ещё раз обращаю внимание всех участников на первое сообщение данной темы:

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



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


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


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

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



Господа, Domestic Cat в параллельном топике в разделе Java дал линки на пару статей по поводу Java и .NET. Прошу помочь разобраться с некоторыми моментами.

http://forum.vingrad.ru/index.php?showtopi...ndpost&p=412669


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


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


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

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



Вот, недавно начата работа над портом движка OGRE под .NET: вот одна ветка форума и вот другая ветка.
Это всё работает, и показывает мощь .NET в плане переноса существующих C++'нутых исходников под платформонезависимую оболочку, позволяющую программить как под C++, так и под C#, VB, и кучу других языков, с минимальными затратами по производительности и времени разработки. smile


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


Вселенский отказник
****


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

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



Цитата
JAVA или .NET ?

а почему или
J# - не выход? (ногами не бить, спросил, чтобы узнать побольше про J#)


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
arilou
Дата 23.8.2005, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


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

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



Цитата(nerezus @ 23.8.2005, 17:28)
J# - не выход?

Чессно скажу, у нас в Минске я не встречал НИ разу, чтобы кому-то был нужен специалист по J#, а на .NETчиков спрос большой. Или C#, или VB.NET. Так что делайте свой выбор smile smile


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
nerezus
Дата 23.8.2005, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


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

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



arilou
Цитата
а на .NETчиков спрос большой.

а разве J# - не .NET?


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
batigoal
Дата 23.8.2005, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(nerezus @ 23.8.2005, 19:36)
а разве J# - не .NET?

А разве он реально используется? smile


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


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


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

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



Цитата(Lamer @ 23.8.2005, 21:41)
А разве он реально используется?

Используется, если есть либа, целиком написанная на Java, и нужен порт на .NET.


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

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


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

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


 




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


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

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