что такое .NET

Все, что вы хотели знать о программизме, но боялись спросить.
vg
Маньяк
Сообщения: 2803
Зарегистрирован: 29 май 2003, 22:29
Откуда: Магадан - Миссиссага

Сообщение vg »

poneyhot писал(а):
vg писал(а):
Уникурсал Уникурсалыч писал(а):дубликат
А ты знаешь другую модель, которая была бы также распространена в виндовз? Расскажешь?
Модель, не модель, но Win32 API еще никто не отменял. Для аппликухи
с одной-двумя инсталляциями и персонифицированным саппортом СОМ
может еще туда-сюда. Завязываться же на COM в проектах с более-
менее приличным installation base - это кранты саппорту. Это при условии
что проект получится довести до production release. Полагаться на COM
(DCOM) для RPC - это вообще самоубийство, если только речь не идет
об интеграции с офисом. Так что про 90% - это ты загнул.
1) 90% - фигурально.
2) Win32 API - АПИ для весьма специфичного круга девелоперов. Существует масса прикладных задач, областей, где использование прикладными прогрммерами Win32 API сведена или н нулю или миниммуму (задачи ГИС, КАД, клиентские приложения RDBMS). Там часто ГУРУ может ничего не знать про существование Win32API. Всю жизнь долбают разные ObjectArx и ArcObjects без всяких WinAPI.
3) На мой взгляд правильнее говорить не о распростанённости использования Win32API, а о сопоставлении интерфейсов. COM - обёрточная технология (и даже просто грубо говоря соглашение о способах представления интерфейсов) + средства операционной системы по её поддержке. Не знаю, но полагаю, что более удачным может быть сопоставление хенд-ориентированого (1) интерфейса (когда хендлы мапятся на на объекты ядра или пользовательские объекты) и COM. (2)
4) По поводу использования COM в крупных проектах проектах. Например, AutoDesk, начиная с 1996-1997, пригладное АПИ (для кастомизаторов) поставляет в двух вариантах - библиотеки C++ классов и COM. Компания ESRI и вовсе откзазалать от всех прежних АПИ, оставив только COM (что несомненно плохо.). Программисты обасучивающие задачи офиса часто используют COM Word, Excel ++...
5)Как будет дальше в Windows - не знаю. Для .NET программистов (C#, managed C++ extencion) использование Win32API неудобно и может быть неперспективно в связи с необходимость маршалинга. Ксати COM в этом отношении ничем не лучше (возможно скорее наобот )
vg
Маньяк
Сообщения: 2803
Зарегистрирован: 29 май 2003, 22:29
Откуда: Магадан - Миссиссага

Сообщение vg »

ajkj2em писал(а):
runner писал(а):Не понял, чем так плох COM?
а чем он хорош ?
Существует просто море девелоперов VB, C#. Удобство программирования, минимум кода, возможность использовать COM в разных языках программрования.
Аватара пользователя
ajkj3em
Маньяк
Сообщения: 2063
Зарегистрирован: 12 ноя 2006, 06:53

Сообщение ajkj3em »

runner писал(а):Это не ко мне, ай мин чем он плох для саппорта? Эт лист, чем он хуже Win32, если их так можно сравнивать?
наличием дополнительных и по существу в большом количестве
ситуаций не нужных dependencies on Windows. если можно сделать
A с помощью B или c помощью B+C+D+E+F+G+H, то понятно что
во втором случае потенциальных граблей гораздо больше. а за счет
того, что всё это идет через publically modifiable registry service,
грабли будут гарантированно.

речь идет о standalone applications с большим userbase .. десятки
тысяч и больше.
vg
Маньяк
Сообщения: 2803
Зарегистрирован: 29 май 2003, 22:29
Откуда: Магадан - Миссиссага

Сообщение vg »

poneyhot писал(а):
runner писал(а):Это не ко мне, ай мин чем он плох для саппорта? Эт лист, чем он хуже Win32, если их так можно сравнивать?
наличием дополнительных и по существу в большом количестве
ситуаций не нужных dependencies on Windows. если можно сделать
A с помощью B или c помощью B+C+D+E+F+G+H, то понятно что
во втором случае потенциальных граблей гораздо больше. а за счет
того, что всё это идет через publically modifiable registry service,
грабли будут гарантированно.

речь идет о standalone applications с большим userbase .. десятки
тысяч и больше.
Представь гипотетическую ситуацию, когда тебе надо дать АПИ для работы с некими твоими объектами. Положим ты делаешь АПИ хендл-ориентированное, как, например в WinAPI. Пусть ты пишешь АПИ для работы типа "файл" (файл это нечто твое, может быть аналог файла в твоём некотором жутко секур сторе). Тогда тебе возможно нужно будет поддершивать менеджер дескрипторов этих объектов (который мапит хендл на реальный объект), следить за временем их жизни, и прочее (потоки, синхронизация и т.д.). Может быть... Но если уже всё сделано в COM и работает автоматически, то зачем изобретать велосипед. Больше времени, чтоб заниматься бизнес логикой.

ПС. Конечно, это лишь частный случай, где COM полезен.
Аватара пользователя
Leo Gan
Маньяк
Сообщения: 1764
Зарегистрирован: 29 апр 2005, 16:55
Откуда: где-то рядом с жёлтым карликом
Контактная информация:

Сообщение Leo Gan »

Ваще-то за последние годы полно .NET библиотек наплодилось. Да и сам .NET FW получше std будет во многих, не самых последних, местах.
Ответить