Class তৈরি এবং Constructor ব্যবহার

ক্লাস এবং অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং - কফিস্ক্রিপ্ট (CoffeeScript) - Web Development

290

CoffeeScript-এ ক্লাস তৈরি করা এবং কনস্ট্রাক্টর ব্যবহার করা JavaScript-এর তুলনায় অনেক সহজ ও পরিষ্কার। CoffeeScript ক্লাস সিনট্যাক্সের মাধ্যমে আপনি সহজেই অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং (OOP) কনসেপ্ট ব্যবহার করতে পারেন। এখানে ক্লাস তৈরি এবং কনস্ট্রাক্টর ব্যবহারের সম্পূর্ণ প্রক্রিয়া আলোচনা করা হয়েছে।


CoffeeScript-এ ক্লাস তৈরি

CoffeeScript-এ ক্লাস তৈরি করতে class কিওয়ার্ড ব্যবহার করা হয়, এবং ক্লাসের মধ্যে মেথড ডিফাইন করার জন্য @ ব্যবহার করা হয়। এই সিনট্যাক্স JavaScript ক্লাসের তুলনায় আরও পরিষ্কার এবং সংক্ষিপ্ত।

উদাহরণ: ক্লাস তৈরি

class Person
  constructor: (@name, @age) ->  # কনস্ট্রাক্টর
  sayHello: -> 
    console.log "Hello, my name is #{@name} and I am #{@age} years old."

এই কোডে:

  • class দিয়ে একটি ক্লাস তৈরি করা হয়েছে।
  • constructor: কনস্ট্রাক্টর মেথড ডিফাইন করা হয়েছে যা অবজেক্ট তৈরি করার সময় কিছু প্রপার্টি অ্যাসাইন করবে।
  • @ ব্যবহার করে ক্লাসের প্রপার্টি বা মেথড ডিফাইন করা হয়েছে (যা JavaScript-এ this হিসাবে কাজ করবে)।

কনস্ট্রাক্টর (Constructor) ব্যবহার

CoffeeScript-এ কনস্ট্রাক্টর constructor: দিয়ে ডিফাইন করা হয়। এই কনস্ট্রাক্টর ফাংশনটি অবজেক্টের প্রপার্টি সেট করতে ব্যবহৃত হয় যখন একটি নতুন অবজেক্ট তৈরি করা হয়।

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

class Person
  constructor: (@name, @age) ->  # কনস্ট্রাক্টর
  sayHello: -> 
    console.log "Hello, my name is #{@name} and I am #{@age} years old."

person1 = new Person("Alice", 30)  # অবজেক্ট তৈরি
person1.sayHello()  # Hello, my name is Alice and I am 30 years old.

এখানে:

  • @name এবং @age কনস্ট্রাক্টর ফাংশনের মাধ্যমে প্রপার্টি হিসেবে সেট করা হয়েছে।
  • new Person("Alice", 30) এর মাধ্যমে একটি নতুন অবজেক্ট তৈরি করা হয়েছে এবং কনস্ট্রাক্টরের মান পাস করা হয়েছে।

JavaScript-এ কম্পাইল হওয়া কোড:

var Person;

Person = (function() {
  function Person(name, age) {
    this.name = name;
    this.age = age;
  }

  Person.prototype.sayHello = function() {
    return console.log("Hello, my name is " + this.name + " and I am " + this.age + " years old.");
  };

  return Person;

})();

CoffeeScript-এ ক্লাস ইনহেরিটেন্স (Inheritance)

CoffeeScript-এ ক্লাস ইনহেরিটেন্স খুব সহজে করা যায়। একটি ক্লাস অন্য ক্লাস থেকে মেথড এবং প্রপার্টি ইনহেরিট করতে পারে।

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

class Animal
  constructor: (@name) -> 
  speak: -> 
    console.log "#{@name} makes a noise."

class Dog extends Animal
  speak: -> 
    console.log "#{@name} barks."

dog = new Dog("Rex")
dog.speak()  # Rex barks.

এখানে:

  • Animal ক্লাসটি একটি সাধারণ ক্লাস, যা একটি speak মেথড ধারণ করে।
  • Dog ক্লাসটি Animal ক্লাস থেকে ইনহেরিট করেছে এবং তার নিজের speak মেথড পুনরায় সংজ্ঞায়িত করেছে।

JavaScript-এ কম্পাইল হওয়া কোড:

var Animal, Dog;

Animal = (function() {
  function Animal(name) {
    this.name = name;
  }

  Animal.prototype.speak = function() {
    return console.log(this.name + " makes a noise.");
  };

  return Animal;

})();

Dog = (function() {
  __extends(Dog, Animal);

  function Dog(name) {
    Dog.__super__.constructor.call(this, name);
  }

  Dog.prototype.speak = function() {
    return console.log(this.name + " barks.");
  };

  return Dog;

})();

CoffeeScript-এ স্ট্যাটিক মেথড (Static Methods)

CoffeeScript-এ ক্লাসের মধ্যে স্ট্যাটিক মেথডও তৈরি করা যায়। স্ট্যাটিক মেথড ক্লাসের নাম দিয়ে ডাকা হয়, অবজেক্টের মাধ্যমে নয়।

উদাহরণ: স্ট্যাটিক মেথড

class Calculator
  add: (a, b) -> a + b
  subtract: (a, b) -> a - b
  multiply: (a, b) -> a * b
  divide: (a, b) -> a / b

  static calculateArea: (length, width) -> length * width

এখানে, calculateArea একটি স্ট্যাটিক মেথড যা Calculator ক্লাসের নাম দিয়ে কল করা যেতে পারে, অবজেক্টের মাধ্যমে নয়।

ব্যবহার:

area = Calculator.calculateArea(10, 5)
console.log area  # 50

JavaScript-এ কম্পাইল হওয়া কোড:

var Calculator;

Calculator = (function() {
  function Calculator() {}

  Calculator.prototype.add = function(a, b) {
    return a + b;
  };

  Calculator.prototype.subtract = function(a, b) {
    return a - b;
  };

  Calculator.prototype.multiply = function(a, b) {
    return a * b;
  };

  Calculator.prototype.divide = function(a, b) {
    return a / b;
  };

  Calculator.calculateArea = function(length, width) {
    return length * width;
  };

  return Calculator;

})();

সারাংশ

CoffeeScript-এ ক্লাস তৈরি এবং কনস্ট্রাক্টর ব্যবহার করা খুবই সহজ। class কিওয়ার্ড দিয়ে ক্লাস তৈরি করা হয়, এবং constructor: দিয়ে ক্লাসের কনস্ট্রাক্টর ডিফাইন করা হয়। CoffeeScript-এ ক্লাসের মধ্যে @ ব্যবহার করে প্রপার্টি এবং মেথড ডিফাইন করা হয়। CoffeeScript JavaScript-এর তুলনায় আরও পরিষ্কার এবং সংক্ষিপ্ত কোড লেখার সুযোগ দেয়, এবং এটি অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং (OOP) এর জন্য একটি দুর্দান্ত উপায়।

Content added By
Promotion

Are you sure to start over?

Loading...