Будущее компонентной объектной модели

StackOverflow https://stackoverflow.com/questions/133632

  •  02-07-2019
  •  | 
  •  

Вопрос

Кто-нибудь слышал что-нибудь о том, что Microsoft [не] поддерживает COM в будущих версиях Windows?

Я полагаю, что инженеры Microsoft застряли с этим (даже если они предпочли бы только разрабатывать и поддерживать .NET framework) просто из-за огромной негативной реакции со стороны их огромной клиентской базы.В дикой природе, должно быть, существуют буквально миллиарды строк материалов, основанных на COM.Я знаю, что я нет предвкушаю, как меня вынудят к массовой миграции просто потому, что какой-нибудь умник, преуспевающий в архитектуре астронавт, должен доказать, что он Величайший...(блин, почему бы им просто не заняться боксом?).

Я подозреваю, что у меня просто паранойя, но может ли кто-нибудь предоставить какие-либо авторские ссылки (Google мало что находит)?В идеале, Официальный документ Microsoft с надписью "COM остается в Вене, иначе!" значительно успокоил бы мои нервы.

Это было полезно?

Решение

Ну, причина, по которой они назвали это .NET, заключается в том, что COM3 был взят в качестве имени последовательного порта..NET является новый КОМ.От Выпущена среда выполнения .Net Common Language Runtime:

Название меняется с COM3 на COR, затем на COM + 2.0...to NGWS и, наконец, на .NET.

Причина, по которой основная сборка называется mscorlib, заключается в том, что она расшифровывалась как Библиотека среды выполнения Microsoft Common Object.

Другие советы

COM по-прежнему ТОТ САМЫЙ технология межпроцессной коммуникации.Посмотрите, как вы можете управлять Word, Excel и т.д. Из другого приложения.Нет никакого способа.Net может заменить это.

COM и .Net удовлетворяют разные потребности.До тех пор, пока существует машинный код, будет существовать потребность в стандарте бинарной компонентизации, т.е.com.Даже если бы ОС была переписана с нуля (чего не будет и не должно быть), это был бы в первую очередь машинный код по таким причинам, как производительность и управление версиями.Вам быстро понадобилось бы изобрести что-то похожее на COM, так почему бы не сохранить то, что было протестировано и работает?

Я знаю, легко думать, что отныне мир Microsoft - это только .NET, благодаря превосходной работе, проделанной их отделом маркетинга, но Microsoft всегда поддерживает свои старые разработки, на самом деле у них нет выбора.

Посмотрите на MFC, они выпустили новые пакеты, и RibbonBar работает только на MFC (поскольку в нем разработан office).Конечно, со временем они начнут писать все больше и больше .СЕТЕВОЙ код и все меньше и меньше COM-контента, но они все равно будут его поддерживать.

Функции разработки COM в Visual Studio останутся на месте, когда они уйдут, и тогда вы поймете, что они больше не хотят, чтобы мы их использовали.

Я прочитал запись в блоге от менеджера проекта Visual Studio, где он сказал, что в последнее время они получили много жалоб от разработчиков по поводу акцента на C #.Он согласился и сказал, что следующая версия Visual Studio будет ориентирована в первую очередь на неуправляемую разработку на C ++.

Нет никаких официальных заявлений о том, что поддержка COM будет прекращена в будущих версиях Windows.он широко используется во внутренних компонентах операционной системы.За исключением полной перезаписи операционной системы с нуля (чего я не могу себе представить в ближайшее время), можно с уверенностью предположить, что COM появится еще какое-то время.

Я не вижу, чтобы COM исчез в ближайшее время, поскольку существует огромное количество устаревшего кода на основе COM.По той же причине я ожидаю увидеть, что Win32 будет существовать в обозримом будущем.Никто не заботится о Windows как таковой, как о платформе, они заботятся о своем прикладном программном обеспечении.

COBOL на S / 360, S / 370, S / 390, zSeries и C / unix остаются очень широко используемыми платформами по той же причине.

Итак, подведем итог:

COM останется, потому что:1.Это фундаментально работает 2.Он обрабатывает межпроцессную коммуникацию, в отличие от межмашинной.3..NET многое унаследовал от COM, но не все.4.Даже сама Microsoft по-прежнему полагается на это.

И я исхожу из того, что сегодня в производственных системах все еще используются миллиарды строк FORTRAN и COBOL...потому что они фундаментально работают.

Спасибо вам всем за ваши ответы...Моды, не стесняйтесь убрать этот диалоговый ответ, но (ИМХО) на этом сайте было бы неплохо разрешить постерам публично благодарить тех, кто нашел время ответить.

Выпьем за всех.Кит.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top