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

C#-এ কম্পোজিশন (Composition) vs অ্যাগ্রিগেশন (Aggregation)

কম্পোজিশন (Composition) - Strong "has-a"

প্যারেন্ট অবজেক্ট ডিলিট হলে চাইল্ড ও ডিলিট হয়। লাইফসাইকেল বাঁধা। উদাহরণ: Car এবং Engine।

public class Engine { ... }
public class Car
{
    Engine eng = new Engine(); // Car তৈরি হলে Engine তৈরি, Car ডিলিট হলে Engine ডিলিট
}

অ্যাগ্রিগেশন (Aggregation) - Weak "has-a"

প্যারেন্ট এবং চাইল্ডের লাইফসাইকেল স্বাধীন। চাইল্ড বাইরে থেকে আসে। উদাহরণ: Employee এবং Address।

public class Address { ... }
public class Employee
{
    private Address addr;
    public Employee(Address addr) { this.addr = addr; } // বাইরে থেকে পাস করা হয়
}

পার্থক্য

  • কম্পোজিশন: আংশিক সম্পর্ক, লাইফসাইকেল ডিপেন্ডেন্ট
  • অ্যাগ্রিগেশন: সংযুক্তি, লাইফসাইকেল স্বাধীন
  1. Microsoft Edge বনাম Google Chrome: তুলনামূলক বিশ্লেষণ

  2. জাভাতে এগ리게েশন

  3. পাইথনে এমপ্লয়ি ইম্পরটেন্স (Employee Importance)

  4. পাইথনে Namedtuple