আমাদের আজকের আলোচনার বিষয় প্রসিডিউর অরিয়েন্টেড প্রোগ্রামিং ও অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর মধ্যে পার্থক্য – যা অধ্যায় ১ অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর অন্তর্ভুক্ত। বর্তমান বিশ্বের সর্বাধুনিক প্রযুক্তি হচ্ছে কম্পিউটার প্রযুক্তি। কারণ শিল্পকারখানা, গবেষণা, শিক্ষাপ্রতিষ্ঠান, চিকিৎসাশাস্ত্র ইত্যাদি সকল ক্ষেত্রই আজ কম্পিউটার অটোমেটেড। কম্পিউটার অটোমেশনের সঙ্গে কম্পিউটার প্রোগ্রামিং ও প্রোগ্রামিং লেখার জন্য প্রোগ্রামিং ল্যাংগুয়েজ অত্যন্ত গুরুত্বপূর্ণ।
তাই শিক্ষা ও গবেষণার জন্য প্রোগ্রামিং ল্যাংগুয়েজ অধ্যয়ন একটি অতি আবশ্যকীয় বিষয়। বিষয়টি অত্যন্ত গুরুত্বসহ বিবেচনা করে বর্তমানে কারিগরি শিক্ষার সকল টেকনোলজিতে কম্পিউটার প্রোগ্রামিং ল্যাংগুয়েজ বিষয়কে আবশ্যিক করা হয়েছে ।

প্রসিডিউর অরিয়েন্টেড প্রোগ্রামিং ও অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর মধ্যে পার্থক্য
নিম্নে প্রসিডিউর অরিয়েন্টেড ও অবজেক্ট অরিয়েন্টেড-প্রোগ্রামিং এর মধ্যকার পার্থক্য তুলে ধরা হলঃ
| প্রসিডিউর অরিয়েন্টেড প্রোগ্রামিং | অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং |
| মূলতঃ High level language যেমন: Cobol, Fortran, Basic, C ইত্যাদি ভাষা ব্যবহার করে যে Program রচিত তাকে প্রসিডিওর অরিয়েন্টেড প্রোগ্রামিং বলে। |
প্রসিডিউর অরিয়েন্টেড প্রোগ্রামিং এ বিদ্যমান অসুবিধা সমূহ সমাধানের নিমিত্তে নতুন ধরনের যে প্রোগ্রামিং এর আবির্ভাব তাকে অবজেক্ট অরিয়েন্টেড-প্রোগ্রামিং বলে।
|
| মূল প্রোগ্রামকে কতগুলো module এ ভাগ করা হয়। পরবর্তীতে module গুলোর function সমূহকে একত্রিত করে সমস্যার সমাধান করা হয়। |
মূল প্রোগ্রামকে এখানে ও কতগুলো ছোট ছোট অংশে মানে object এ ভাগ করা হয়। পরবর্তীতে object সমূহকে একত্রিত করে সমস্যার সমাধান করা হয়।
|
| এতে ডাটা অপেক্ষা ফাংশনের গুরুত্ব বেশি। | এতে ফাংশন অপেক্ষা ডাটার গুরুত্ব বেশি। |
| এই ধরনের প্রোগ্রামিং টপ ডাউন পদ্ধতিতে করা হয়। | এই ধরনের প্রোগ্রামিং বটম আপ পদ্ধতিতে করা হয়। |
| সাধারণ নিয়মে এক ফাংশন অন্য ফাংশন-এর সাথে সংযোগ রক্ষা করে। |
মেসেজ পাসিং এর মাধ্যমে এক অবজেক্ট অন্য অবজেক্টের সাথে সংযোগ রক্ষা করে।
|
| এতে প্রতিটি ফাংশনের জন্য আলাদা আলাদা ডাটা থাকে। যাকে লোকাল ডাটা বলে। |
এতে প্রতিটি অবজেক্টের জন্য ডাটা ও ফাংশনের সমন্বয়ে একটি একক ইউনিট থাকে।
|
| ডাটা সহজেই এক ফাংশন থেকে অন্য ফাংশনে মুক্ত। করতে পারে। |
এতে সহজেই এক অবজেক্টের ডাটা অন্য অবজেক্টে মুভ করতে পারে না।
|
| এই ধরনের প্রোগ্রামিং এ ভুল-ত্রুটি নির্ণয় ও এদের সমাধান বেশ কঠিন। |
এই ধরনের প্রোগ্রামিং এ ভুল-ত্রুটি নির্ণয় ও এদের সমাধান অপেক্ষাকৃত অনেক সহজ।
|
| বেশির ভাগ ফাংশন গ্লোবাল ডাটা শেয়ার করে বলে। সিস্টেমের সিকিউরিটি হ্রাস পায়। |
এই ধরনের প্রোগ্রামিং এ সিস্টেমের সিকিউরিটি অনেক। বেশি।
|
| এই পদ্ধতিতে বড় বড় প্রোগ্রাম লিখতে গিয়ে data abstruction, code reusability ইত্যাদি বিষয়ে সমস্যায় পড়তে হয়। |
এই পদ্ধতিতে এই ধরনের সমস্যায় পড়ার সম্ভাবনা কম।
|
| এই পদ্ধতিতে প্রোগ্রাম এর মেইনটেন্যান্স করা অনেক কঠিন। | এই পদ্ধতিতে প্রোগ্রাম মেইনটেন্যান্স অনেক সহজ। |
| এতে ব্যবহৃত ফাংশনসমূহ Action oriented যা বাস্তব। জীবনের সাথে সম্পর্কিত নয়। |
এতে ব্যবহৃত অবজেক্টসমূহ object oriented যা বাস্তব জীবনের সাথে সম্পর্কিত।
|
| উদাহরণঃ ফরট্রান প্যাস্কেল, বেসিক ইত্যাদি। | উদাহরণঃ সি++, জাভা ইত্যাদি। |
