বাংলায় ডার্ট প্রোগ্রামিং: অপারেটর

বর্তমানে Dart একটি জনপ্রিয় প্রোগ্রামিং ল্যাঙ্গুয়েজ, যা ফ্লাটার অ্যাপ ডেভেলপমেন্টে ব্যাপকভাবে ব্যবহৃত হয়। Dart-এ বিভিন্ন ধরনের অপারেটর রয়েছে, যা ভেরিয়েবল, মান, এবং এক্সপ্রেশনগুলির মধ্যে অপারেশন করতে সাহায্য করে। এই ব্লগে, আমরা Dart-এর বিভিন্ন অপারেটরগুলি নিয়ে আলোচনা করব।

1. অ্যারিথমেটিক অপারেটর (Arithmetic Operators)

অ্যারিথমেটিক অপারেটরগুলি গাণিতিক প্রয়োগ করতে ব্যবহৃত হয়। যেমন:

  • + (যোগ): দুটি সংখ্যা যোগ করে।
  • - (বিয়োগ): একটি সংখ্যা থেকে অন্য সংখ্যা বিয়োগ করে।
  • * (গুণ): দুটি সংখ্যা গুণ করে।
  • / (ভাগ): একটি সংখ্যাকে অন্য সংখ্যা দিয়ে ভাগ করে (ফলাফল ডবল টাইপে)।
  • % (মডুলাস): ভাগশেষ বের করে।
  • ~/ (ইন্টিজার ভাগ): ভাগফল ইন্টিজার টাইপে রিটার্ন করে।

উদাহরণ:

void main() {
  int a = 10;
  int b = 3;

  print(a + b); // 13
  print(a - b); // 7
  print(a * b); // 30
  print(a / b); // 3.333...
  print(a % b); // 1
  print(a ~/ b); // 3
}

2. রিলেশনাল অপারেটর (Relational Operators)

রিলেশনাল অপারেটরগুলি দুটি মানের মধ্যে তুলনা করতে ব্যবহৃত হয়। এগুলি বুলিয়ান (true বা false) মান রিটার্ন করে।

  • == (সমান): দুটি মান সমান হলে true রিটার্ন করে।
  • != (সমান নয়): দুটি মান সমান না হলে true রিটার্ন করে।
  • > (বড়): প্রথম মান দ্বিতীয় মানের থেকে বড় হলে true রিটার্ন করে।
  • < (ছোট): প্রথম মান দ্বিতীয় মানের থেকে ছোট হলে true রিটার্ন করে।
  • >= (বড় বা সমান): প্রথম মান দ্বিতীয় মানের থেকে বড় বা সমান হলে true রিটার্ন করে।
  • <= (ছোট বা সমান): প্রথম মান দ্বিতীয় মানের থেকে ছোট বা সমান হলে true রিটার্ন করে।

উদাহরণ:

void main() {
  int x = 10;
  int y = 20;

  print(x == y); // false
  print(x != y); // true
  print(x > y);  // false
  print(x < y);  // true
  print(x >= y); // false
  print(x <= y); // true
}

3. লজিক্যাল অপারেটর (Logical Operators)

লজিক্যাল অপারেটরগুলি একাধিক শর্ত যাচাই করতে ব্যবহৃত হয়। এগুলি সাধারণত কন্ডিশনাল স্টেটমেন্টে ব্যবহৃত হয়।

  • && (AND): দুটি শর্তই সঠিক হলে true রিটার্ন করে।
  • || (OR): যেকোনো একটি শর্ত সঠিক হলে true রিটার্ন করে।
  • ! (NOT): শর্তের মান উল্টে দেয় (সঠিক হলে মিথ্যা, মিথ্যা হলে সত্য)।

উদাহরণ:

void main() {
  bool a = true;
  bool b = false;

  print(a && b); // false
  print(a || b); // true
  print(!a);     // false
}

4. অ্যাসাইনমেন্ট অপারেটর (Assignment Operators)

অ্যাসাইনমেন্ট অপারেটরগুলি ভেরিয়েবলে মান অ্যাসাইন করতে ব্যবহৃত হয়।

  • = (সাধারণ অ্যাসাইনমেন্ট): ডান পাশের মান বাম পাশের ভেরিয়েবলে অ্যাসাইন করে।
  • +=-=*=/= (কম্পাউন্ড অ্যাসাইনমেন্ট): গাণিতিক অপারেশন এবং অ্যাসাইনমেন্ট একসাথে করে।

উদাহরণ:

void main() {
  int a = 10;
  a += 5; // a = a + 5
  print(a); // 15

  a -= 3; // a = a - 3
  print(a); // 12

  a *= 2; // a = a * 2
  print(a); // 24

  a ~/= 4; // a = a ~/ 4
  print(a); // 6
}

5. ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটর (Increment and Decrement Operators)

এই অপারেটরগুলি ভেরিয়েবলের মান ১ বৃদ্ধি বা হ্রাস করতে ব্যবহৃত হয়।

  • ++ (ইনক্রিমেন্ট): মান ১ বৃদ্ধি করে।
  • -- (ডিক্রিমেন্ট): মান ১ হ্রাস করে।

উদাহরণ:

void main() {
  int a = 10;

  a++; // a = a + 1
  print(a); // 11

  a--; // a = a - 1
  print(a); // 10
}

6. কন্ডিশনাল অপারেটর (Conditional Operator)

কন্ডিশনাল অপারেটর (?:) একটি শর্টহ্যান্ড উপায়ে কন্ডিশন যাচাই করে দুটি মানের মধ্যে একটি রিটার্ন করে।

সিনট্যাক্স:

condition ? expression1 : expression2;

উদাহরণ:

void main() {
  int a = 10;
  int b = 20;

  int result = (a > b) ? a : b;
  print(result); // 20
}

7. টার্নারি অপারেটর (Ternary Operator)

টার্নারি অপারেটরটি কন্ডিশনাল অপারেটরের মতোই কাজ করে। এটি তিনটি অপারেন্ড নেয় এবং কন্ডিশন অনুযায়ী মান রিটার্ন করে।

উদাহরণ:

void main() {
  int age = 18;
  String status = (age >= 18) ? "Adult" : "Minor";
  print(status); // Adult
}

8. টাইপ টেস্ট অপারেটর (Type Test Operators)

টাইপ টেস্ট অপারেটরগুলি একটি ভেরিয়েবলের টাইপ চেক করতে ব্যবহৃত হয়।

  • is: ভেরিয়েবলটি নির্দিষ্ট টাইপ হলে true রিটার্ন করে।
  • is!: ভেরিয়েবলটি নির্দিষ্ট টাইপ না হলে true রিটার্ন করে।

উদাহরণ:

void main() {
  var a = 10;

  print(a is int); // true
  print(a is! String); // true
}

9. বিটওয়াইজ অপারেটর (Bitwise Operators)

বিটওয়াইজ অপারেটরগুলি বাইনারি লেভেলে অপারেশন পারফর্ম করে।

  • & (AND): দুটি বাইনারি সংখ্যার AND অপারেশন করে।
  • | (OR): দুটি বাইনারি সংখ্যার OR অপারেশন করে।
  • ^ (XOR): দুটি বাইনারি সংখ্যার XOR অপারেশন করে।
  • ~ (NOT): বাইনারি সংখ্যার NOT অপারেশন করে।
  • << (Left Shift): বাইনারি সংখ্যাকে বাম দিকে শিফট করে।
  • >> (Right Shift): বাইনারি সংখ্যাকে ডান দিকে শিফট করে।

উদাহরণ:

void main() {
  int a = 5; // 0101 in binary
  int b = 3; // 0011 in binary

  print(a & b); // 1 (0001)
  print(a | b); // 7 (0111)
  print(a ^ b); // 6 (0110)
  print(~a);    // -6 (2's complement)
  print(a << 1); // 10 (1010)
  print(a >> 1); // 2 (0010)
}

10. ক্যাসকেডিং অপারেটর (Cascade Operator)

ক্যাসকেডিং অপারেটর (..) একই অবজেক্টে একাধিক অপারেশন চেইন করতে ব্যবহৃত হয়।

উদাহরণ:

class Person {
  String? name;
  int? age;

  void display() {
    print("Name: $name, Age: $age");
  }
}

void main() {
  Person()
    ..name = "John"
    ..age = 25
    ..display(); // Name: John, Age: 25
}

Dart-এ বিভিন্ন ধরনের অপারেটর রয়েছে, যা প্রোগ্রামিংকে সহজ করে তোলে। এই অপারেটরগুলি বুঝে নিলে আপনি Dart-এ আরও দক্ষ হয়ে উঠবেন। আশা করি, এই ব্লগটি আপনাকে Dart অপারেটরগুলি বুঝতে সাহায্য করবে।

হ্যাপি কোডিং! 😊

Spread the love

1 thought on “বাংলায় ডার্ট প্রোগ্রামিং: অপারেটর”

Leave a Comment