ক্লাস এবং অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং (OOP) VBScript এ

Advanced VBScript Concepts - ভিবিস্ক্রিপ্ট (VBScript) - Web Development

220

VBScript একটি স্ক্রিপ্টিং ভাষা হলেও এতে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং (OOP) এর কিছু মূল ধারণা সমর্থিত রয়েছে। VBScript এ ক্লাস তৈরি এবং অবজেক্ট তৈরি করা যায়, তবে এটি অন্যান্য পূর্ণাঙ্গ OOP ভাষার মতো ব্যাপকভাবে অবজেক্ট ওরিয়েন্টেড ফিচার (যেমন ইনহেরিটেন্স) সমর্থন করে না। তবুও, VBScript এ Encapsulation, Polymorphism, এবং Abstraction এর মতো OOP কনসেপ্ট বাস্তবায়ন করা সম্ভব।


VBScript এ ক্লাস এবং অবজেক্ট তৈরি

VBScript এ ক্লাস এবং অবজেক্ট তৈরি করতে Class কিওয়ার্ড ব্যবহার করা হয়। ক্লাসের মধ্যে বিভিন্ন Property (গুণ) এবং Method (পদ্ধতি) থাকতে পারে।

ক্লাস তৈরি এবং অবজেক্ট তৈরি

ক্লাস তৈরি

Class Person
    ' Properties (গুণ)
    Public Name
    Public Age

    ' Method (পদ্ধতি)
    Public Sub Introduce
        MsgBox "My name is " & Name & " and I am " & Age & " years old."
    End Sub
End Class

এখানে, Person নামক একটি ক্লাস তৈরি করা হয়েছে। এতে দুটি পাবলিক প্রপার্টি রয়েছে—Name এবং Age, এবং একটি Introduce নামক মেথড রয়েছে যা ক্লাসের অবজেক্টের তথ্য প্রদর্শন করবে।


অবজেক্ট তৈরি করা

একবার ক্লাস তৈরি হলে, আপনি তার অবজেক্ট তৈরি করতে পারেন এবং এর প্রপার্টি বা মেথড ব্যবহার করতে পারেন।

Dim person1

' অবজেক্ট তৈরি করা
Set person1 = New Person

' অবজেক্টের প্রপার্টি সেট করা
person1.Name = "John"
person1.Age = 30

' অবজেক্টের মেথড কল করা
person1.Introduce

এখানে, person1 নামক একটি অবজেক্ট তৈরি করা হয়েছে Person ক্লাস থেকে। অবজেক্টটির Name এবং Age প্রপার্টি সেট করা হয়েছে এবং Introduce মেথড কল করা হয়েছে, যা মেসেজ বক্সে তথ্য প্রদর্শন করবে।


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

Encapsulation হল ডেটা (প্রপার্টি) এবং ফাংশন (মেথড) একত্রে একটি একক ইউনিটে রাখা। VBScript এ, আপনি ক্লাসের প্রপার্টি এবং মেথড একত্রিত করে ডেটাকে সুরক্ষিত রাখতে পারেন। এছাড়া, প্রপার্টি বা মেথডকে Private করে রাখতে পারেন যাতে তারা বাইরের কোড থেকে সরাসরি অ্যাক্সেস না করা যায়।

উদাহরণ: Encapsulation

Class Person
    ' Private Properties (গোপন প্রপার্টি)
    Private Name
    Private Age

    ' Public Method to set Name
    Public Sub SetName(newName)
        Name = newName
    End Sub

    ' Public Method to set Age
    Public Sub SetAge(newAge)
        Age = newAge
    End Sub

    ' Public Method to get Name
    Public Function GetName()
        GetName = Name
    End Function

    ' Public Method to get Age
    Public Function GetAge()
        GetAge = Age
    End Function

    ' Public Method to introduce
    Public Sub Introduce
        MsgBox "My name is " & GetName() & " and I am " & GetAge() & " years old."
    End Sub
End Class

এখানে, Name এবং Age প্রপার্টি গোপন রাখা হয়েছে (Private), এবং সেগুলি অ্যাক্সেস করার জন্য পাবলিক Set এবং Get মেথড ব্যবহার করা হয়েছে। এটি ডেটা সুরক্ষা এবং ক্লাসের ভিতরের লজিক নিয়ন্ত্রণ করতে সাহায্য করে।


Polymorphism (পলিমরফিজম)

Polymorphism হল একটি ফাংশন বা মেথডের একাধিক রূপ থাকতে পারে। VBScript এ পলিমরফিজম সাধারণত ওভাররাইডিং বা ওভারলোডিং এর মাধ্যমে বাস্তবায়িত হয় না, তবে আপনি একই নামের মেথড তৈরি করে বিভিন্ন পরিস্থিতিতে আলাদা আলাদা ফলাফল পেতে পারেন।

উদাহরণ: Polymorphism

Class Animal
    Public Sub Speak
        MsgBox "Animal speaks"
    End Sub
End Class

Class Dog
    Inherits Animal

    ' Dog ক্লাসে Speak মেথড ওভাররাইড
    Public Sub Speak
        MsgBox "Dog barks"
    End Sub
End Class

Dim myAnimal, myDog
Set myAnimal = New Animal
Set myDog = New Dog

' Animal ক্লাসের Speak মেথড
myAnimal.Speak

' Dog ক্লাসের Speak মেথড
myDog.Speak

এখানে, Dog ক্লাসটি Animal ক্লাস থেকে ইনহেরিট করেছে এবং Speak মেথডকে ওভাররাইড করেছে, যাতে ডগের জন্য আলাদা আচরণ (বarking) তৈরি করা হয়।


Abstraction (অ্যাবস্ট্রাকশন)

Abstraction হল এমন একটি ধারণা যার মাধ্যমে ক্লাসের ভিতরের জটিলতাগুলো লুকিয়ে রাখা হয় এবং শুধুমাত্র দরকারি অংশ প্রকাশ করা হয়। VBScript এ আপনি Private প্রপার্টি এবং মেথড ব্যবহার করে অ্যাবস্ট্রাকশন অর্জন করতে পারেন।

উদাহরণ: Abstraction

Class Car
    Private Make
    Private Model

    Public Sub SetCarDetails(carMake, carModel)
        Make = carMake
        Model = carModel
    End Sub

    Public Function GetCarDetails()
        GetCarDetails = "Car Make: " & Make & ", Model: " & Model
    End Function
End Class

Dim myCar
Set myCar = New Car
myCar.SetCarDetails "Toyota", "Corolla"

' Only the GetCarDetails method is accessible
MsgBox myCar.GetCarDetails

এখানে, Make এবং Model প্রপার্টি গোপন রাখা হয়েছে এবং তাদের সেট ও গেট করার জন্য পাবলিক মেথড দেয়া হয়েছে। বাইরের কোড শুধুমাত্র SetCarDetails এবং GetCarDetails মেথড ব্যবহার করতে পারে।


সারাংশ

VBScript এ OOP এর কিছু মূল ধারণা যেমন Encapsulation, Polymorphism, এবং Abstraction সমর্থিত হলেও এটি পূর্ণাঙ্গ OOP ভাষার মতো ইনহেরিটেন্স এবং অন্যান্য বৈশিষ্ট্য সমর্থন করে না। তবে VBScript এর মাধ্যমে আপনি ক্লাস এবং অবজেক্ট তৈরি করতে পারেন, যা কোডের পুনঃব্যবহারযোগ্যতা, ডেটা নিরাপত্তা এবং কার্যকারিতা বাড়াতে সহায়তা করে।

Content added By
Promotion

Are you sure to start over?

Loading...