Що означає об'єкт COM?


9

Що це? Як я зрозумів, це певна спеціальна технологія Microsoft для деяких об'єктів. Але що саме?

Відповіді:


3

Це в основному стара технологія, що використовується для написання програм у середовищі Windows. Він великий і складний і не був приємний для управління / підтримки. Рамка .NET - це її заміна.


1
чи не використовуються COM-об’єкти в .NET Framework?
Сергій

3
Їх можна викликати з .NET, але це зовсім інша система. Це називається COM Interop. Ви можете їх трохи вивчити на своєму комп’ютері - в Панелі керування >> Адміністративні інструменти >> Послуги компонентів.
Морган Т.

2
COM скоро не збирається нікуди. Він широко використовується власними продуктами Microsoft. Я думаю, що тому трохи оманливо, що ви називаєте це "в основному старою технологією". Так, він був вперше введений на початку 90-х, настільки технічно він "старий" у тому сенсі, що минув деякий час, але потрібно подбати про те, щоб не вказати, що він застарів чи застарів.
Коді Грей

12

Об'єкт COM - це в основному чорна скринька, яка реалізує деякий відомий інтерфейс. Він також може зареєструватися у Windows, щоб програми могли його одержати.

Наприклад, скажімо, що є якийсь інтерфейс ICalculator, який я пишу програмі для використання. Тепер я можу поміняти місцями на будь-який об’єкт, написаний будь-якою мовою програмування (оскільки це двійковий інтерфейс), який реалізується ICalculator. Тоді під час виконання я можу надати своїм користувачам певний варіант, щоб вони могли вибрати FooCorpCalculatorоб'єкт COM, написаний на Python, або, можливо, якщо їм потрібна більша швидкість, вони можуть вибрати NinjaCalculatorнаписане на C. Справа в тому, що я пишу моя програма повинна залежати від інтерфейсу, а не від реалізації, а потім вибрати фактичний об'єкт COM, який реалізує інтерфейс пізніше.

Звичайно, це набагато більше, але це може бути приклад, який робить вас більш конкретним.


4

Дивіться цю статтю у Вікіпедії: Компонентна модель об'єкта

Компонентна об'єктна модель (COM) - це стандарт бінарного інтерфейсу для компонентів програмного забезпечення, представлений Microsoft в 1993 році. Він використовується для забезпечення міжпроцесорної комунікації та створення динамічного об'єкта у великому діапазоні мов програмування. Термін COM часто використовується в галузі розробки програмного забезпечення Microsoft як парасольовий термін, який охоплює технології OLE, OLE Automation, ActiveX, COM + та DCOM.

Об'єкт COM часто реалізується у файлі DLL. Вони можуть використовуватися програмами для різноманітних функцій. Термін "об'єкт", як тут використовується, відноситься до об'єктів в об'єктно-орієнтованому програмуванні .


1
саме тому я задав це питання. тому що Вікіпедія не відповіла на це. Визначення дуже абстрактне, і я не бачу реального прикладу.
Сергій

1

COM - це набір специфічних для Windows технологій для забезпечення повторного використання коду та сумісності, насамперед на рівні двійкового (не обов'язково на рівні вихідного коду).

На початку 1990-х Білл Гейтс не дозволив команді розробників Powerpoint впровадити власну підсистему графіків для продукту Powerpoint, оскільки Microsoft вже мав Excel. Тож вони розробили специфікацію, яка дозволила б їхнім власним продуктам обмінюватися даними та викликати функції один одного. Майкрософт узагальнив ці API, опублікував їх та набагато більше інструкцій з розробки коду.

Дивіться це відео з 2006 року: Тоні Вільямс: співавтор COM

Я думаю, що зараз у 2012 році COM все ще є основою WMI та Office.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.