المشاركات الموسومة : INI

بداية سريعة DI symfony على (حقن التبعية) تعليمي

من جانب السبت 14 أغسطس 2010 14:21

ما هو حقن التبعية (DI)؟

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

  <؟ PHP
 فئة صانع القرار {
     makeDecision العامة وظيفة (مجموعة معلمات $) {
         / / تحتاج محول قاعدة البيانات
         موانئ دبي $ = DecisionParameters جديدة () ؛
         = $ $ parameterScore DP -> getScore ($ المعلمات) ؛
         / *...  بعض أكثر القرارات المنطق...  * /
         عودة ($ parameterScore> 50) ؛
     }
 } 

ويقال إن هذه القطعة من التعليمات البرمجية إلى أن تقترن بإحكام إلى كائن DecisionParameters. إعادة كتابة ما سبق بطريقة المتباعدة كنا قد شيء من هذا القبيل....

  <؟ PHP
 فئة صانع القرار {
     $ _dp خاصة ؛
     الوظيفة العامة __construct ($ DP) {
         دولار هذا -> _dp = $ DP ؛
     }
     makeDecision العامة وظيفة (مجموعة معلمات $) {
         $ = دولار هذا parameterScore -> _dp -> getScore ($ المعلمات) ؛
         / *...  بعض أكثر القرارات المنطق...  * /
         عودة ($ parameterScore> 50) ؛
     }
 } 

في حين كسب فوائد رمز المتباعدة ، فإننا نقوم بإضافة هذا التعقيد أنه في كل مرة يتم إنشاء مثيل كائن علينا أيضا أن مثيل لها تبعيات وتمرير هذه في غاية. على سبيل المثال ، ما يلي :

  $ = اختيار صانع القرار الجديد () ؛
 صدى دولار خيار -> makeDecision (صفيف (جهود '=>' منخفضة '،' عودة '=>' عالية ')) ؛ 

يصبح الآن :

  موانئ دبي $ = DecisionParameters جديدة () ؛
 $ اختيار صانع القرار الجديد = ($ DP) ؛
 صدى دولار خيار -> makeDecision (صفيف (جهود '=>' منخفضة '،' عودة '=>' عالية ')) ؛ 

هذا الوضع يصبح أكثر إيلاما كما ارتفع عدد التبعيات لفئة ، وماذا إذا تبعيات أنفسهم التبعيات وهذا يمكن أن تصبح بسرعة كبيرة وهو ما يشكل كابوسا الادارة كائن! دخول الحاويات حقن التبعية (أو الأطر)...
مواصلة القراءة 'DI symfony على البدء السريع (حقن التبعية) درس' »

توجيه طلبات إلى وحدة تحكم عن sitemap.xml مخصص / عمل

من جانب ، الأربعاء 6 يناير 2010 12:13

من أجل طلبات مباشرة لل/ sitemap.xml إلى وحدة تحكم مخصصة الخاص والعمل في إطار زند التطبيق ببساطة إضافة التالية في application.ini الخاص أو بديلة ملف التكوين (على سبيل المثال يمكنني استخدام navigation.ini) :

 resources.router.routes.sitemap.route = "sitemap.xml"
 = مؤشر resources.router.routes.sitemap.defaults.controller
 = خريطة resources.router.routes.sitemap.defaults.action

ويمكن رؤية رمز المثال لإخراج العمل من خلال إنشاء وحدة تحكم في المناسبة (على سبيل المثال خريطة بلدي يكمن في وحدة تحكم الفهرس ، خريطة العمل) :

 < فب
 فئة IndexController
     يمتد Zend_Controller_Action
 {
     / **
      * يجعل من خريطة على أساس الإعداد Zend_Navigation
      * /
     الجمهور sitemapAction الدالة ()
     {
    	 صدى دولار هذا -> عرض -> الملاحة () --> خريطة () ؛
    	 دولار هذا -> عرض -> تخطيط () --> disableLayout () ؛
    	 دولار هذا -> _helper -> viewRenderer -> setNoRender (صحيح) ؛
     }
 }

ويمكن بسرعة وبسهولة يمكن إنشاؤها باستخدام خرائط مواقع Zend_Navigation ، تعليمي كبير السريع (وعموما مفيدة جدا للدروس الإطار زند) هي مصنوعة من الجبس زند -- خلق ديناميكية قائمة خريطة موقع وفتات الخبز .













الموضوع بواسطة بانوراما Themocracy

8 زوار الآن على الانترنت
4 ضيوف ، 4 السير ، 0 أعضاء
ماكس الزوار اليوم : 16 في 1:31 بالتوقيت العالمي
هذا الشهر : 19 في 19-08-2011 06:09 بالتوقيت العالمي
هذا العام : 130 في 28-03-2011 الساعة 10:40 بالتوقيت العالمي
كل الوقت : 130 في 28-03-2011 الساعة 10:40 بالتوقيت العالمي