Apa maksud objek COM?

9

Apa itu? Seperti yang saya pahami, ini semacam teknologi khusus Microsoft untuk beberapa objek. Tapi apa sebenarnya?

Sergey
sumber

Jawaban:

3

Ini pada dasarnya teknologi lama yang digunakan untuk menulis program di lingkungan Windows. Ini besar dan kompleks dan tidak menyenangkan untuk dikelola / didukung. Framework .NET adalah penggantinya.

Morgan T.
sumber
1
tidak objek COM digunakan dalam .NET framework?
Sergey
3
Mereka dapat dipanggil dari .NET, tetapi mereka adalah sistem yang sama sekali berbeda. Ini disebut COM Interop. Anda dapat menjelajahinya sedikit di komputer Anda - di bawah Panel Kontrol >> Alat Administratif >> Layanan Komponen.
Morgan T.
2
COM tidak akan kemana-mana dalam waktu dekat. Ini banyak digunakan oleh produk Microsoft sendiri. Saya pikir karena itu agak menyesatkan bahwa Anda menyebutnya "pada dasarnya teknologi lama". Ya, ini pertama kali diperkenalkan pada awal 90-an, jadi secara teknis itu "tua" dalam arti bahwa sudah ada beberapa saat, tetapi Anda perlu berhati-hati untuk tidak menunjukkan bahwa itu usang atau ketinggalan jaman.
Cody Grey
12

Objek COM pada dasarnya adalah kotak hitam yang mengimplementasikan beberapa antarmuka yang dikenal. Itu juga dapat mendaftar sendiri dengan Windows sehingga program dapat memperolehnya.

Sebagai contoh, katakanlah ada beberapa antarmuka ICalculator, yang saya tulis untuk digunakan program saya. Saya sekarang dapat menukar objek apa pun, yang ditulis dalam bahasa pemrograman apa saja (karena itu adalah antarmuka biner) yang mengimplementasikan ICalculator. Kemudian pada saat runtime, saya dapat memberikan semacam opsi kepada pengguna saya sehingga mereka dapat memilih untuk menggunakan FooCorpCalculatorobjek COM, ditulis dengan Python, atau mungkin jika mereka membutuhkan lebih banyak kecepatan mereka dapat memilih yang NinjaCalculatorditulis dalam C. Intinya adalah, saya menulis program saya untuk bergantung pada antarmuka, bukan implementasi, dan kemudian memilih untuk menggunakan objek COM aktual yang mengimplementasikan antarmuka nanti.

Tentu saja ada banyak hal lain, tetapi itu bisa menjadi contoh yang membuatnya lebih konkret untuk Anda.

dsolimano
sumber
4

Lihat artikel Wikipedia ini: Model Objek Komponen

Component Object Model (COM) adalah standar antarmuka-biner untuk komponen perangkat lunak yang diperkenalkan oleh Microsoft pada tahun 1993. Komponen ini digunakan untuk memungkinkan komunikasi antarproses dan pembuatan objek dinamis dalam berbagai bahasa pemrograman. Istilah COM sering digunakan dalam industri pengembangan perangkat lunak Microsoft sebagai istilah umum yang mencakup teknologi OLE, OLE Automation, ActiveX, COM + dan DCOM.

Objek COM sering diimplementasikan dalam file DLL. Mereka dapat digunakan oleh program untuk berbagai fungsi. Istilah "objek" seperti yang digunakan di sini mengacu pada objek dalam pemrograman berorientasi objek .

bwDraco
sumber
1
itu sebabnya saya menanyakan pertanyaan ini. karena Wikipedia tidak menjawabnya. Definisi ini sangat abstrak dan saya tidak melihat contoh nyata.
Sergey
1

COM adalah set teknologi khusus Windows untuk mengaktifkan penggunaan kembali kode dan interoperabilitas, terutama pada tingkat biner (tidak harus pada tingkat kode sumber).

Pada awal 1990-an, Bill Gates tidak mengizinkan tim pengembangan Powerpoint menerapkan subsistem charting sendiri untuk produk Powerpoint, karena Microsoft sudah memiliki Excel. Jadi mereka mengembangkan spesifikasi untuk memungkinkan produk in-house mereka untuk bertukar data dan memanggil fungsi satu sama lain. Microsoft menggeneralisasi API ini, menerbitkannya, dan banyak lagi pedoman desain kode.

Lihat video ini dari 2006: Tony Williams: Co-penemu COM

Saya pikir, bahwa sekarang pada tahun 2012, COM masih menjadi inti dari WMI dan Office.

knb
sumber