COM
מתוך ויקיפדיה, האנציקלופדיה החופשית
ערך זה זקוק לעריכה, על מנת שיתאים לסגנון המקובל בוויקיפדיה. לצורך זה ייתכנו סיבות אחדות: פגמים טכניים כגון מיעוט קישורים פנימיים, סגנון הטעון שיפור או צורך בהגהה. אם אתם סבורים כי אין בדף בעיה, ניתן לציין זאת בדף השיחה שלו. |
COM (באנגלית קיצור של: Component Object Model בתרגום: מודל האובייקטים של הרכיבים)- סטנדרט טכנולוגי של חברת מיקרוסופט, המיועד ליצירת תכנות על בסיס שיתוף פעולה של הרכיבים המבוזרים, שבכל אחד מהם ניתן להשתמש בתכניות רבות באותו זמן. בבסיס הטכנולוגיה רעיונות ריבוי צורות וכימוס(אינקפסולציה) של תכנות מונחה עצמים(OOP). טכנולוגית COM היא אוניברסלית ולא תלויה בפלטפורמה, אך השימוש בה רווח בעיקר במערכות הפעלה מסוג חלונות. בגרסאות החדשות של חלונות השימוש ב-COM מאוד רווח, ואף פותחו על בסיסה סטנדרטים נוספים, כמו ActiveX]], DCOM, +COM,OLE automation.
תוכן עניינים |
[עריכה] היסטוריה
המודל COM פותח על ידי מיקרוסופט ב-1993 כבסיס להתפתחותה של תכנולוגית OLE. טכנולוגית OLE 1.0 כבר איפשרה יצירת מסמכים מורכבים(compound documents), לדוגמה ניתן היה להוסיף למיקרוסופט וורד טבלאות מתכנת אקסל. טכנולוגית COM במקביל הייתה אמורה לתת אחידות לתהליך שילוב, הכנסה וקישור של אוביקטים משולבים אלה וכן לשמור על סטנדרט אחד בכל המוספים, המשתמשים באוביקטים משולבים אלה.
[עריכה] שינויי השם
ב-1996 מיקרוסופט החליטה לשנות את השם OLE לActiveX בכל יישומיו. הדבר לא עליה בידיה לגמרי. טכנולוגית OLE השתמשה באלמנטי בקרה(OLE Controls, או OCX), שהם אלמנטים שהיה בהם שימוש חוזר בממשק משתמש, המבוססים על טכנולוגית COM, כשמיקרוסופט שינתה את שמם של OLE controls לActiveX Controls סיומת .ocx לקבצים מסוג זה נשארה. מיד אח"כ מיקרוסופט התחילה לעודד שימוש באלמנטי ActiveX בגרסה החדשה של דפדפן האינטרנט שלה, והשם OLE נשאר רק לטכנולוגית מסמכים מורכבים ואובייקטים המשולבים מקומית. OLE- אובייקטים רשתיים לעומת זאת שינו את שמם ל-ActiveX.
[עריכה] יסודות פעולת ה-COM
ביסוד טכנולוגית COM עומדים רכיבי COM, או "COM components". למעשה תכניות שנבנו על ידי COM אינן תכניות עצמאיות, אלא רכיבי COM המתקשרים אחד לשני בזמן ביצועם. לכל רכיב יש מזהה אישי(GUID), ובו יכולים להשתמש באותו זמן תכניות שונות. הרכיב מתקשר עם תכניות אחרות דרך ממשק COM, שהוא רשימה של מאפיינים ושגרות שונות. כל COM חייבות לפחות לתמוך בממשק הבסיסי "IUnknown", שמאפשר פעולות בסיסיות לעבודה עם רכיבים.
בתוך Windows API ישנם פונקציות בסיסיות המאפשרות לעבוד עם רכיבי COM. בספריות MFC ובמיוחד בספריות ATL/WTL ישנם פונקציות גמישות יותר לעבודה עם COM מאשר ב-API. ספריית ATL של מיקרוסופט היא האמצעי הנוח ביותר ליצירת רכיבי COM ועבודה איתם. למרות זאת לפעולות רבות עם COM עדין דרושה עבודה ידנית, הדבר במיוחד נכון כשמנסים לשלב רכיבי COM בקובצי ++C. מיקרוסופט מנסה לפשט את התהליך בגירסת +COM, ובמיוחד net.
[עריכה] התפתחות ה-COM
ב-1996 יצאה לאור טכנולוגית DCOM(קיצור של Distributed COM), המבוססת על טכנולוגית DCE/RPC , ונחשבת כהתפתחות של COM. טכנולוגית DCOM מאפשרת לרכיבי COM לתקשר דרך הרשת. המתחרה העיקרי של טכנולוגיה זו היא סטנדרט CORBA של קבוצת OMG.
[עריכה] +COM
כחלק מחלונות 2000 יצאה טכנולוגית +COM, שביסודה תוספת בביטחון ובתפוקה של הטכנולוגיה. טכנולוגיה זו נותנת תמיכה בזרימות ברמה גבוהה יותר, וגישה לקונטקסט, שבה מתבצע הרכיב (לדוגמה, הרכיבים הפועלים על ASP מקבלים גישה לאוביקטים הפנימיים של העמוד, עליו הם מתבצעים). כמו כן, +COM מאחד רכיבים למוספי +COM, מה שמפשט ניהול הרכיבים ותמיכה בהם.
[עריכה] net. ו-COM
ב-2002 לאחר יצירת פלטפורמת net. מיקרוסופט התחילה להמליץ על שימוש בפלטפורמה זו ליצירת מוספים תחת חלונות. net. ו-+COM אמורות להיות טכנולוגיות שמשלימות אחת את השנייה. בחלונות ויסטה שיצאו ב-2007 בטכנולוגית COM במסגרת net. תהיה תמיכה מלאה בטכנולוגיות COM ו-net. .