কম্পিউটার টিউটোরিয়াল

PHP-তে ডিপেন্ডেন্সি ইনজেকশন (Dependency Injection) কী?

ডিপেন্ডেন্সি ইনজেকশন হলো একটি প্রক্রিয়া যেখানে একটি অবজেক্ট অন্য অবজেক্টের ডিপেন্ডেন্সি সরবরাহ করে। ডিপেন্ডেন্সি ইনজেকশন একটি সফটওয়্যার ডিজাইন পদ্ধতি যা হার্ড-কোডেড ডিপেন্ডেন্সি এড়াতে সাহায্য করে এবং রানটাইম ও কম্পাইল টাইম দুটোতেই ডিপেন্ডেন্সি পরিবর্তন করা সম্ভব করে।

অবজেক্ট ইনজেক্ট করার অনেক পদ্ধতি রয়েছে, 그중 معروف দুটি নিচে দেওয়া হলো:

কনস্ট্রাক্টর ইনজেকশন (Constructor Injection)

এই পদ্ধতিতে ক্লাস কনস্ট্রাক্টর দিয়ে একটি অবজেক্ট ইনজেক্ট করা হয়।

উদাহরণ

<?php 
class Programmer { 
    private $skills; 
    public function __construct($skills){ 
        $this->skills = $skills; 
    } 
    public function totalSkills(){ 
        return count($this->skills); 
    } 
} 
$createskills = array("PHP", "JQUERY", "AJAX"); 
$p = new Programmer($createskills); 
echo $p->totalSkills(); 
?>

আউটপুট

3

সেটার ইনজেকশন (Setter Injection)

এখানে একটি সেটার ফাংশন দিয়ে অবজেক্টটি আপনার ক্লাসে ইনজেক্ট করা হয়।

উদাহরণ

<?php 
class Profile { 
    private $language; 
    public function setLanguage($language){ 
        $this->language = $language; 
    } 
} 
$profile = new Profile(); 
$language = array["Hindi","English","French"]; 
$profile->setLanguage($language); 
?>

ডিপেন্ডেন্সি ইনজেকশনের সুবিধা

  • নতুন ডিপেন্ডেন্সি যোগ করা একটি নতুন সেটার মেথড যোগ করার মতো সহজ, যা এক্সিস্টিং কোডের সাথে ইন্টারফেয়ার করে না।
  1. PHP ফাইল কী? খোলা, এডিট, কনভার্ট ও HTML-এর সাথে কাজ করার গাইড

  2. C#-এ ডিপেন্ডেন্সি ইনজেকশন ব্যাখ্যা

  3. C#-তে ডিপেন্ডেন্সি ইনজেকশন (Dependency Injection)

  4. Ruby কোড ডিকাপলিং: ডেলিগেশন বনাম ডিপেন্ডেন্সি ইনজেকশন