Re[12]: Немного про .NET
От: ihatelogins  
Дата: 22.08.05 12:24
Оценка:
Здравствуйте, BrainOverflow, Вы писали:

BO>Здравствуйте, ihatelogins, Вы писали:


I>>NET Framework НЕ ОСНОВАНА НА COM. Я не знаю, почему не основана — не основана и всё тут!

BO>ОСНОВАНА НА СОМ, тоже незнаю почему, но основана и всё тут!
BO>

А вообще человек, который не знает то, что CLR НЕ ОСНОВАНА НА COM и пишет свои суждения по поводу "серьёзности" и "несерьёзности" технологии CLR, явно не похож на профессионала.
Re[5]: Немного про .NET
От: EM Великобритания  
Дата: 22.08.05 12:27
Оценка:
Здравствуйте, ihatelogins, Вы писали:

I>Здравствуйте, BrainOverflow, Вы писали:


AG>>>.NET использует COM.

BO>>Кажется не просто использует а она на нём основана.

I>Можно пример "основанности" .net на COM в студию?



CLR это dll-based COM server
Опыт — это такая вещь, которая появляется сразу после того, как была нужна...
Re[12]: Немного про .NET
От: hi_octane Беларусь  
Дата: 22.08.05 12:31
Оценка: +1 -1
Посмотри в исходники, узнаешь что поддержка взаимодействия с COM это мизерная часть всего что есть в .NET. .NET никогда не была "основана" на COM. Обьеты .NET не ведут подсчёт ссылок на себя, не реализуют IUnknown, короче не являются COM обьектами.

Поддержка COM есть во всех языках которые претендуют на то что-бы называться языками программирования под Win. Следуя Твоей логике все они "основаны" на COM. Это бред.
Re: Немного про .NET
От: Glоbus Украина  
Дата: 22.08.05 12:38
Оценка:
Здравствуйте, BrainOverflow, Вы писали:

BO>Чуть больше года я изучал и работал с этой технологией и пришел к выводу, что он пригоден в основном для создания интерфейсов, веб приложений и для баз данных. А для более серьезных вещей он не пригоден. А так С++, STL, COM РУЛЯТ !!!


РЭальные хлопцы пишут на асме

BO>Подправьте если я не прав


Старик, должен тебе сказать — базары типа этот язык крут а этот не крут — прыщавое размазывание кашипо стенке. В "серъезных" задачах вопрос выбора языках отходит на второй-третий план.
Удачи тебе, браток!
Re[6]: Немного про .NET
От: ihatelogins  
Дата: 22.08.05 12:41
Оценка: -1
Здравствуйте, EM, Вы писали:

EM>Здравствуйте, ihatelogins, Вы писали:


I>>Здравствуйте, BrainOverflow, Вы писали:


AG>>>>.NET использует COM.

BO>>>Кажется не просто использует а она на нём основана.

I>>Можно пример "основанности" .net на COM в студию?



EM>CLR это dll-based COM server


Юморист.
Re[2]: Немного про .NET
От: ihatelogins  
Дата: 22.08.05 12:43
Оценка:
Здравствуйте, Glоbus, Вы писали:

G>Старик, должен тебе сказать — базары типа этот язык крут а этот не крут — прыщавое размазывание кашипо стенке. В "серъезных" задачах вопрос выбора языках отходит на второй-третий план.


Ты всерьёз так думаешь? И что это за задачи, где язык программирования отходит на третий план?
Re[2]: Немного про .NET
От: BrainOverflow  
Дата: 22.08.05 12:45
Оценка:
Здравствуйте, Glоbus, Вы писали:

G>Старик, должен тебе сказать — базары типа этот язык крут а этот не крут — прыщавое размазывание кашипо стенке. В "серъезных" задачах вопрос выбора языках отходит на второй-третий план.

В "серъезных" задачах вопрос выбора языка и технологии чуть ли ни самое важное!
Re[2]: Немного про .NET
От: ansi  
Дата: 22.08.05 12:49
Оценка: :)
Здравствуйте, ihatelogins, Вы писали:

I>Здравствуйте, BrainOverflow, Вы писали:


BO>>Чуть больше года я изучал и работал с этой технологией и пришел к выводу, что он пригоден в основном для создания интерфейсов, веб приложений и для баз данных. А для более серьезных вещей он не пригоден. А так С++, STL, COM РУЛЯТ !!!


I>Риальные пацаны всё делают на асме под *nix.


Ну не совсем... Читать последний абзац Re[13]: Почему настоящие программисты избегают C++
Автор: ansi
Дата: 18.02.05
new RSDN@Home(1.1.4, 303) << new Message(); std::head::ear << "DIO — All The Fools Sailed Away";
Re[13]: Немного про .NET
От: BrainOverflow  
Дата: 22.08.05 13:01
Оценка:
I>Слушай, почитай книжку Д.Бокса о внутреннем устройстве CLR. Неохота откровенно хамоватым ламерам объяснять тривиальные вещи.
Неохота или не можешь ? Раз это тривиально, я думаю и объяснить легко хамоватому ламеру. Просто уж очень хочется видеть как ты это сделаешь
Re[13]: Немного про .NET
От: BrainOverflow  
Дата: 22.08.05 13:03
Оценка:
I>А вообще человек, который не знает то, что CLR НЕ ОСНОВАНА НА COM и пишет свои суждения по поводу "серьёзности" и "несерьёзности" технологии CLR, явно не похож на профессионала.
"серьёзность" и "несерьёзность" технологии CLR, где я об этом говорил, я ж не говорил что раз она основана на СОМ то она несерьезна, она серьезна, да и еще как
Re[13]: Немного про .NET
От: BrainOverflow  
Дата: 22.08.05 13:07
Оценка:
_>Поддержка COM есть во всех языках которые претендуют на то что-бы называться языками программирования под Win. Следуя Твоей логике все они "основаны" на COM. Это бред.

Я не говорил что, раз технология поддерживает СОМ значит оно на нем основано, это действительно бред. Будьте внимательнее.
Re[2]: Немного про .NET
От: AlLucky Беларусь Qulix Systems
Дата: 22.08.05 13:43
Оценка: +1
Здравствуйте, Розовый Слоник, Вы писали:

РС>Здравствуйте, BrainOverflow, Вы писали:


BO>>Подправьте если я не прав


РС>Ты не прав.

Есть у меня жуткие подозрения, что аккаунт был сделан для того, чтобы написать именно это и только это сообщение

(а все из-за сообщения Re: Немного про .NET
Автор: Cyberax
Дата: 19.08.05
, может это один и тот же человек?)
Sincerely Mine AlLucky Sly
<<Слушаю болтовню коллег...>>
Aleksandr Sly
Re[14]: Немного про .NET
От: ihatelogins  
Дата: 22.08.05 13:48
Оценка:
Здравствуйте, BrainOverflow, Вы писали:

I>>Слушай, почитай книжку Д.Бокса о внутреннем устройстве CLR. Неохота откровенно хамоватым ламерам объяснять тривиальные вещи.

BO>Неохота или не можешь ? Раз это тривиально, я думаю и объяснить легко хамоватому ламеру. Просто уж очень хочется видеть как ты это сделаешь

CLR не использует COM для работы с типами. Типы CLR не реализуют интерфейс IUnknown. Работа с COM возможна только через соответствующие обёртки — CCW (COM Callable Wrapper) и RCW (Runtime Callable Wrapper). RCW и CCW используются только тогда, когда используются внешние COM-объекты. Базовые сервисы CLR релизованы без использования внешних COM-объектов.

В CLR реализован сборщик мусора, не использующий подсчёт ссылок, и в этом одно из принципиальных отличий от COM. В CLR нет глобального реестра типов (как в COM).

В CLR действительно есть поддержка COM (System.Runtime.InteropServices), но это не более чем поддержка — работа с родными .net-овскими типами идёт БЕЗ использования COM.

Понятно?

AG>>>>.NET использует COM

I>>> Кажется не просто использует а она на нём основана.

Ты понял, что ошибался?
Re[7]: Немного про .NET
От: EM Великобритания  
Дата: 22.08.05 14:57
Оценка:
Здравствуйте, ihatelogins, Вы писали:

I>Здравствуйте, EM, Вы писали:


EM>>Здравствуйте, ihatelogins, Вы писали:


I>>>Здравствуйте, BrainOverflow, Вы писали:


AG>>>>>.NET использует COM.

BO>>>>Кажется не просто использует а она на нём основана.

I>>>Можно пример "основанности" .net на COM в студию?



EM>>CLR это dll-based COM server


I>Юморист.


C чего такое веселье ? Первый раз об этом услышал ?
Опыт — это такая вещь, которая появляется сразу после того, как была нужна...
Re[11]: Немного про .NET
От: ArtemGorikov Австралия жж
Дата: 22.08.05 16:05
Оценка:
Здравствуйте, ihatelogins, Вы писали:


I>NET Framework НЕ ОСНОВАНА НА COM. Я не знаю, почему не основана — не основана и всё тут!


Блажен верующий, да пребуде имя твое, .NET!!!
Re[12]: Немного про .NET
От: RegisteredUser  
Дата: 22.08.05 16:26
Оценка: 2 (1)
Здравствуйте, BrainOverflow, Вы писали:

BO>Здравствуйте, ihatelogins, Вы писали:


I>>NET Framework НЕ ОСНОВАНА НА COM. Я не знаю, почему не основана — не основана и всё тут!

BO>ОСНОВАНА НА СОМ, тоже незнаю почему, но основана и всё тут!
BO>

Судя по всему, тут присутствует в некотором роде обоюдное недопонимание Т.к., что, собственно, подразумевать под словом "основана"?

MS действительно имплементировала CLR как обычный COM Server:

When developing the CLR, Microsoft implemented it as a COM server contained inside a
DLL; that is, Microsoft defined a standard COM interface for the CLR and assigned GUIDs to
this interface and the COM server. When you install the .NET Framework, the COM server
representing the CLR is registered in the Windows registry just like any other COM server. If
you want more information about this topic, refer to the MSCorEE.h C++ header file that
ships with the .NET Framework SDK. This header file defines the GUIDs and the
unmanaged ICorRuntimeHost interface definition. (c) Рихтер

но это только точка запуска. Внутренности же .NET, его архитектура ничего общего с COM не имеет (возьмите хотя бы отказ от подсчета ссылок и недетерминированность уничтожения объектов и, как следствие, неочевидность и некоторая непредсказуемость RCW и CCW (мостики связи COM<->.NET) )
Re: Немного про .NET
От: Maxim S. Shatskih Россия  
Дата: 22.08.05 16:46
Оценка:
BO>Чуть больше года я изучал и работал с этой технологией и пришел к выводу, что он пригоден в основном для создания интерфейсов, веб приложений и для баз данных. А для более серьезных вещей он не пригоден. А так С++, STL, COM РУЛЯТ !!!

COM — отстой. Например, необходимостью регистрации. Для той сферы применения, где раньше использовался COMовский код на Си++, .NET прекрасно годится.
Занимайтесь LoveCraftом, а не WarCraftом!
Re[2]: Немного про .NET
От: ArtemGorikov Австралия жж
Дата: 22.08.05 16:58
Оценка:
Здравствуйте, Maxim S. Shatskih, Вы писали:


MSS>COM — отстой. Например, необходимостью регистрации. Для той сферы применения, где раньше использовался COMовский код на Си++, .NET прекрасно годится.


Просто интересно, как система находит нужную сборку — она должна быть в особой папке, или куда-то надо положить манифест? comctl32.dll 6-й версии лежит в такой особой папке, при том она не зависит ни от COM, ни от .NET. Все равно как-то же надо зарегистрировать сборку, объясните ламеру?
Re[6]: Немного про .NET
От: uw  
Дата: 22.08.05 21:43
Оценка:
Здравствуйте, ArtemGorikov, Вы писали:

K>>Графический редактор на .NET


AG>В нем на .NET только GUI, кстати, довольно простой. Вся работа с изображениями на GDI+, который написан на VC++ и доступен любым приложениям, native и managed. Про то, что MS ОС пишет по старинке, на С/С++, уже было в этом разделе. Точно также можно захостить MS WebBrowser котрол и рассказывать всем, что написал свой броузер. Сам .NET написан на VC++.


А ты удосужился посмотреть исходники, прежде чем сказать эту глупость?


Во-первых возможностей GDI+ просто недостаточно, так как "работа с изображениями на GDI+" по сути ограничивается загрузкой/сохранением, альфа-наложением, ресамплингом и преобразованием цветов. На C# реализованны как минимум все дополнительные режимы альфа-наложения, большинство фильтров и преобразований, flood fill.

Во-вторых GDI+ хреновая библиотека и Paint.NET только потерял от её использования. Мало того, что тормозная, так и с качеством большие проблемы(по сравнению с теми же Cairo и Antigrain). Есть одна библиотека на C#, к сожалению не помню названия, заточенная для растеризации векторов под Pocket .NET(т.к. там нет GDI+), так вот она всего на 20% медленнее GDI+(100% managed code, никаких трюков с unsafe). Более того, я думаю, если написать грамотный аналог GDI+ полностью на C#(с использованием unsafe разумеется), то он порвет GDI+ как тузик грелку.
Re[7]: Немного про .NET
От: ArtemGorikov Австралия жж
Дата: 23.08.05 06:35
Оценка:
Здравствуйте, uw, Вы писали:

uw>Во-первых возможностей GDI+ просто недостаточно, так как "работа с изображениями на GDI+" по сути ограничивается загрузкой/сохранением, альфа-наложением, ресамплингом и преобразованием цветов. На C# реализованны как минимум все дополнительные режимы альфа-наложения, большинство фильтров и преобразований, flood fill.

Думаю, это все-таки меньше, чем взято из GDI+.

uw>Во-вторых GDI+ хреновая библиотека и Paint.NET только потерял от её использования. Мало того, что тормозная, так и с качеством большие проблемы(по сравнению с теми же Cairo и Antigrain). Есть одна библиотека на C#, к сожалению не помню названия, заточенная для растеризации векторов под Pocket .NET(т.к. там нет GDI+), так вот она всего на 20% медленнее GDI+(100% managed code, никаких трюков с unsafe). Более того, я думаю, если написать грамотный аналог GDI+ полностью на C#(с использованием unsafe разумеется), то он порвет GDI+ как тузик грелку.


Вы лично сравнивали качество, скорость GDI+ и AGG? А я сравнивал. Скорость у GDI+ на 15% выше, чем у AGG, качество немного хуже (наверно, на те же 15%) — не настолько, чтобы простой человек плевался. Разницу можно заметить, только если 2 изображения, отрендеренные этими либами, поставить рядом и сравнить. Но главное — GDI+ полностью совместим с GDI, вплоть до MapMode и HatchBrush, поддерживает любой формат растра, а AGG — только тот, на который настроен и скомпилен. И если можно что-то написать более быстрое, чем GDI+, но с теми же фичами, то только на C/C++/Asm, а лучше вообще аппаратно ускоренное. С#/Java/VB отдыхают.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.