ঘোষণামূলক এবং পদ্ধতিগত প্রোগ্রামিং প্যারাডিমগুলির মধ্যে পার্থক্য কী ? আপনি কিছু উদাহরণ প্রদান করতে পারেন?
অন্য কোন প্রোগ্রামিং প্যারাডিজম বিদ্যমান?
উত্তর:
অপরিহার্য প্রোগ্রামিং প্যারাডিজমের বেশ কয়েকটি উপ-দৃষ্টান্ত রয়েছে যেমন প্রক্রিয়াগত বা বস্তু-ভিত্তিক প্রোগ্রামিং প্যারাডিজম।
অত্যাবশ্যক প্রোগ্রামিং দৃষ্টান্তে, আপনি বিমূর্ততার বিভিন্ন ডিগ্রিতে ধাপে ধাপে অ্যালগরিদম বর্ণনা করেন।
কার্যনির্বাহী দৃষ্টান্তকে সমর্থন করে এমন প্রোগ্রামিং ভাষার উদাহরণ:
এটি সাধারণত এমন ভাষাগুলিকে বোঝায় যেগুলি বিভিন্ন ধরণের শ্রেণিবিন্যাসকে দেখায় যা ভিত্তি থেকে প্রাপ্ত উপকরণের ক্ষেত্রে উভয় পদ্ধতি এবং রাষ্ট্রের উত্তরাধিকারী হয় তবে এতে অস্বাভাবিক প্রোটোটাইপ-ভিত্তিক জাভাস্ক্রিপ্ট অন্তর্ভুক্ত রয়েছে।
ওও দৃষ্টান্তকে সমর্থন করে এমন প্রোগ্রামিং ভাষার উদাহরণ:
ঘোষণামূলক প্রোগ্রামিং প্যারাডিজমের কয়েকটি উপ-প্যারাডিম রয়েছে, যেমন কার্যকরী বা লজিক প্রোগ্রামিং প্যারাডিজম।
ঘোষিত প্রোগ্রামিং দৃষ্টান্তে, আপনি কোনও ফলাফল বা লক্ষ্য বর্ণনা করেন এবং আপনি এটি একটি " ব্ল্যাক বক্স " এর মাধ্যমে পেয়ে থাকেন । অপরিহার্য বিপরীত ।
প্রোগ্রামিং ল্যাঙ্গুয়েজের উদাহরণ যা ঘোষিত প্রোগ্রামিং দৃষ্টান্ত সমর্থন করে:
কার্যকরী প্রোগ্রামিং পার্শ্ব প্রতিক্রিয়া ছাড়াই এবং পরিবর্তনীয় স্থিতি ছাড়াই ফাংশনগুলির প্রয়োগের উপর জোর দেয়। উপরোক্ত ঘোষিত সিস্টেমগুলি কার্যকরী প্রোগ্রামিংয়ের কয়েকটি দিক প্রদর্শন করে।
প্রোগ্রামিং ল্যাঙ্গুয়েজের উদাহরণ যা ঘোষণামূলক কার্যকরী দৃষ্টান্ত সমর্থন করে:
ডিক্লারেটিভ প্রোগ্রামিং হ'ল যেখানে আপনি এটি কীভাবে করবেন তা না বলে আপনি যা চান তা বলে। পদ্ধতিগত প্রোগ্রামিং সহ, আপনাকে ফলাফল পেতে সঠিক পদক্ষেপগুলি নির্দিষ্ট করতে হবে।
উদাহরণস্বরূপ, এসকিউএল প্রক্রিয়াগত তুলনায় আরও ঘোষিত, কারণ প্রশ্নগুলি ফলাফল উত্পাদন করার পদক্ষেপগুলি নির্দিষ্ট করে না।
আমি আপনাকে একটি আসল-বিশ্বের উদাহরণ দেই: আমার এক কাপ চা দরকার।
কার্যপ্রণালী:
ঘোষিত:
একটি পদ্ধতিগত ভাষায়, আপনি সম্পূর্ণ প্রক্রিয়াটি সংজ্ঞায়িত করেন এবং কীভাবে এটি করবেন তার পদক্ষেপ সরবরাহ করে। আপনি কেবল অর্ডার সরবরাহ করুন এবং প্রক্রিয়াটি কীভাবে পরিবেশিত হবে তা নির্ধারণ করুন।
একটি ঘোষণামূলক ভাষায়, আপনি কেবল আদেশ বা আদেশটি সেট করেছেন এবং কীভাবে এটি অর্ডারটি সম্পন্ন করবেন এটি সিস্টেমে দেওয়া উচিত। এটি কীভাবে করা উচিত তা খনন না করে আপনার কেবলমাত্র আপনার ফলাফল প্রয়োজন।
পদ্ধতিগত প্রোগ্রামিং:
পদ্ধতিগত প্রোগ্রামিংয়ে, যখন প্রোগ্রাম শুরু হয়, এটি নির্দেশাবলীর একটি সেট অনুসরণ করে। কিছু ফাইল বা মেমরির সামগ্রীর উপর ভিত্তি করে নির্দেশাবলী পরিবর্তিত হতে পারে, তবে সামগ্রিকভাবে, এটি ব্যাপকভাবে পরিবর্তিত হয় না। প্রোগ্রামটিতে ইনপুটটি সাধারণত রিয়েল-টাইমে ব্যবহারকারীর ইনপুট থেকে নয়, বরং ডেটা প্রাক-সংগৃহীত সেট থেকে।
ঘোষিত প্রোগ্রামিং:
ডিক্লারেটিভ ইভেন্টে চালিত প্রোগ্রামিং এ প্রোগ্রামটি গ্রহণ করতে পারে এমন withচ্ছিক ক্রিয়াসমূহের সাথে ডেটা বৌটির ডেটা বেষ্টন করে। উদাহরণস্বরূপ, ওয়ার্ড প্রসেসরের প্রতিটি "ইভেন্ট" হ'ল যে কোনও মাউস বা কীবোর্ড (বা ফাইল) পরিবর্তন যা ডেটা, ডকুমেন্ট (গুলি) প্রভাবিত করে। এগুলি কোনও ক্রমে সম্পাদন করার দরকার নেই। ইভেন্ট চালিত প্রোগ্রামিং ছোট প্রোগ্রামগুলির (ইভেন্ট হ্যান্ডলার) রূপ নেয় যা সমস্ত একটি সাধারণ ডেটার সেটতে কাজ করে, যাতে প্রতিটি ছোট প্রোগ্রাম একই ডেটা, উদাহরণ হিসাবে দস্তাবেজ ব্যবহার করতে পারে।
দুটি প্রোগ্রামিং ভাষার মধ্যে প্রধান পার্থক্য হ'ল, প্রক্রিয়াগত প্রোগ্রামিংগুলিতে আমরা কম্পিউটারকে কীভাবে সমস্যাটি সমাধান করতে হয় তা এবং ডিক্লারেটিভ প্রোগ্রামিংয়ে আমরা কম্পিউটারকে বলি যে আমরা কোন সমস্যার সমাধান করতে চাই।
জবাবদিহি করার জন্য মন্তব্যটি সম্বোধন করতে এবং সম্ভবত দুজনের পার্থক্যের মধ্যে একটি উদাহরণ সরবরাহ করুন। জবাবদিহি পদ্ধতিগত যেখানে পুতুল বা টেরাফর্মের মতো কিছু ঘোষণামূলক। উদাহরণস্বরূপ, আপনি এর মতো 10 টি ই সি 2 উদাহরণ স্থাপন করার জন্য একটি উত্তরদায়ক ইয়ামল ফাইল তৈরি করেন:
-ec2: গণনা: 10 চিত্র: ami-058c6e5b73b074cd2 দৃষ্টান্ত_ টাইপ: t2.micro
যদি আপনি এই ফাইলটি দু'বার চালাতে চান তবে আপনি 20 টি 2 মাইক্রো ই সি 2 উদাহরণ দিয়ে শেষ করবেন। আপনি যদি টেরাফর্মের মতো ঘোষিত ভাষায় সমতুল্য লিখেছেন এবং এটি দ্বিগুণ চালিয়েছেন তবে আপনি কেবল 10 টি 2 মাইক্রো দৃষ্টান্ত ব্যবহার করতে পারেন তবে আপনি এটি চালান কত তাড়াতাড়ি চলবে না। ঘোষিত ভাষাগুলি সমাপ্তির রাজ্য নির্দিষ্ট করে। কার্যবিধির ভাষাগুলি কেবল বর্তমান বা অতীতের অবস্থা বিবেচনা না করে আপনি যা বলছেন তাই করেন।
তাই ওয়াইএএমএল কি ঘোষিত প্রোগ্রামিংয়ের ভাষা? কারণ আমরা প্রকৃত যুক্তি লেখার পরিবর্তে আমরা যা চাই তা সংজ্ঞায়িত করি।
আমি এটি জিজ্ঞাসা করছি কারণ যদি কেউ জবাবদিহি জানেন যা কোনটি কনফিগারেশন পরিচালনার সরঞ্জাম, এটি ওয়াইএএমএল ব্যবহার করে তবে এটি এখনও পদ্ধতিগত ভাষার বিভাগে আসে।
পদ্ধতিগত পদ্ধতির ক্ষেত্রে আপনি ফলাফলটি অর্জনের জন্য আপনার নির্দেশকে এনকোড করেন। ঘোষণামূলক পদ্ধতির মধ্যে আপনি সমস্যা সমাধানের জ্ঞান হিসাবে কী সমাধান করা দরকার তা সংজ্ঞায়িত করেন। কটাক্ষপাত আছে প্রথাগত বা ঘোষণামূলক পদ্ধতির উদাহরণ আমি উভয় পন্থা প্রয়োগ করা।
যেমন আপনি উদাহরণে দেখতে পাবেন, ঘোষণামূলক পদ্ধতির ক্ষেত্রে, সমস্যাটি সমাধান করার জন্য আপনাকে HOW নির্দেশ দেওয়ার দরকার নেই।