বিশিষ্ট অবদানযুক্ত মডিউলগুলিতে কিছু নকশার ধরণগুলি কী কী পাওয়া যায়?


10

উপস্থাপনা-বিমূর্ততা-নিয়ন্ত্রণ এবং ড্রুপাল কোর ব্যবহার করা হয় এমন অন্যান্য নিদর্শনগুলি ছাড়াও , ভিউস, সিসিके এবং বৈশিষ্ট্যগুলির মতো আরও জনপ্রিয় অবদানকারী মডিউলগুলিতে কী অন্য ডিজাইনের নিদর্শনগুলি বিশিষ্টভাবে ব্যবহৃত হয় ?


2
এফএকিউ-তে প্রকাশিত হিসাবে , "আপনার মুখোমুখি প্রকৃত সমস্যার উপর ভিত্তি করে আপনার কেবল ব্যবহারিক, উত্তরযোগ্য প্রশ্ন জিজ্ঞাসা করা উচিত Chat
কিমলালুনো

1
এটি যদিও একটি ভাল সম্প্রদায় উইকির বিষয় হতে পারে
চৌলকি

সম্প্রদায় উইকি আর গ্রহণযোগ্য নয় এমন প্রশ্নগুলির জন্য ব্যবহার করা হয় না বা এটি সীমান্তরেখা। সম্প্রদায় উইকির ভবিষ্যত দেখুন ।
কিমলালুনো

2
অন্যদিকে, আমি মনে করি এটি একটি আকর্ষণীয় বিষয়। আরও ভাল প্রশ্নের জন্য পরামর্শ: "এমন কোনও ডিজাইনের প্যাটার্ন রয়েছে যা সমস্যার সমাধান করতে পারে এক্স?"। যেহেতু ডিজাইনের নিদর্শনগুলি কোনও সমস্যা সমাধানের জন্য, সেগুলি ব্যবহার করা উচিত নয় যাতে তারা ব্যবহৃত হয়।
বার্ডির

1
@ কিয়ামলালুনো, আমি যুক্তি দিয়ে বলব যে প্রশ্নটি উত্তরযোগ্য নয়, চ্যাটি বা অবৈধ নয়, যদিও এটি তর্কসাপেক্ষভাবে খোলামেলা হতে পারে। প্রশ্নটি জিজ্ঞাসা করার আমার উদ্দেশ্য হ'ল ডিজাইনের ধরণগুলি কীভাবে ব্যবহার করা হয় সে সম্পর্কে আরও ভাল ধারণা অর্জন করা, যার সাথে আমি কিছুটা পরিচিত।
ম্যাট ভি।

উত্তর:


10

আরম্ভের জন্য এক জায়গা হ'ল মূলটি এবং অবদানের জন্য প্রকাশিত নিদর্শনগুলি। - ল্যারি গারফিল্ডের একটি দুর্দান্ত রচনা আপ (ক্রেল) একটি দ্রুপাল ওয়াচডগ নিবন্ধে পাওয়া যাবে ।

পর্যবেক্ষক, দর্শক এবং উঁকি দেওয়া টমস

দ্রুপাল আসলে পর্যবেক্ষক এবং দর্শনার্থীর দ্বৈত নিদর্শনগুলিতে নির্মিত, যদিও এটি তাদের নামে ডাকে না। পরিবর্তে, এটি তাদের হুকস বলে। hook_node_load(), hook_user_login()এবং আরও কিছুটা বলতে গেলে নোড এবং ব্যবহারকারীদের পর্যবেক্ষণ করা হয়। hook_form_alter(), hook_node_view()এবং আরও অনেকগুলি সংক্ষেপে, দর্শনার্থী। যেহেতু দ্রুপাল উভয়ের মধ্যে পার্থক্য করে না, কিছু হুক যুক্তিযুক্তভাবে উভয় প্যাটার্ন হিসাবে বিবেচিত হতে পারে তবে নীতিটি একই।

কারখানা এবং আদেশ

কারখানার প্যাটার্নে বিভিন্ন প্রকারের বৈচিত্র রয়েছে, তবে তারা সকলেই একই ধারণাটিতে ফোটে: একটি অবজেক্ট, ক্লায়েন্ট অন্য যুক্তি, কারখানাকে যুক্তিযুক্ত টুকরোটির যথাযথ প্রয়োগের জন্য জিজ্ঞাসা করে, তবে এটি কোনটি যত্ন করে না । এটি সিদ্ধান্ত নিতে কারখানার হাতে রয়েছে। db_insert()ফাংশনটি বিবেচনা করুন , যার মধ্যে গুরুত্বপূর্ণ বিটগুলি নীচে দেখানো হয়েছে:

   function db_insert($table, array $options = array()) {
       // ...
       return Database::getConnection($options['target'])->insert($table, $options);
     }

Database::getConnection()পদ্ধতি একটি কারখানা জানি এই সাইটটির জন্য একটি সংযোগ বস্তুর উপযুক্ত ফেরৎ হয়।

ডাক্তার দ্রুপালের নির্ভরতা ইনজেকশন

ড্রুপাল 6-এ, মেনু সিস্টেমটি মুষ্টিবদ্ধ হয়েছিল এবং বহু-পদক্ষেপের প্রক্রিয়া হিসাবে পুনর্লিখন হয়েছিল। আমরা এখন একই পৃষ্ঠা কলব্যাকটি প্রয়োগ করব:

   function example_menu() {
       $items['node/%node/example'] = array(
         'page callback' => 'example_page',
         'page arguments' => array(1),
         // ...
       );
       return $items;
     }

     function example_page($node) {
       // Do useful stuff here.
     }

এই নতুন সেটআপে মেনু রাউটার আরও জটিল হয়। পরিবর্তে, পেজ কলব্যাকটি নোড পেয়েছে যার উপর এটি নির্ভর করে এটি, যার মধ্যে এটি ইনজেকশন। এটি আমাদের বেশ কয়েকটি সুবিধা দেয়।

ভাঙ্গা (r) এর জন্য যান

একটি সাধারণ পদ্ধতির মধ্যে ব্রোকার বা মধ্যস্থতার ধারণাটির কিছুটা ভিন্নতা। এই নকশায় কোনও বস্তু সরাসরি অন্য কোনও বস্তুর কাছ থেকে সরাসরি তথ্য অনুরোধ করে না। পরিবর্তে এটি কোনও মধ্যস্থতাকারী অবজেক্টকে জিজ্ঞাসা করে, যা এতে ectedুকিয়ে দেওয়া হয়েছিল, তার পক্ষে অনুরোধ করার জন্য। যদিও এর অর্থ এখনও প্রথম অবজেক্টটিকে সক্রিয়ভাবে তথ্যের জন্য অনুরোধ করতে হবে, এটি কেবলমাত্র মধ্যস্থতাকারী বস্তুর সাথে শক্তভাবে সংযুক্ত করা হয়েছে এবং অন্যান্য বস্তুর অগণিতের সাথে এটির জন্য তথ্যের জন্য অনুরোধ করার প্রয়োজন হতে পারে। এর অর্থ এই যে অন্যান্য সিস্টেমগুলি পরিবর্তিত হলে আমাদের কেবলমাত্র মধ্যস্থতাকারী আপডেট করতে হবে, এটি প্রতিটি স্পর্শকারী সিস্টেমই নয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.