سؤال

لدي .NET 4.0 Class Libary ، والذي يستخدم فقط ميزات .NET 2.0. لجعل هذه المكتبة أكثر توافقًا مع Mono ، أفكر في تغيير الإطار المستهدف إلى 2.0 بدلاً من ملف تعريف العميل 4.0.

ولكن السؤال هو: هل تغيير الإطار المستهدف إلى إصدار أقدم ، وجعل المكتبة تعمل أبطأ (الأداء الأذى). سيظل واجهة المستخدم الرسومية للتطبيق مستهدفًا 4.0 ، لذا فإن جميع تشغيل تطبيقات Windows PC يثبت إطار عمل 4.0. هل سيتم تنفيذ مكتبة 2.0 الخاصة بي بواسطة برنامج التحويل البرمجي 4.0 JIT (يجب أن يكون الأداء هو نفسه) أو بواسطة 2.0 JIT الأقدم (يمكن أن يكون الأداء أبطأ)؟

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

المحلول

لا ، نظرًا لأن التطبيق لا يزال يستهدف الإصدار 4 من الإطار (كما قلت "سيظل واجهة المستخدم الرسومية للتطبيق يستهدف 4") ، فإن جميع الكود ستستخدم V4 JIT وبالتالي تشغيل سرعة V4 حتى لو كان هدف DLL معين V2 من إطار العمل.

نصائح أخرى

إذا كنت تستهدف الإطار القديم ، فسيتم تنفيذ الكود على CLR القديم. لذلك سيكون الأداء هو الأداء القديم وربما أبطأ ولكن عليك أن تتعرف على ما إذا كانت مشكلة.

ال .صافي الإطار 4 متتالية متتالية مع التطبيقات المصممة مع الإصدارات 1.1 و 2.0 و 3.0 و 3.5.

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

انظر هنا للحصول على معلومات توافق مفصلة

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