اعتبارات التصميم Interoperation

This overview explains the differences between the مدارة و unmanaged programming نماذج. For recommendations و تصميم-الوقت interoperation strategies, see COM مكونات إنشاء? ل Interoperation و قم ببناء Framework مكونات.NET ل Interoperation.

الجميع calls made between مدارة و تعليمات برمجية غير مُدارة must negotiate the requirements imposed بواسطة the respective programming model. مدارة و unmanaged programming نماذج are dissimilar في many respects. يعرض الجدول التالي خصائص التعريف لكل نموذج.

الصفة المميزة

طراز غير المدارة

مدارة طراز

التفاصيل

نموذج التعليمات البرمجية

يستند إلى الواجهة

كائن-تعتمد

الكائنات غير المدارة دوماً بالاتصال من خلال واجهات؛ مدارة الكائنات و فئات يمكن تمرير بيانات مباشرة دون تنفيذ الواجهات.

عن طريق الافتراضي، ينشئ توافق COM بواجهة فئة لعرض الوظائف التي تتم إدارتها من خلال واجهة إلى COM عند الفئة أو الكائن الذي لا يقوم بتطبيق واحد.

الهوية

المعرفات الفريدة العمومية

قوي أسماء

المعرفات الفريدة العمومية التعرف نوع غير مدار محدد و توفير معلومات الموقع لا يوجد لهذا النوع. تتكون أسماء قوية اسم تجميع فريدة بالإضافة إلى اسم النوع. لأن اسم تجميع يعرف النوع بشكل فريد، يمكنك إعادة استخدام اسم نوع عبر تجميعات المتعددة. تجميع كما يقدم الإصدار الأساسية، الناشر، و معلومات الموقع إلى نوع مدارة. الخدمات interoperation توليد المعرفات العامة الفريدة GUID والاسم المميز كـ المطلوبة.

تقنية معالجة الخطأ

HRESULTs

Exceptions

وظائف COM عادة بإرجاع HRESULT، مشيراً إلى أن المكالمة نجحت أو فشلت. تعليمات برمجية مُدارة يضم الاستثناءات. افتراضياً، تعين توافق COM الاستثناءات التي تمت إدارتها إلى فشل HRESULTs.

بنية بيانات القديمة العادية (PODS)

البنية

مدارة بنية مشتقة من الكائن

استدعاء النظام الأساسي لا يمكن استخدام إلى إعادة بني أو الفئات بواسطة القيمة إذا كانت تحتوي على construcإلىr. معرف بشكل عام، من قبل المستخدم أنواع التي تحتوي على PODS لا يجب إرجاع العناصر حسب المرجع. PODS هي بنية بيانات التي تحتوي على مجموعات pكـsive فقط من قيم الحقول، كـ المعرفة بواسطة ISO/IEC 14882 القياسية، "لغات البرمجة-C + +." لا تحتوي المنشئات، نسخ عوامل التعيين أو destructors الأعضاء بيانات غير ثابت غير أنفسهم PODS.

توافق نوع

قياسي الثنائي

نوع قياسي

تختلف أنواع بين إدارة و تعليمات برمجية مدارة و أيضا بين اللغات.

نوع تعريف

نوع المكتبة

بيانات التعريف

إذا كنت معتاداً على استخدام مكتبات النوع، تعرف أن تحتويها العامة فقط أنواع. فضلا عن ذلك، مكتبة نوع هو اختيارية. في طراز البرمجة التي تمت إدارتها، نوع المعلومات الإلزامي لكافة أنواع. توفر الخدمات interoperation إلى ols تحويل نوع المكتبات إلى بيانات التعريف في تجميعات وبيانات التعريف إلى اكتب المكتبات.

نوع أمان

لا نوع الأمن

بشكل اختياري اﻷمن

توفر compilers المدارة لا يوجد نوع التدقيق تشغيل أنواع المؤشرات، مما يجعل التعليمة البرمجية عرضه إلى الأنشطة الضارة. بشكل عام، تعليمات برمجية مُدارة تتطلب المستوى أعلى من الثقة. يمكن متابعة المبرمجين إلى استخدام المؤشرات في تعليمات برمجية تمت إدارتها، على الرغم من التعليمات البرمجية بقيود نظراً لسلوكه غير آمنة. منع interoperation الخدمات غير الموثوق بها، تعليمات برمجية مُدارة من الوصول إلى إلغاء تعليمات برمجية مُدارة.

تعيين الإصدار

التغير

مرونة

واجهات COM يتم التغير. إذا قمت بتغيير واجهة، يجب إعادة تسمية باستخدام المعرف الفريد عمومي جديدة. يمكن evolve الأنواع المدارة مع الاحتفاظ بنفس الاسم.

تحتوي بعض ميزات طراز برمجة الوحدات كـ sociated التي يمكنك عرضها، مثل كـ اكتب المكتبات وبيانات التعريف. بعض يمكنك تمرير كوسيطات، مثل أسماء قوية والمعرّفات العامة الفريدة GUID. غير ذلك characteristics are المزيد conceptual; you will undoubtedly consider their impact تشغيل your تطبيق تصميم, but you will not encounter direct mapping between the مدارة و unmanaged نماذج for these characteristics.

مواضيع ذات صلة

Title

الوصف

COM مكونات إنشاء? ل Interoperation

Describes تصميم-الوقت interoperation strategies for COM مكونات.

قم ببناء Framework مكونات.NET ل Interoperation

Describes تصميم-الوقت interoperation strategies for .NET Framework مكونات.

interoperating مع تعليمات برمجية مدارة

Describes how إلى استخدم توافق COM و النظام الأساسي invoke.

إمكانية التشغيل التفاعلي COM متقدم

Describes توافق COM concepts و تحويل rules.

توافق التنظيم

Describes the interop التنظيم والإرسال الخدمة, its علاقة إلى COM التنظيم والإرسال, و its دور في بعيد communications.