سؤال

أنا لم تكن قد فعلت الكثير من .صافي البرمجة, ولكن لقد بحثت عدد قليل من تطبيق الكتل التي نشرتها مايكروسوفت أنماط وممارسات المجموعة.كنت أتساءل كيف أن هذه تستخدم عادة:

  • مرتبطة مباشرة إلى التطبيقات
  • وأضاف المصدر في التطبيقات التي بنيت معهم ، ربما مع بعض التخصيص هو
  • نموذج التعليمات البرمجية المستخدمة كمرجع أثناء الكتابة الخاصة بالتطبيقات البرمجية

أنا متأكد من كل ثلاثة من هذه الأعراف شائعة ، ولكن ما هي الأكثر شيوعا استخدام الأنماط ؟

هناك عدد قليل من تطبيق معين الكتل التي يتم استخدامها من قبل "الجميع؟"

ملاحظة:هذا السؤال هو ذات الصلة ، ولكن ليس بنفس مكتبة المؤسسة تطبيق كتل أو المنزل نمت الإطار ؟ .

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

المحلول

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

نصائح أخرى

لقد استخدمت مايكروسوفت مكتبة المؤسسة على نطاق واسع.عموما ينبغي أن لا يكون ضمن المشروع الخاص بك إذا كان ذلك ممكنا.وأضاف تكلفة تجميع يمكن أن تكون ثقيلة.بالإضافة إلى ذلك, لا يوجد سبب التعليمات البرمجية المصدر في المشروع الخاص بك إلى استخدام الطبقات.سوف لا يزال الحصول على intellisence خلال الترميز طالما يمكنك إضافة مرجع إلى DLL في المشاريع الخاصة بك.كما أنه من المستحسن أن تتجنب متعددة codebases تطوف بك المطور البيئة.إذا كنت بحاجة إلى تخصيص حصص مفتوحة لهم في حل بهم والحفاظ على نسخة واحدة نشطة.بالطبع أنا دائما توحي بقوة باستخدام التحكم في الإصدار (VSS أو التخريب) في حال كنت بحاجة إلى استرجاع التغييرات.

هناك أيضا مفتوح المصدر بدائل مايكروسوفت الفئات التي عادة ما تكون أفضل مشفرة (أيLog4Net ، nUnit ، إلخ.).رمز Microsoft يميل إلى أن يكون المتضخمة وغير فعالة.

لقد حاولت تطبيق عدة كتل من المؤسسة Lib 3.1 (مايو 2007) و هنا بعض التعليقات :

التخزين المؤقت التطبيق كتلة :أقل إثارة للاهتمام من النظام.ويب.التخزين المؤقت في السيناريوهات البسيطة (مثل التخزين المؤقت في الذاكرة) معالجة الاستثناء & تسجيل :أكثر تعقيدا.NLog أو Log4Net هي أفضل الحلول.

نظرت إلى الكتل الأخرى لكنهم لا يبدو لتناسب لدينا مشاريع.

واخيرا انخفض تماما EntLib لأنها كانت مؤلمة إلى تخصيص...أنصح لك أن تنظر حقا أقل متجانسة حل من EntLib.

نضع EntLib 3.1 الثنائيات في ذاكرة التخزين المؤقتة للتجميع العمومي و إضافة المراجع في مشاريعنا.نحن عادة نستخدم فقط قطع الأخشاب الإطار ، على الرغم من.

أعتقد أن أنسب طريقة هي إضافة التطبيق كتل\EntLib كحل البنود.وبهذه الطريقة سوف لا يكون recompiled في كل مرة كنت بناء المشروع الخاص بك (أنها لن تشارك في بناء عملية على الإطلاق) ويمكنك بسهولة الوصول إلى التعليمات البرمجية المصدر\تعيين نقطة توقف.... الخ

ونحن استخدام كتل عن طريق إضافة مراجع إلى ملفات Dll, التأكد من أن "نسخ المحلية" هو مجموعة بحيث يتم نشرها مع التطبيق إلى التطبيق بن مجلد.هذا يعني أننا لا يجب أن تحشر مع GAC - أبسط من ذلك بكثير!

عند تصحيح الأخطاء Visual Studio يمكن أن لا تزال خطوة إلى التعليمات البرمجية المصدر حتى لو كان غير مباشرة المدرجة في المشروع الخاص بك ، طالما لديك EntLib التعليمات البرمجية المصدر على القرص الثابت الخاص بك في مكان ما.وسوف يطالبك الموقع على أول استخدام ، و تذكر بعد ذلك.

نحن حاليا استخدام التخزين المؤقت استثناء و تسجيل القطع.لم نفكر حالة استخدام لبقية بعد.

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