জাভাস্ক্রিপ্টে OOP-তে সেটার এবং গেটারের সুবিধা

পূর্ববর্তী পাঠে আমরা প্রতিটি বৈশিষ্ট্যের জন্য একটি গেটার এবং একটি সেটার তৈরি করেছি। প্রশ্ন উঠতে পারে, কেন এই জটিলতার প্রয়োজন, কারণ কার্যত একই প্রভাব অর্জন করা যেতে পারে যদি বৈশিষ্ট্যগুলোকে ব্যক্তিগত না করে প্রকাশ্য করা হয়।

ব্যাপারটি হলো যে গেটার এবং সেটারের একটি সুবিধা রয়েছে: একটি বৈশিষ্ট্যে অ্যাক্সেস করার আগে কিছু যাচাই করা যেতে পারে। উদাহরণস্বরূপ, আমাদের ক্ষেত্রে আমরা নাম এবং উপনাম লিখতে গিয়ে যাচাই করতে পারি যে নতুন মানটি একটি খালি স্ট্রিং নয়:

javascriptclass User {
  #name;
  #surn;
  
  setName(name) {
    if (name.length > 0) {
      this.#name = name;
    } else {
      throw new Error('name is incorrect');
    }
  }
  setSurn(surn) {
    if (surn.length > 0) {
      this.#surn = surn;
    } else {
      throw new Error('surn is incorrect');
    }
  }
  
  getName() {
    return this.#name;
  }
  getSurn() {
    return this.#surn;
  }
}

চলুন দেখে নেওয়া যাক এটি কিভাবে কাজ করে। প্রথমে ক্লাসের একটি অবজেক্ট তৈরি করি:

javascriptlet user = new User;

এখন সঠিক মান লিখে দেখার চেষ্টা করি:

javascriptuser.setName('john');

এবারে ভুল মান লিখে দেখার চেষ্টা করি:

javascriptuser.setName(''); // ভুল
Задание 1

Employee ক্লাসে বয়সের সেটারে এটি নিশ্চিত করুন যে বয়স অবশ্যই 0 থেকে 120 এর মধ্যে হতে হবে।

Задание 2

Employee ক্লাসে বেতনের গেটারে এটি এমনভাবে তৈরি করুন যাতে বেতন পড়ার সময় এর মানের শেষে ডলারের চিহ্ন যোগ হয়ে যায়।