আমি সাধারণত বাস্তব বিশ্বের উদাহরণ ব্যবহার করে অবজেক্ট-ওরিয়েন্টেট-প্রোগ্রামিংয়ের চেষ্টা ও বর্ণনা করি।
উদাহরণস্বরূপ, আমি বলতে পারি যে ক্লাস নামে পরিচিত Vehicle
একটি গাড়িটি ন্যূনতম জিনিসগুলি বর্ণনা করে। আমি সেই ব্যক্তিকে বলতে চাই যে সে কী সে গাড়ি বোঝায় tell কখনও কখনও তারা "ভাল, গাড়ী বা ট্রাকের মতো" মতো জিনিস বলে এবং আমি তাদের সাথে সম্মতি জানাব এবং তাদের সাথে একমত হব। তারপরে আমি জিজ্ঞাসা করব গাড়ি এবং ট্রাকের মধ্যে পার্থক্য কী। কখনও কখনও তারা আকার, কখনও কখনও উদ্দেশ্য এবং অন্যান্য বিষয়গুলি উল্লেখ করে।
তারপরে আমি তাদের একটি গাড়ি বা ট্রাকের কথা ভুলে যেতে বলব এবং কেবল তাদের গাড়ির বিবরণ চালিয়ে যেতে বলব:
"ওহ, ভাল এটি চলমান"
"এটিতে অপারেটর বা ড্রাইভার রয়েছে"
ইত্যাদি ...
শীঘ্রই, আমরা জানি যে যানবাহন কী এবং আমি বলেছিলাম যে ওওপি-তে আমরা একটি যানবাহন সংজ্ঞায়িত করব, এবং যুক্তি দেখানোর জন্য বলি যে এটি চলাচল করতে পারে এবং এটিকে চালকের চালক দিতে পারে। তারপরে আমি জিজ্ঞাসা করব, ঠিক আছে, সুতরাং একটি গাড়ী কি আছে?
"দরজা"
"উইন্ডোজ"
এবং তারপরে একটি ট্রাক ....
"দরজা" "উইন্ডোজ" "আরও চাকা!"
শীঘ্রই, প্রচুর আলোচনার পরে, অন্য ব্যক্তি সাধারণত সনাক্ত করেছেন:
1) একটি গাড়ী গঠন কি
2) একটি গাড়ী গঠন কি
3) একটি ট্রাক গঠন কি
4) একটি বিমান গঠন কি।
কোন প্রযুক্তি ছাড়াই সব। আমরা প্রত্যেকের বৈশিষ্ট্যগুলি সঠিক অঞ্চলে ভাগ করেছি। তারা উত্তরাধিকার বুঝতে পারে ("হ্যাঁ, একটি গাড়ী একটি গাড়ি, একটি ট্রাক একটি যানবাহন, কিন্তু গাড়িটি ট্রাক নয়, এটি সহজ, দুহ!")।
এমনকি তারা বহুবর্ষ বুঝতে পারে, "অবশ্যই, তারা মূলত একই কাজ করে তবে এটি কিছুটা আলাদা করতে পারে different" আমরা আচরণ সম্পর্কে বলতে পারি এবং আমাদের বস্তু গাছগুলিতে কোথায় তা থাকা উচিত।
তাদের শিক্ষা এবং পটভূমির উপর নির্ভর করে কিছু এটি অন্যের চেয়ে দ্রুত পান। তবে আমি যখন ওওপিটিকে বাস্তব জীবনের বস্তুর সাথে তুলনা করি, বেশিরভাগ লোকেরা সর্বদা এটি পান। আসলে, আমি প্রযুক্তিগত লোকদের সাথে কথোপকথনগুলি পেয়েছি যা আমি কখনও ভাবিনি। যানবাহন পরিচালনা করতে হবে না, উদাহরণস্বরূপ (ড্রোন), তবে কোনও প্রোগ্রামার কি গাড়ির অপারেটরটিকে এটির সম্পত্তি হিসাবে ভাবেন? আমি কোনও অপারেটর উল্লেখ করা সঠিক বা ভুল বলে বলছি না, তবে এটি সফ্টওয়্যার বিকাশকালে আমরা কী মডেলিং করছি এবং আমরা কী অর্জন করতে চাইছি তা নিয়ে চিন্তাভাবনা করে।
এখন, অন্যদিকে আংশিক টেম্পলেট বিশেষীকরণ .... :)