কী পার্থক্য - ঘোষণামূলক বনাম আবশ্যিক প্রোগ্রামিং
ঘোষণামূলক এবং অপরিহার্য প্রোগ্রামিং দুটি সাধারণ প্রোগ্রামিং দৃষ্টান্ত। ডিক্লারেটিভ এবং ইম্পেরেটিভ প্রোগ্রামিং এর মধ্যে মূল পার্থক্য হল যে ডিক্লারেটিভ প্রোগ্রামিং প্রোগ্রামের কি অর্জন করা উচিত তার উপর ফোকাস করে যখন ইম্পেরেটিভ প্রোগ্রামিং ফোকাস করে কিভাবে প্রোগ্রামের ফলাফল অর্জন করা উচিত।
বৈশিষ্ট্যের উপর নির্ভর করে একটি প্রোগ্রামিং ভাষাকে শ্রেণিবদ্ধ করতে একটি প্রোগ্রামিং দৃষ্টান্ত ব্যবহার করা হয়। এটি একটি নির্দিষ্ট সমস্যা সমাধানের জন্য একটি নির্দিষ্ট প্যাটার্ন বা শৈলী অনুসরণ করার অনুমতি দেয়৷
ঘোষণামূলক প্রোগ্রামিং কি?
ঘোষণামূলক প্রোগ্রামিং একটি বাস্তব-বিশ্বের দৃশ্যকল্প ব্যবহার করে ব্যাখ্যা করা যেতে পারে। অনুমান করুন যে ব্যবহারকারীকে নতুন ইমেলগুলি পরীক্ষা করতে হবে। একটি পদ্ধতি হল ইনবক্স বিজ্ঞপ্তি সক্রিয় করা। ব্যবহারকারীকে শুধুমাত্র একবার বিজ্ঞপ্তিগুলি সক্ষম করতে হবে এবং প্রতিবার একটি নতুন ইমেল আসার সাথে সাথে সে স্বয়ংক্রিয়ভাবে একটি বিজ্ঞপ্তি পায়। ঘোষণামূলক প্রোগ্রামিং এর অনুরূপ। এটি সরলতা প্রদান করে। ঘোষণামূলক প্রোগ্রামিং প্রয়োজনীয় ফলাফল প্রকাশ করে। এটি নিয়ন্ত্রণ প্রবাহ বর্ণনা না করে একটি গণনার যুক্তি ব্যাখ্যা করে৷
চিত্র 01: প্রোগ্রামিং দৃষ্টান্ত
ঘোষণামূলক প্রোগ্রামিংয়ের একটি উদাহরণ নিম্নরূপ। এটি হল একটি অ্যারের সংখ্যাগুলিকে একটি ধ্রুবক দ্বারা গুণ করা এবং একটি নতুন অ্যারেতে সংরক্ষণ করা৷
var সংখ্যা=[1, 2, 3];
var newnumbers=numbers.map(ফাংশন(সংখ্যা){
রিটার্ন নম্বর5;
});
Console.log(নতুন নম্বর);
উপরের উদাহরণে, ‘ম্যাপ’ অ্যারের প্রতিটি আইটেমকে পুনরাবৃত্তি করতে এবং প্রতিটি আইটেমের জন্য কল ব্যাক ফাংশন চালু করতে এবং নতুন অ্যারেতে রিটার্ন মান সংরক্ষণ করার নির্দেশনা দেয়। এটি 5, 10, 15 আউটপুট দেবে। এই প্রোগ্রামে, ম্যাপ ফাংশন ব্যবহার করে সংখ্যাগুলিকে 5 দ্বারা গুণ করার মূল উদ্দেশ্যটি সম্পন্ন করা হয়। এটি প্রতিটি উপাদানের মধ্য দিয়ে যাবে এবং নতুন অ্যারেতে মানগুলি গণনা এবং সংরক্ষণ করতে কল ব্যাক ফাংশন ব্যবহার করবে। সমস্ত পদক্ষেপগুলি সরবরাহ করার প্রয়োজন নেই। মূল ফোকাস কি অর্জন করা উচিত তা দেওয়া হয়৷
ইম্পারেটিভ প্রোগ্রামিং কি?
অত্যাবশ্যকীয় প্রোগ্রামিংকে আগের মতো বাস্তব-বিশ্বের দৃশ্যকল্প ব্যবহার করে ব্যাখ্যা করা যেতে পারে। নতুন ইমেল চেক করতে, ব্যবহারকারী জিমেইলে লগইন করতে পারেন এবং পৃষ্ঠাটি রিফ্রেশ করে দেখতে পারেন যে তিনি নতুন ইমেল পেয়েছেন কি না।এটি আবশ্যিক প্রোগ্রামিংয়ের অনুরূপ। এটি ফলাফল অর্জনের জন্য জড়িত প্রতিটি পদক্ষেপ ব্যাখ্যা করে। এটি প্রোগ্রামের অবস্থার পরিবর্তনগুলি প্রকাশ করতে বিবৃতি ব্যবহার করে৷
অ্যারে উপাদানগুলিকে ধ্রুবক দিয়ে গুণ করা এবং প্রয়োজনীয় প্রোগ্রামিং-এ একটি নতুন অ্যারেতে মান সংরক্ষণ করা নিম্নরূপ।
var সংখ্যা=[1, 2, 3];
var নতুন সংখ্যা=;
এর জন্য(int i=0; i< numbers.length; i++) {
newnumbers.push(সংখ্যা5);
}
Console.log(নতুন নম্বর);
উপরের উদাহরণে, সংখ্যা একটি অ্যারে। লুপের মধ্য দিয়ে যাওয়ার সময়, প্রতিটি সংখ্যাকে 5 দ্বারা গুণ করা হয় এবং নতুন সংখ্যার অ্যারেতে যোগ করা হয়। লুপ শেষ হওয়ার পরে, নতুন সংখ্যার বিষয়বস্তু প্রিন্ট করা হবে যা 5, 10, 15।
এটা লক্ষ্য করা যায় যে প্রয়োজনীয় শৈলী কাজটি অর্জনের জন্য সমস্ত পদক্ষেপ প্রদান করে। এটি প্রকাশ করে কিভাবে 'i' কাউন্টার ভেরিয়েবল ব্যবহার করে অ্যারের মাধ্যমে পুনরাবৃত্তি করতে হয়, লুপ থেকে বের হওয়ার আগে কতবার পুনরাবৃত্তি করতে হয় এবং কীভাবে নতুন অ্যারেতে গণনা করা মান সন্নিবেশ করা যায় ইত্যাদি।
ঘোষণামূলক এবং আবশ্যিক প্রোগ্রামিং ব্যবহার করে একই সমস্যা সমাধান করা হয়েছে।
ঘোষণামূলক এবং প্রয়োজনীয় প্রোগ্রামিংয়ের মধ্যে পার্থক্য কী?
ঘোষণামূলক বনাম আবশ্যিক প্রোগ্রামিং |
|
ঘোষণামূলক প্রোগ্রামিং হল একটি প্রোগ্রামিং দৃষ্টান্ত যা একটি গণনার যুক্তি প্রকাশ করে তার নিয়ন্ত্রণ প্রবাহ বর্ণনা না করে। | ইম্পারেটিভ প্রোগ্রামিং হল একটি প্রোগ্রামিং প্যারাডাইম যা বিবৃতি ব্যবহার করে যা প্রোগ্রামের অবস্থা পরিবর্তন করে। |
প্রধান ফোকাস | |
ঘোষণামূলক প্রোগ্রামিং প্রোগ্রামটি কী সম্পন্ন করা উচিত তার উপর ফোকাস করে৷ | প্রয়োজনীয় প্রোগ্রামিং কিভাবে প্রোগ্রামের ফলাফল অর্জন করা উচিত তার উপর ফোকাস করে। |
নমনীয়তা | |
ঘোষণামূলক প্রোগ্রামিং কম নমনীয়তা প্রদান করে। | অত্যাবশ্যক প্রোগ্রামিং আরও নমনীয়তা প্রদান করে। |
জটিলতা | |
ঘোষণামূলক প্রোগ্রামিং প্রোগ্রামটিকে সরল করে। | প্রয়োজনীয় প্রোগ্রামিং প্রোগ্রামের জটিলতা বাড়াতে পারে। |
শ্রেণীকরণ | |
ফাংশনাল, লজিক, কোয়েরি প্রোগ্রামিং ডিক্লারেটিভ প্রোগ্রামিং এর মধ্যে পড়ে। | প্রক্রিয়াগত এবং অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং আবশ্যিক প্রোগ্রামিংয়ের মধ্যে পড়ে। |
সারাংশ - ঘোষণামূলক বনাম আবশ্যিক প্রোগ্রামিং
এই নিবন্ধটি দুটি প্রধান প্রোগ্রামিং দৃষ্টান্তের মধ্যে পার্থক্য নিয়ে আলোচনা করেছে, যা ঘোষণামূলক এবং অপরিহার্য প্রোগ্রামিং।ঘোষণামূলক এবং ইম্পেরেটিভ প্রোগ্রামিং এর মধ্যে পার্থক্য হল যে ডিক্লারেটিভ প্রোগ্রামিং প্রোগ্রামের কী অর্জন করা উচিত তার উপর ফোকাস করে যখন ইম্পেরেটিভ প্রোগ্রামিং প্রোগ্রামের ফলাফল কীভাবে অর্জন করা উচিত তার উপর ফোকাস করে৷