Classes এবং Objects এর ধারণা

Object-Oriented Programming (অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং) - ভিজুয়াল বেসিক ডট নেট (VB.Net) - Computer Programming

316

Classes এবং Objects এর ধারণা

Classes এবং Objects হল অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং (OOP) এর দুটি প্রধান ধারণা। OOP একটি প্রোগ্রামিং প্যারাডাইম যা কোডকে ক্লাস এবং অবজেক্টের মাধ্যমে সংগঠিত করে, যা কোডের পুনঃব্যবহারযোগ্যতা, মডুলারিটি, এবং রক্ষণাবেক্ষণ সহজ করে।

VB.Net একটি অবজেক্ট-ওরিয়েন্টেড ভাষা, তাই এতে ক্লাস এবং অবজেক্ট ব্যবহার করা খুবই সাধারণ। নিচে Classes এবং Objects এর বিস্তারিত আলোচনা করা হলো।


১. Classes (ক্লাস)

Class একটি নীলনকশা বা ব্লুপ্রিন্ট যা নির্ধারণ করে যে একটি অবজেক্ট কীভাবে আচরণ করবে এবং এর গুণাবলী কী হবে। ক্লাসে একটি অবজেক্টের প্রপার্টি (data) এবং মেথড (functions or procedures) থাকে। ক্লাস ডিফাইন করার মাধ্যমে আপনি নির্দিষ্ট ধরনের অবজেক্ট তৈরি করতে পারেন।

সিনট্যাক্স:

Class ClassName
    ' প্রপার্টি (Data)
    Dim variableName As DataType
    
    ' মেথড (Function or Procedure)
    Sub MethodName()
        ' Code here
    End Sub
End Class

ক্লাসের উদাহরণ:

Class Car
    ' প্রপার্টি
    Dim make As String
    Dim model As String
    Dim year As Integer
    
    ' কনস্ট্রাক্টর (Constructor)
    Sub New(make As String, model As String, year As Integer)
        Me.make = make
        Me.model = model
        Me.year = year
    End Sub
    
    ' মেথড
    Sub DisplayCarInfo()
        Console.WriteLine("Car: " & make & " " & model & ", Year: " & year)
    End Sub
End Class

ব্যাখ্যা:

  • এখানে Car নামক একটি ক্লাস তৈরি করা হয়েছে, যার মধ্যে তিনটি প্রপার্টি (make, model, year) এবং একটি মেথড (DisplayCarInfo) রয়েছে।
  • New কনস্ট্রাক্টর ব্যবহার করে অবজেক্টের প্রপার্টি ইনিশিয়ালাইজ করা হচ্ছে।

২. Objects (অবজেক্ট)

Object হল একটি ক্লাসের ইনস্ট্যান্স বা বাস্তব রূপ। যখন আপনি একটি ক্লাস ডিফাইন করেন, তখন আপনি সেই ক্লাসের একটি অবজেক্ট তৈরি করতে পারেন, যার মধ্যে সেই ক্লাসের সমস্ত গুণাবলী ও আচরণ থাকবে। অবজেক্টের মাধ্যমে ক্লাসের প্রপার্টি এবং মেথড অ্যাক্সেস করা যায়।

অবজেক্ট তৈরি এবং ব্যবহারের উদাহরণ:

Sub Main()
    ' অবজেক্ট তৈরি
    Dim myCar As New Car("Toyota", "Camry", 2020)

    ' অবজেক্টের মেথড কল করা
    myCar.DisplayCarInfo()
End Sub

ব্যাখ্যা:

  • myCar হল Car ক্লাসের একটি অবজেক্ট, যা "Toyota", "Camry", এবং 2020 ইনিশিয়াল ভ্যালুগুলির মাধ্যমে তৈরি হয়েছে।
  • myCar.DisplayCarInfo() কল করলে, Car ক্লাসের DisplayCarInfo মেথডটি এক্সিকিউট হবে এবং এর মাধ্যমে গাড়ির তথ্য কনসোলে প্রিন্ট হবে।

৩. Classes এবং Objects এর মধ্যে পার্থক্য

বৈশিষ্ট্যClassesObjects
সংজ্ঞাএকটি ব্লুপ্রিন্ট বা নীলনকশা যা অবজেক্টের গুণাবলী এবং আচরণ নির্ধারণ করে।একটি বাস্তব রূপ যা ক্লাসের মধ্যে সংজ্ঞায়িত গুণাবলী এবং আচরণ ধারণ করে।
প্রতিনিধিত্বক্লাস একটি প্রোগ্রামিং কাঠামো (structure) যা অবজেক্টের বৈশিষ্ট্য এবং কার্য সম্পাদন করে।অবজেক্ট ক্লাসের একক ইনস্ট্যান্স। এটি একটি বাস্তব বস্তু যা ক্লাসের সকল বৈশিষ্ট্য ধারণ করে।
উদাহরণCar ক্লাস একটি গাড়ির বৈশিষ্ট্য যেমন মডেল, রঙ, এবং গতি প্রোপার্টি সংজ্ঞায়িত করে।myCar একটি Car ক্লাসের অবজেক্ট, যা নির্দিষ্ট একটি গাড়ি।
ব্যবহারক্লাসে প্রপার্টি এবং মেথড থাকে যেগুলি অবজেক্টের জন্য আচরণ নির্ধারণ করে।অবজেক্টে সেই ক্লাসের প্রপার্টি এবং মেথডের মান থাকে এবং এগুলি ব্যবহার করা হয়।

৪. Constructors (কনস্ট্রাক্টর)

ক্লাসের constructor হল একটি বিশেষ মেথড যা ক্লাসের অবজেক্ট তৈরি হওয়ার সময় স্বয়ংক্রিয়ভাবে কল হয়। কনস্ট্রাক্টরের মাধ্যমে অবজেক্টের প্রপার্টি ইনিশিয়ালাইজ করা হয়।

সিনট্যাক্স:

Class ClassName
    Sub New()
        ' Initialization code here
    End Sub
End Class

কনস্ট্রাক্টরের উদাহরণ:

Class Car
    Dim make As String
    Dim model As String
    Dim year As Integer
    
    ' কনস্ট্রাক্টর
    Sub New(make As String, model As String, year As Integer)
        Me.make = make
        Me.model = model
        Me.year = year
    End Sub
End Class

এখানে New কনস্ট্রাক্টর Car ক্লাসের অবজেক্ট তৈরি হওয়ার সময় এক্সিকিউট হয় এবং গাড়ির প্রপার্টি ইনিশিয়ালাইজ করা হয়।


৫. Encapsulation (এনক্যাপসুলেশন)

এনক্যাপসুলেশন একটি OOP প্যারাডাইম যা ডেটা (প্রপার্টি) এবং তার কার্যকলাপ (মেথড) একসাথে একটি ইউনিটে জড়িত রাখে। এটি ডেটা অ্যাক্সেস নিয়ন্ত্রণ করতে সহায়তা করে, যেমন প্রাইভেট প্রপার্টি এবং পাবলিক মেথডের মাধ্যমে।

উদাহরণ:

Class Person
    Private name As String  ' Private variable

    ' Public property
    Public Property Name() As String
        Get
            Return name
        End Get
        Set(value As String)
            name = value
        End Set
    End Property
End Class

এখানে name প্রপার্টি private, কিন্তু এটি public property ব্যবহার করে অ্যাক্সেস করা যাচ্ছে।


সারাংশ

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

এভাবে, ক্লাস এবং অবজেক্ট ব্যবহারের মাধ্যমে কোডের পুনঃব্যবহারযোগ্যতা, মডুলারিটি এবং রক্ষণাবেক্ষণ সহজ হয়।

Content added By
Promotion

Are you sure to start over?

Loading...