যদিও পরিভাষাটি মানসম্মত থেকে অনেক দূরে, তবুও একটি সাধারণ উপায় বড় প্রোগ্রামিং প্যারাডিমগুলিকে শ্রেণীবদ্ধ করা হয়
- প্রথাগত
- ক্রিয়ামূলক
- যৌক্তিক
- অবজেক্ট ওরিয়েন্টেড
- জাতিবাচক
প্রক্রিয়াজাতীয় প্রোগ্রামিং কেমন তা আপনি ইতিমধ্যে জেনে গেছেন বলে মনে হয়।
ইন কার্মিক ভাষায় ফাংশন প্রথম শ্রেণীর বস্তু হিসেবে গণ্য করা হয়। অন্য কথায়, আপনি অন্য কোনও ফাংশনের আর্গুমেন্ট হিসাবে কোনও ফাংশনটি পাস করতে পারেন বা কোনও ফাংশন অন্য ফাংশনটি ফিরিয়ে দিতে পারে। কার্যকরী দৃষ্টান্ত ল্যাম্বদা ক্যালকুলাসের উপর ভিত্তি করে এবং কার্যকরী ভাষার উদাহরণগুলি হল এলআইএসপি, স্কিম এবং হাস্কেল। মজার বিষয় হচ্ছে, জাভাস্ক্রিপ্ট কার্যকরী প্রোগ্রামিং সমর্থন করে।
ইন যৌক্তিক প্রোগ্রামিং আপনি predicates যা যেমন সত্ত্বা, মধ্যে সম্পর্ক বর্ণনা সংজ্ঞায়িত president(Obama, USA)
বা president(Medvedev, Russia)
। এই পূর্বাভাসগুলি কেবল আক্ষরিক মান নয়, খুব জটিল হয়ে উঠতে পারে এবং ভেরিয়েবলগুলিকে জড়িত করতে পারে। একবার আপনি আপনার সমস্ত পূর্বাভাস নির্দিষ্ট করে দেওয়ার পরে, আপনি আপনার সিস্টেমের প্রশ্ন জিজ্ঞাসা করতে পারেন এবং যুক্তিযুক্তভাবে সামঞ্জস্যপূর্ণ উত্তর পেতে পারেন।
লজিকাল প্রোগ্রামিংয়ের বড় ধারণাটি কম্পিউটারকে কীভাবে কীভাবে গণনা করা যায় তা বলার পরিবর্তে জিনিসগুলি কী তা আপনি তা জানান । উদাহরণ: PROLOG।
অবজেক্ট-ওরিয়েন্টেড দৃষ্টান্তটি কিছু উপায়ে পদ্ধতিগত প্রোগ্রামিংয়ের বর্ধন। পদ্ধতিগত প্রোগ্রামিংয়ে আপনার ডেটা রয়েছে, যা আদিম প্রকারের মতো হতে পারে, যেমন পূর্ণসংখ্যা এবং ভাসমান, যৌগিক ধরণের, অ্যারে বা তালিকার মতো এবং ব্যবহারকারী-সংজ্ঞায়িত প্রকারের মতো কাঠামোর মতো। আপনার নিজস্ব পদ্ধতিও রয়েছে যা ডেটা চালায়। বিপরীতে, ওওতে আপনার কাছে অবজেক্টস রয়েছে, যার মধ্যে ডেটা এবং পদ্ধতি উভয়ই অন্তর্ভুক্ত। এটি আপনাকে এনক্যাপসুলেশন, উত্তরাধিকার এবং পলিমারফিজমের মতো দুর্দান্ত জিনিসগুলি পেতে দেয়। উদাহরণ: স্মলটালক, সি ++, জাভা, সি #।
জেনেরিক প্রোগ্রামিংটি প্রথম 1983 সালে অ্যাডায় চালু হয়েছিল এবং সি ++ তে টেম্পলেটগুলির প্রবর্তনের পরে এটি ব্যাপক আকারে প্রসারিত হয়েছিল। এটি সেই ধারণাটি যা আপনি চালিত প্রকৃত ডেটা ধরণের উল্লেখ না করে কোড লিখতে পারেন এবং সংকলকটি এটি বের করে আনতে পারেন। উদাহরণস্বরূপ লেখার পরিবর্তে
void swap(int, int);
void swap(float, float);
....
আপনি লিখতে হবে
void swap(T, T);
একবার, এবং কম্পাইলারটি কোডটিতে প্রকৃতপক্ষে ব্যবহৃত হওয়ার পরে যা কিছু T
হতে পারে তার জন্য নির্দিষ্ট কোড তৈরি করুন swap()
।
জেনেরিক প্রোগ্রামিং সি ++, জাভা এবং সি # দ্বারা বিভিন্ন ডিগ্রীতে সমর্থিত।
এটি লক্ষ করা গুরুত্বপূর্ণ যে অনেকগুলি ভাষা যেমন সি ++ একাধিক প্যারাডিজম সমর্থন করে। এটিও সত্য যে কোনও ভাষা কোনও নির্দিষ্ট দৃষ্টান্তকে সমর্থন করার জন্য বলা হলেও, এটি দৃষ্টান্তের সমস্ত বৈশিষ্ট্য সমর্থন করে না। একটি নির্দিষ্ট দৃষ্টান্তের জন্য কোন বৈশিষ্ট্যগুলি প্রয়োজনীয় তা নিয়ে প্রচুর মতবিরোধ রয়েছে তা উল্লেখ করার দরকার নেই।