ECMAScript ওয়ার্ডস-আইন্ড-ওয়ার্ক

ওয়ার্ডপ্রেস পরিভাষা

对象

ECMA-262 把对象(object)定义为“属性的无序集合,每个属性存放一个原始值、对象或函数”。严格来说,这意味着对象是无特定顺序的值的数组。

尽管 ECMAScript 如此定义对象,但它更通用的定义是基于代码的名词(人、地点或事物)的表示。

每个对象都由类定义,可以把类看做对象的配方。类不仅要定义对象的接口(interface)(开发者访问的属性和方法),还要定义对象的内部工作(使属性和方法发挥作用的代码)。编译器和解释程序都根据类的说明构建对象。

ইনস্ট্যান্স

ক্লাস দ্বারা অবজেক্ট তৈরি করতে প্রোগ্রাম, তৈরি হওয়া অবজেক্টকে ক্লাসের ইনস্ট্যান্স (instance) বলা হয়।ক্লাস দ্বারা অবজেক্ট তৈরির সংখ্যা একমাত্র কম্পিউটারের ভৌতিক মেমরির সীমান্ত দ্বারা নির্দিষ্ট হয়।প্রত্যেক ইনস্ট্যান্সই একই আচরণ করে, কিন্তু প্রত্যেক ইনস্ট্যান্সকে একটি পৃথক তথ্য সংগ্রহ প্রদান করা হয়।ক্লাস দ্বারা অবজেক্ট তৈরির প্রক্রিয়াকে ইনস্ট্যান্টিয়েশন (instantiation) বলা হয়。

আগের চ্যাপ্টারে আমরা উল্লেখ করেছি যে, ইসকিমাস্ক্রিপ্টকে আধিকারিকভাবে শ্রেণী নেই।পরিবর্তে, ECMA-262 অবজেক্ট নির্বাচনকে অবজেক্ট রেসিপি হিসাবে বর্ণনা করে।এটি ইসকিমাস্ক্রিপ্টের একটি ভৌতিক সমাধান, কারণ অবজেক্ট নির্বাচন একটি অবজেক্ট এবং আমরা অবজেক্ট নির্বাচনকে 'শ্রেণী' বলি, কারণ অধিকাংশ ডেভেলপারকে এই শব্দটি আরও পরিচিত, এবং কার্যকারিতায়, উভয়ই একই হয়。

ওয়ার্ড অবজেক্ট ল্যাঙ্গুয়েজের প্রতিষ্ঠান

একটি ওয়ার্ড অবজেক্ট ল্যাঙ্গুয়েজ কোডারকে চারটি মৌলিক ক্ষমতা প্রদান করতে হবে:

  1. একসঙ্গে রক্ষণায়োগ - সংশ্লিষ্ট তথ্য (কোনও মালিকানা বা পদ্ধতি) অবজেক্টের মধ্যে সংরক্ষিত করার ক্ষমতা
  2. অবজেক্ট সংগঠন - একটি অবজেক্টকে আরেকটি অবজেক্টের মধ্যে সংরক্ষিত করার ক্ষমতা
  3. উত্তরসূরী - একটি শ্রেণী (class) থেকে (বা একাধিক শ্রেণী থেকে) শ্রেণীর প্রকৃতি ও পদ্ধতি প্রাপ্ত করার ক্ষমতা
  4. বহুলতা - একটি ফাংশন বা পদ্ধতি একাধিক পদ্ধতিতে চালাতে পারে এই ক্ষমতা

ইসকিমাস্ক্রিপ্ট এই প্রতিষ্ঠানগুলোকে সমর্থন করে, তাই তা ওয়ার্ড অবজেক্ট হিসাবে দেখা যেতে পারে。

অবজেক্টের গঠন

ইসকিমাস্ক্রিপ্টে, অবজেক্ট এট্রিবিউট (অ্যাট্রিবিউট) দ্বারা গঠিত, এট্রিবিউট একটি প্রকৃত মূল্য, বা উপাদান মূল্য হতে পারে।যদি এট্রিবিউট একটি ফাংশন সংরক্ষিত করে, তবে তা অবজেক্টের মধ্যে একটি মথুর (method) হিসাবে ব্যবহৃত হবে, না তবে এট্রিবিউট অবজেক্টের একটি প্রকৃত মালিকানা (property) হিসাবে ব্যবহৃত হবে。