شبكة بحوث وتقارير ومعلومات
اخر المشاهدات
مواقعنا
اخر بحث
الرئيسية الدليل خارطة الموقع
غسيل سجاد رخيص كفالة يومين – نغطي الكويت
[ تعرٌف على ] نمط محدد موقع الخدمة تم النشر اليوم [dadate] | نمط محدد موقع الخدمة

مزايا

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

ملحق: مسرد المصطلحات الإنجليزية

مَسرد المفردات وفق أقسام المقالة المقدمة نمط محدد موقع الخدمة service locator pattern نمط تصميم design pattern لتغليف encapsulate طبقة تجريد قوية strong abstraction layer سجلاً مركزيًا central registry "محدد الخدمة" "service locator" عند الطلب on request بإرجاع returns يبسط التطبيقات القائمة على المكونات simplifies component-based applications ادراج listed بشكل نظيف cleanly لتوصيل الكائنات connecting objects يحجب التبعيات obscures dependencies رابط linker وقت التشغيل run-time إعادة تجميع re-compiling بشكل انتقائي selectively السجل registry العديد من محددات الخدمة المنظمة multiple structured service locators لوظيفة functionality اختبار testing يحدد محدد موقع الخدمة صنف ثابت واحد does not mandate one single static class واصلاح تكوينات التبعية maintain dependency configurations أخطاء وقت التشغيل run-time errors تجميعها compiled الصنف الملموس concrete Class و ينتج خطئ make error مشكلة نشر deployment issue مشكلة محدد الخدمة Service Locator issue صنف محدد الخدمة العالمية same global service locator class لتعيين set التبعيات المزيفة fake dependencies حقن أصناف التطبيق injecting application classes بواجهة تحديد موقع خدمة واحدة single service locator interface تنفيذ implemented المحاكي Simulator

سلبيات

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

شرح مبسط

نمط محدد موقع الخدمة(بالإنجليزية: service locator pattern)‏ هو نمط تصميم يستخدم في تطوير البرمجيات لتغليف العمليات التي ينطوي عليها الحصول على خدمة ذات طبقة تجريد قوية. يستخدم هذا النمط سجلاً مركزيًا يُعرف باسم «محدد الخدمة» "service locator"، والذي يقوم عند الطلب بإرجاع المعلومات اللازمة لأداء مهمة معينة.[1] يقول مؤيدو النمط إن هذا النهج يبسط التطبيقات القائمة على المكونات حيث يتم أدراج جميع التبعيات بشكل نظيف في بداية تصميم التطبيق بالكامل، وبالتالي جعل حقن التبعية التقليدية طريقة أكثر تعقيدًا لتوصيل الكائنات. يجادل منتقدو النمط أنه نمط مضاد يحجب التبعيات ويجعل اختبار البرمجيات أصعب.[2]
التعليقات

لم يعلق احد حتى الآن .. كن اول من يعلق بالضغط هنا
ماتكتبه هنا سيظهر بالكامل .. لذا تجنب وضع بيانات ذات خصوصية بك وتجنب المشين من القول

captcha
اشتراكات مصبغة محافظة مبارك الكبير والأحمدي
هل أنت صاحب المنشأة؟ قم بتحديث صفحتك مجاناً