"اوبجیکٹ اوریئنٹڈ پروگرامنگ" کے نسخوں کے درمیان فرق

حذف شدہ مندرجات اضافہ شدہ مندرجات
انگریزی الفاظ کو اردو الفاظ سے بدلا
م خودکار: خودکار درستی املا ← پروگرامنگ، شے، پروگرام
سطر 1:
'''برمجہپروگرامنگ شئےشے التوجہ''' {{دیگر نام|انگریزی=Object Oriented Programming}} [[کمپیوٹر]] [[پروگرام|برنامج]] (Program) کو مسئلے کی درجہ بندی اور ان کے آپس کے روابط کی بنیادوں پر مرتب کرنے کا نام ہے۔
 
== تشریح ==
'''برمجہپروگرامنگ شئےشے التوجہ''' کو سمجھنے کے لیے سب سے پہلے درجہ بندی (Classification) سمجھنا ضروری ہے۔ درجہ بندی سے مراد حقیقت میں وہی ہے جو عام زندگی میں ہوتا ہے۔ مثال کے طور پر مضامین کی درجہ بندی کچھ اس طرح سے کی جا سکتی ہے :
 
[[فائل:mazameen_oop_misal.jpg|وسط|alt=mazameen|مضامین کی درجہ بندی]]
سطر 8:
مندرجہ بالا مثال سے معلوم ہوتا ہے کہ مضامین کو چار درجوں میں تقسیم کیا گیا ہے۔ اگر ہم دوسری سطح کی درجہ بندی کو دیکھیں تو معلوم ہوگا، سارے مضامین ایک دوسرے سے بالکل الگ الگ ہیں مگر ایک ہی درجے سے تعلق رکھتے ہیں یعنی سب کے سب مضامین ہی ہیں۔ بالکل اسی طرح سے برصغیر اور یورپ کی تاریخ بالکل الگ ہیں مگر دونوں تاریخ کی درجہ بندی سے تعلق رکھتی ہیں۔
 
اب پروگرامنگ کی طرف آتے ہیں۔ شروع میں برنامہ کاری (programming) صرف ہدایات (Instructions) کی بنیاد پر ہوتی تھی۔ جوں جوں برنامہ کاری کے میدان میں ترقی ہوتی گئی برنامجپروگرام کا حجم اور مسائل کے حل کی تعداد بڑھتی گی۔ کسی بہت بڑے برنامجپروگرام میں نقص ڈھونڈنا اور اس کا حل تلاش کرنا مشکل ترین ہوتا چلا گیا۔ تو ضرورت اس امر کی پیش آئی کہ کس طرح برنامجپروگرام کو مرتب کیا جائے جس کو نہ صرف بعد میں سمجھنا بلکہ نقص دور کرنا بھی آسان ہو سکے۔ ان مسائل کے حل ڈھونڈنے میں آج تک برمجہپروگرامنگ نے کئی ادوار دیکھے۔ 1960ء اور 1970ء کی دہائیوں تک برمجہپروگرامنگ شئےشے التوجہ کے تصورات مزید واضح ہوتے چلے گئے۔
 
== بنیادی تصورات ==
برمجہپروگرامنگ شئےشے التوجہ کے بنیادی تصورات کچھ اس طرح ہیں۔
 
=== درجہ بندی ===
سطر 38:
 
== ایک عام مثال ==
ایک مصرف (Bank) کے کھاتوں کا حساب کتاب رکھنے کے لیے برمجہپروگرامنگ بنایا جائے تومختلف درجوں میں ان سے متعلق خواص اور طریقہ کار وضع کیے جائیں گے۔ بینک کے کسی کھاتے کا ایک بنیادی درجہ کچھ یوں ہو سکتا ہے :
 
[[فائل:bank_khata_oop_misal.jpg|وسط|alt=mazameen]]
سطر 45:
 
== دوسری مثال ==
'''برنامہ سازی''' کی شئےشے التوجہ انداز (Paradigm) میں پروگرام کے اجزا کو مختلف چھوٹی بڑی مفرد یا مرکب اشیا کے انداز میں برتا جاتا ہے۔ بنیادی تصور یہ ہے کہ ہر شے کا تعلق ایک عمومی درجہ (Class) سے ہوتا ہے جو چند خواص اور چند افعال پر مشتمل ہوتی ہے۔ یہ اصناف مختلف چھوٹی اصناف کا مرکب ہو سکتی ہیں یا پھر کسی بنیادی صنف کی شاخ۔ مثال کے طور پر ایک لائبریری مینجمنٹ پروگرام میں کتاب، مصنف، صارف، پبلشر وغیرہ کچھ ایک اصناف ہو سکتی ہیں اور ہر صنف سے متعلق کئی اشیا نظام کا حصہ ہو سکتی ہیں۔ ان میں سے ہر شے ایک دوسرے سے مختلف ہو سکتی ہے لیکن بعض معاملات میں یکسانی ہوگی جن کے باعث وہ کسی ایک صنف کا جزو ہوں گی۔ جیسے تمام کتابوں میں قدر مشترک یہ ہے کہ ہر ایک کتاب کا ایک عنوان ہوگا، ایک یا زائد مصنف ہوں گے، صفحات کی تعداد ہوگی، سن اشاعت ہوگی، یہ تمام خواص مل کر کتاب کی صنف متعین کرتی ہیں اور ان کی مختلف قدریں کسی مخصوص کتاب کو بطور مفرد شے متعارف کراتی ہیں۔ اسی طرح صارف اور مصنف دونوں اپنے آپ میں اصناف ہیں لیکن وہ دونوں ہی ایک عمومی صنف "فرد" سے مشتق (Inherited) ہیں۔ صارف کے خواص میں اس کا نام، ولدیت، پتہ، تاریخ ولادت، جنس اور تاریخ رکنیت وغیرہ شامل ہوں گی جبکہ اس کے افعال میں کتابیں نکلوانا، جمع کرنا، فیس ادا کرنا وغیرہ شامل ہوں گی۔ اسی طرح مصنف کے خواص میں نام، ولدیت، تاریخ ولادت، جنس، تعداد کتب اور افعال میں کتابیں لکھنا، انھیں شائع کروانا وغیرہ شامل ہوں گی۔ صارف اور مصنف کے جو خواص اور افعال مشترک ہوں گے انھیں صنف مشترک یعنی فرد سے منسلک کر دیا جائے گا اور منفرد خواص اور افعال کو ذیلی اصناف میں رکھا جائے گا۔
 
[[زمرہ:اوبجیکٹ اوریئنٹڈ پروگرامنگ]]