هل جعل .NET برمجة COM وDCOM الأولية زائدة عن الحاجة؟

StackOverflow https://stackoverflow.com/questions/34300

  •  09-06-2019
  •  | 
  •  

سؤال

هل أدى إدخال إطار عمل .net إلى جعل البرمجة الأولية في COM وDCOM زائدة عن الحاجة؟

(باستثناء استخدام بعض خدمات COM+، على سبيل المثال.لإدارة المعاملات من خلال مساحة الاسم System.EnterpriseServices)

هل كانت مفيدة؟

المحلول

ليس بعد، لأن نظام التشغيل لا يزال غير مُدار.

إذا قامت MS أخيرًا بما كانت تتحدث عنه مختبراتها لسنوات وأنتجت نظام تشغيل مُدارًا بالكامل، فسوف تفعل ذلك.

بالرغم من ذلك، لن يكون نظام التشغيل هذا متوافقًا مع الإصدارات السابقة.سيتعين عليهم إنتاج إصدارات مُدارة من Office وIE وما إلى ذلك أولاً.سيتعين عليهم إنتاج جهاز افتراضي لتشغيل التطبيقات غير المُدارة.

سيكون الألم شيئًا مشابهًا للانتقال من Mac OS9 إلى OSX.

نصائح أخرى

كانت COM هي آخر التقنيات الرئيسية التي طبقتها MS فعليًا.تواصل MS إنشاء واجهات برمجة تطبيقات جديدة تعتمد على COM؛على سبيل المثال، مؤسسة الوسائط الجديدة لنظام التشغيل Vista (نوع من خليفة DirectShow، والذي كان يعتمد أيضًا على COM) هي واجهة COM API.وكذلك الأمر بالنسبة لـ Direct3D10 (وأنا أفترض D3D11).لا أعتقد أنها ستختفي في أي وقت قريب، وبالنسبة للكثير من مهام برمجة Windows، فهي ليست زائدة عن الحاجة على الإطلاق.

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

أفترض أن هذا يعتمد على ما تعنيه بكلمة "الخام".ما زلت أجد الحاجة إلى كشف واجهات برمجة تطبيقات COM من مكتبات فئات .Net في بعض الأحيان.يجعل عملية الترحيل من منصات معينة إلى .Net أسهل كثيرًا حيث يمكنني استبدال الأجزاء الصغيرة عبر COM.

لقد تم تصميم .NET عمدًا ليحل محل COM (وبالتالي DLL Hell) لذلك بينما لا تزال تطبيقات .NET قادرة على الوصول إلى مكونات COM، يتم تشجيع جميع التطويرات الجديدة على الانتقال إلى .NET إلا إذا كان لديك سبب وجيه جدًا للالتزام بـ COM .

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top