component object model (com) -...

Post on 22-Apr-2018

239 Views

Category:

Documents

12 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Component Object Model (COM)

Oleh :

Edi Sugiarto, S.Kom, M.Kom

Component Object Model (COM)

• Merupakan binary-interface standar untuk

komponen perangkat lunak yang

diperkenalkan microsoft pada 1993

• Digunakan untuk memungkinkan interproses

komunikasi dan penciptaan objek yang

dinamis dalam berbagai bahasa pemrograman

• COM sering digunakan sebagai istilah yang

meliputi OLE, OLE Automation, ActiveX, dan

DCOM.

History

• 1987 : diperkenalkan Dynamic Data Exchange

(DDE)

• 1988 : Antony William mendistribusikan dua

makalah internal pada microsoft tentang

gagasan komponen software.

– Object Architecture: Dealing With the Unknown – or –

Type Safety in a Dynamically Extensible Class Library

pada 1988

– On Inheritance: What It Means and How To Use It pada

1990

• 1991 : diperkenalan Object Linking and

Embedding

• 1991 : muncul Visual Basic Extensions (VBX)

• 1992 : OLE versi 2

• 1994 : diperkenalkan OLE Custom Controls

(OCXs)

• 1996 : ActiveX, DCOM.

Component Object Model foundation

Binary Standart

• COM menyediakan cara yang standar untuk

pemanggilan fungsi pada platform yang berbeda

• COM menyediakan Virtual Function Table (Vtable)

untuk mengimplementasikan Binary Standart.

• Dengan demikian setiap bahasa yg dapat melakukan

pemanggilan fungsi melalui pointer dapat melakukan

pemanggilan fungsi dengan binary standart yang

sama

COM Component

• Component pada COM biasanya memiliki data

yang saling terkait.

• Component pada COM tidak berinteraksi

langsung dengan component COM yang lain

namun berinteraksi melalui interface pointer.

• Hal tersebut merupakan fitur utama arsitektur

COM untuk sepenuhnya melestarikan

enkaspsulasi data

Interface COM

• Dalam COM, aplikasi berinteraksi satu sama

lain melalui koleksi fungsi yg disebut

interface.

• Sebagai contoh OLE services hanyalah

antarmuka COM (COM interface)

• Pada perkembangan selanjutnya pengguna

dapat mendefinisikan interface sebagai

pengembangan aplikasi berbasis komponen.

• Interface is not a Class

– Interface bukanlah kelas jadi tidak dapat diinstance

dengan sendirinya karena tidak membawa

implementasi

– Hal ini menjadi dasar Konsep polimorfisme dalam

interface

• Interface is not a COM Component

– Interface hanyalah sekelompok fungsi yg terkait

dan merupakan binary standart

Interface COM

• COM Client only interact with pointer to

interface

– COM Client berinteraksi satu sama lain melalui

pointer untuk mengakses fungsi pada interface

• COM components can implement multiple

interfaces

• Interface are Strongly Type

– Setiap interface meiliki identifier sendiri

• Interfaces are immutable.

Interface COM

Fitur dan Fungsi

• Tidak ketergantungan terhadap bahasa

pemrograman

• Mudah digunakan

• Memisahkan interface dan implementasi

• Reusabilitas yang tinggi

• Mengimplementasikan aplikasi terdistribusi

lintas proses

Keuntungan Interface COM

• Kemampuan fungsi dari aplikasi berevolusi

dari waktu ke waktu

• Interaksi antar objek yang cepat dan sederhana

• Interface yang bersifat guna ulang

• Transparan

• Bahasa pemrograman yang independen

Object Linking and Embedding (OLE)

Object Linking and Embedding (OLE)

• Merupakan teknologi yang dikembangkan

microsoft yang memungkinkan dokumen dan

objek lain ditanamkan dan dihubungkan.

• Beberapa pengembang mengaplikasikan dalam

bentuk OLE Control eXtension (OCX)

• Manfaat Utamanya :

– Customize

– Reduce Coding

History• OLE versi 1.0

– dirilis pada 1991

– Evolusi dari Dynamic Data Exchange (DDE)

– Berkembang COM dan DCOm

• OLE versi 2.0

– Dirilis pada 1992

– OLE Automation

• OLE Custom Control

– Diperkenalkan pada 1994

– Menggantikan Visual Basic Extension (VBX)

– dikirim dalam bentuk dynamic link library dengan

ekstensi .ocx

– Pada 1996 dikenal dengan ActiveX Control

Kegunaan OLE

• Memungkinkan penggunakan informasi suatu

aplikasi dalam aplikasi lain.

• Mengelola Compound Documents

Contoh OLE dalam Visual Basic

OLE Automation

OLE Automation

• Merupakan mekanisme inter-komunikasi

berbasis COM yang ditujukan pada

penggunaan bahasa scripting.

• Pada awalnya didukung bahasa pemrograman

visual basic namun sekarang dapat digunakan

oleh bahasa pemrograman yang berjalan pada

platform windows.

• tujuanya agar program client dapat mengontrol

OLE Server melalui bahasa pemrograman.

OLE Automation (Lanj)

• Microsoft merancang OLE Automation

sebagai solusi bagi masalah pemrograman

makro lintas aplikasi dan tidak tergantung

dengan satu bahasa pemrograman.

Contoh PenggunaanAutomation dalam VB

Dim excelApp as Object

Set excelApp =

CreateObject("Excel.Application")

excelApp.Workbooks.Add

excelApp.Range("A1:C6").Select

excelApp.ActiveCell.Formula = "Hello

World!" excelApp.Visible = True

ActiveX

ActiveX

• Merupakan suatu kerangka untuk

mendefinisikan perangkat lunak yang reuseable

dan independent dalam bahasa pemrograman

• Diperkenalkan pada 1996 oleh Microsoft

sebagai perusahaan pengembang teknologi

COM dan OLE

• Merupakan elemen yang diprogram yang

sebelumnya dikenal sebagai OLE Controls

(OCXs) atau OLE Custom Control.

ActiveX

• Istilah ActiveX pertamakali diperkenalkan

oleh Microsoft pada “Internet Profesional

Developer Conference” maret 1996.

• Kata ActiveX merupakan slogan untuk

“Aktifkan Internet”.

ActiveX Control

• ActiveX Control dapat dikatakan sebagai OLE

yang telah dikembangkan.

• ActiveX Control pada dasarnya adalah sebuah

objek OLE sederhana yang mendukung

interface IUnknown.

• IUnknown merupakan interface tertinggi pada

COM yg memungkinkan klien mendapatkan

pointer ke interface lain pada objek yg

diberikan melalui method QueryInterface.

ActiveX Control

• ActiveX Control dalam Visual Basic versi 6

dapat anda jumpai dalam ekstensi .OCX.

• ActiveX Control berfungsi untuk menambah

fungsionalitas program dengan memanggil

komponen yang siap pakai dan membaur serta

muncul sebagai bagian dari program.

• Biasanya digunakan untuk menambah fungsi-

fungsi user interface seperti 3D Toolbar,

notepad, spreadsheet, dll.

ActiveX Control dalamlingkungan Web Browser

• Pada awalnya ActiveX resmi beroperasi pada

Internet Explorer 3.0 Web Browser.

• Tekniknya apabila browser menemukan

halaman yg menetapkan kontrol ActiveX maka

otomatis akan mendownload dan menginstal

kontrol tersebut tanpa intervensi pemakai.

• Dalam hal ini menimbulkan masalah

keamanan.

ActiveX Control dalamlingkungan Web Browser

• Sehingga microsoft menetapkan standar

keamanan terhadap ActiveX.

– Digital Signature ketika instalasi paket

– Kontrol harus menyatakan dirinya aman untuk

scripting

– Peningkatan keamanan pada setting default

– IE memelihara daftar hitam kontrol yang buruk.

Scenario PenggunaanActiveX Control

• Terdapat tiga skenario penggunaan ActiveX

Control sbb :

– Stand-Alone

– Disimpan di Lan namun dijalankan secara lokal

– Tersimpan pada Web Server namun dijalankan

secara lokal.

Mengapa ActiveX Control menjadi Penting?

• Dalam lingkungan pemrograman, ActiveX

meningkatkan produktivitas

• Menjadi arsitektur utama untuk

mengembangkan komponen software yang

diprogram.

• Sebagai komponen yang guna ulang

• Mengurangi penggunaan baris program

Contoh ActiveX dalamVisual Basic

Menampilkan file .swf melalui

ActiveX ShockwaveFlash

Distributed Component Object Model (DCOM)

DCOM

• Distributed COM merupakan perluasan dari

Component Object Model untuk mendukung

komunikasi antar objek pada komputer yang

berbeda (dlm LAN, WAN).

• Tujuanya adalah untuk memecahkan

permasalahan pengembangan aplikasi

terdisitribusi.

DCOM Overview

• Pada prinsipnya COM mendefinisikan

bagaimana komponen dan klien mereka

berinteraksi tanpa sistem perantara.

• Namun dalam sistem operasi saat ini, proses

terlindungi satu sama lain

• Komunikasi dalam bentuk interprosses yg

disediakan sistem operasi, bukan secara

langsung

DCE RPC (Distributed Computing Environtment Remote Procedure Call) memungkinkan pemanggilan remote prosedur untuk

lingkungan sistem tersebar,

LPC digunakan untuk melakukan pencatatan komunikasi interprosses diantara proses-proses dalam komputer yang sama

• Ketika klien dan komponen berada pada mesin

yang berbeda, DCOM hanya menggantikan

komunikasi antar-proses lokal dengan protokol

jaringan

Ada Pertanyaan ?

Terima kasih

Daftar Pustaka

• Greg Perry (2000), “Sams Teach Yourself Visual Basic 6 in 21

Days, Professional Reference Edition”, Macmillan Computer

Publishing, ISBN: 0672315424.

• Francesco Balena (1999),”Programming Microsoft Visual

Basic 6.0”, Microsoft Press, ISBN : 0-7356-0558-0

• Dobb, “Microsoft's Component Object Model (COM) is a

component-software architecture that allows applications and

systems to be built from components supplied by different

software vendors”, 1994

• http://research.microsoft.com/en-

us/um/people/ymwang/papers/HTML/COMEssay/S.htm

• Dr. Dobbs Journal and Microsoft Corporation, “The

Component Object Model: Technical Overview”, 1994

• Lu Xiuxing (2010), “ActiveX Control Development of Virtual

Instrument Based on COM Technology”, Northwestern

Polytechnical University

Daftar Pustaka

top related