অধ্যায় ৬: Dart-এ Object Oriented Programming (OOP)
ভূমিকা: OOP আসলে কী?
OOP (Object-Oriented Programming) হল এমন একটি প্রোগ্রামিং ধারণা (paradigm), যেখানে প্রোগ্রামকে “অবজেক্ট” দিয়ে গঠিত করা হয়। প্রতিটি অবজেক্টের নিজের কিছু data (property) এবং behavior (method) থাকে।
OOP-এর চারটি মূল স্তম্ভ:
-
Encapsulation (আবদ্ধতা) – ডেটা এবং কোড একত্রে রাখে।
-
Abstraction (সংক্ষিপ্ততা) – জটিল বিষয়কে সহজভাবে প্রকাশ করে।
-
Inheritance (উত্তরাধিকার) – একটি ক্লাস থেকে অন্য ক্লাস বৈশিষ্ট্য নেয়।
-
Polymorphism (বহুরূপিতা) – একই ইন্টারফেস বিভিন্নভাবে ব্যবহার হয়।
Dart একটি Pure OOP Language?
না, Dart সম্পূর্ণরূপে OOP না হলেও এটি OOP-এর মূল বৈশিষ্ট্যগুলো সমর্থন করে — যেমন ক্লাস, অবজেক্ট, ইনহেরিটেন্স, পলিমরফিজম, ইত্যাদি।
১. Class এবং Object
Class হল একটি টেমপ্লেট আর Object হল সেই টেমপ্লেট দিয়ে তৈরি বস্তু।
২. Constructor (নির্মাতা)
Object তৈরি করার সময় ডেটা সেট করার জন্য constructor ব্যবহার হয়।
৩. Encapsulation
প্রত্যক্ষভাবে properties অ্যাক্সেস না করে method দিয়ে access করা।
৪. Inheritance (উত্তরাধিকার)
একটি ক্লাস অন্য ক্লাসের বৈশিষ্ট্য গ্রহণ করে।
৫. Polymorphism (বহুরূপিতা)
একই মেথড বিভিন্ন ক্লাসে ভিন্ন ভিন্নভাবে কাজ করে।
৬. Abstract Class
সম্পূর্ণ ক্লাস না, শুধু কাঠামো তৈরি করতে ব্যবহৃত হয়।
৭. Interface (Implemented Class)
Dart-এ আলাদা interface নেই, কিন্তু যেকোন class কে implement করে interface বানানো যায়।
উপসংহার
OOP প্রোগ্রামিংকে আরও শক্তিশালী, মেইনটেইনযোগ্য এবং মডুলার করে তোলে। Dart OOP-এর সব কনসেপ্ট সমর্থন করে এবং Flutter-এ বাস্তব অ্যাপ বানানোর সময় এসব OOP ধারণা খুব গুরুত্বপূর্ণ।
সব অধ্যায় একসাথে দেখতে এখানে ক্লিক করুন।