آبجیکٹ اورینٹڈ پروگرامنگ - تبصرے

نبیل

تکنیکی معاون
السلام علیکم،

یہ تھریڈ آبجیکٹ اورینٹڈ پروگرامنگ پر تبصروں کے لیے مخصوص ہے۔ ابھی یہ مضمون انڈر کنسٹرکشن ہے اور اس میں کئی تبدیلیاں لائی جاتی رہیں گی۔ ابوشامل سے ڈسکشن کے بعد میں نے اس موضوع پر لکھنا شروع کیا ہے تاکہ ایک مرتبہ مکمل ہونے کے بعد اس مضمون کو اردو وکی پیڈیا پر پوسٹ کیا جا سکے۔ لیکن میں نے انگریزی وکی پیڈیا پر موجود اسی موضوع پر مضمون کا ترجمہ کرنے کی بجائے خود سے ایک مضمون لکھنا شروع کیا ہے۔ میں چاہتا ہوں کہ اردو میں کمپیوٹر سائنس اور انفارمیشن ٹیکنالوجی سے متعلق مفید تدریسی مواد اکٹھا ہو۔ اس لیے یہ مضمون لکھتے ہوئے میری نظر میں وہ سٹوڈنٹس ہیں جو آبجیکٹ اورینٹڈ پروگرامنگ سے واقفیت حاصل کرنا چاہتے ہیں۔ اسی لیے میں نے اس میں کوڈ کی مثالیں بھی شامل کر دی ہیں۔ آپ دوستوں سے درخواست ہے کہ اس مضمون پر اپنی آراء سے آگاہ کریں۔

میں جاننا چاہتا ہوں کہ:

- کیا یہ مضمون طلبا و طالبات کے لیے عام فہم ہے، یا اسے مزید آسان زبان میں پیش کرنے کی ضرورت ہے؟
- کیا اس مضمون میں کوڈ کی مثالیں دینا ٹھیک ہے یا یہ مثالیں غیر ضروری ہیں؟
- ۔۔۔

میں نے کافی عرصے سے فورم پر اس نوعیت کے مضامین کا سلسلہ شروع کرنے کا سوچا ہوا تھا لیکن میں اس کےلیے ایک مناسب آرٹیکل منیجمنٹ سسٹم انسٹال کرنا چاہتا تھا۔ اب چونکہ فی الحال اس طرح کا کوئی ایڈ آن دستیاب نہیں ہے تو میں عام طریقے سے پوسٹ کرنے پر ہی گزارا کر رہا ہوں۔
 
السلام علیکم،

- کیا یہ مضمون طلبا و طالبات کے لیے عام فہم ہے، یا اسے مزید آسان زبان میں پیش کرنے کی ضرورت ہے؟
- کیا اس مضمون میں کوڈ کی مثالیں دینا ٹھیک ہے یا یہ مثالیں غیر ضروری ہیں؟

وعلیکم السلام !
بہت خوب جناب اس چیز کی ضرورت تھی کیونکہ ہمارے جو کمپیوٹر میں زیادہ آگے نکل جاتے ہیں وہ تو پھر اردو کو دیکھنا گوارہ نہیں کرتے مگر اس طرح کی اگر کچھ ایڈوانس چیزیں اردو میں ہوں تو کافی حد تک میڈیم لیول کے مجھ جیسے ایسے لوگ جن کو انگلش میں پڑھ کے کام کرنا اچھا نہیں لگتا اور اردو میں انہیں ایسا کچھ ملتا نہین ہے تو محروم رہ جاتے ہیں اب آتا ہون آپ کے سوالون کی طرف
جس انداز میں آپ نے لکھا ہے وہ میرے لئے تو بہت آسان ہے باقی کوئی اور رائے دے تو ہی پتہ چل سکتا ہے کہ کیسا ہے ۔
دوسرے سوال کے جواب میں مثالیں ضروری ہیں اسی طرح وہ بات نہیں بنتی جو کہ ہونی چاہیے

اک اجازت چاہیے کہ جو بھی وہاں پر پڑا جائے تو اس میں جو سمجھ آئے کیا اس کا ہلکا پھلکا خلاصہ یہاں بیان کر سکتا ہوں یا کہ نہیں
مزید یہ کہ سوال کرنے کی اجازت ہے یا کہ نہیں ۔
 
چند سوالات
1. ڈیٹا ٹائپ کتنی ہیں
2. کمپائل سے مراد کیا یہی ہے کہ کسی بھی ہائی لیول لینگوئج کو مشین لینگوئج میں تبدیل کر دے
3. سکرپٹنگ کیا ہے؟
4. کلاس کی جو مجھے سمجھ آئی ہے وہ یہ ہے کہ جب ہم کسی نئے ویری ایبل کو متعارف کرانا چاہیں تو اسے کلاس میں کرائیں گے(کیا یہ درست ہے)؟
5. فنکشنز کا یہ ہے کہ کسی ویری ایبل کی ویلو دینا اور ان ویلیوز کے تحت ان سے کام کرانا(کیا یہ درست ہے)؟
 
سلام مسنون

استاد محترم بہت خوب اس سلسلے کا دیکھ کر یقین مانیں مجھے بہت خوشی ہوئی ہے اس سلسلے کی مدد سے ہم بہت کچھ سیکھ سکتے ہیں جہاں تک آپ کے سوالات کا تعلق ہے تو بہت آسان الفاظ میں آپ نے سب کچھ سمجھایا ہے جہاں تک ایگزمپلز سورس کی بات ہے تو وہ تو لازمی ہے اس کے بغیر تو مشکل ہو جائے گی ۔ ان کے بارے میں اگر آپ کچھ وضاحت کرتے ہیں تو بہت مشکور رہوں گا میرے خیال سے ایسے لوگ جو پہلے کسی لینگویج کو شاید ہی جانتے ہوں اور جاننے کی خواہش رکھتے ہوں ان کے لیے ضروری ہے ۔

1ۘ ڈیٹا ٹائپس
2 ویری ایبل کی اقسام
3 ویری ایبلز ڈیکلریشن کے چند ضروری طریقے
4 سٹرنگ فنکشنز
5 بلٹ ان فنگشنز
6 نومیرک فنگشنز

میرے خیال کے مطابق یہ ایسی چیزیں ہیں جو تمام زبانوں میں کامن ہی ہوتی ہیں یہ سب میں نے سن رکھا ہے جہاں تک میرا علم ہے وہ محظ سوالات پر ہی منحصر ہوتا ہے ۔ اگر آپ راہنمائی فرمائیں تو مشکور رہوں گا ۔
 

نبیل

تکنیکی معاون
ٹیپو سلطان، تبصروں کے لیے یہ تھریڈ مخصوص‌ ہے۔میں نے یہ سلسلہ کل ہی شروع کیا ہے اور اپنی سہولت کے مطابق آگے بڑھانے کی کوشش کرتا رہوں گا۔
 

نبیل

تکنیکی معاون
فیضان اور عبیداللہ، میں نے اس چیز کا ذکر نہیں کیا تھا کہ آبجیکٹ اورینٹڈ پروگرامنگ سیکھنے کے لیے پروگرامنگ کی مبادیات سے کچھ واقفیت ضروری ہے۔ کم از کم میں اسی سطح کو ذہن میں رکھ کر لکھ رہا ہوں۔ کمپیوٹر پروگرامنگ کی بنیادی باتیں سکھانے کے لیے الگ سلسلے کی ضرورت ہوگی،جو میں کسی اور موقعے پر ہی شروع کر سکوں گا۔

تھیوری کے دوران کوڈ کی مثالیں سمجھانے کے لیے مفید ضرور ہوتی ہیں لیکن اس کا نقصان یہ ہوتا ہے کہ اس سے غیر ضروری طور پر فوکس کسی ایک پروگرامنگ لینگویج کی طرف مبذول ہو جاتا ہے۔ میرا مقصد آبجیکٹ اورینٹڈ پروگرامنگ کے بارے میں معلومات فراہم کرنا ہے نا کہ جاوا پروگرامنگ سکھانا۔
 

نبیل

تکنیکی معاون
چند سوالات
1. ڈیٹا ٹائپ کتنی ہیں
2. کمپائل سے مراد کیا یہی ہے کہ کسی بھی ہائی لیول لینگوئج کو مشین لینگوئج میں تبدیل کر دے
3. سکرپٹنگ کیا ہے؟
4. کلاس کی جو مجھے سمجھ آئی ہے وہ یہ ہے کہ جب ہم کسی نئے ویری ایبل کو متعارف کرانا چاہیں تو اسے کلاس میں کرائیں گے(کیا یہ درست ہے)؟
5. فنکشنز کا یہ ہے کہ کسی ویری ایبل کی ویلو دینا اور ان ویلیوز کے تحت ان سے کام کرانا(کیا یہ درست ہے)؟

عبیداللہ، آپ اس تھریڈ پر ضرور متعلقہ سوالات پوچھ سکتے ہیں۔ ڈیٹا ٹائپس اور فنکشنز کی وضاحت کے لیے کمپیوٹر پروگرامنگ کی انٹروڈکشن پر مبنی کوئی مواد پڑھ لیں۔ مختلف پروگرامنگ لینگویجز میں ڈیٹاٹائپس اور فنکشز کی سپورٹ مخلتف انداز میں شامل ہے۔ سکرپٹنگ لینگویجز وہ ہوتی ہیں جو کہ لائن بائی لائن رن ہوتی ہیں اور ان میں ٹائپ لیس ویریبل ہوتے ہیں یعنی کہ ان کی کوئی ڈیٹا ٹائپ نہیں ہوتی جبکہ کمپائلڈ لینگویجز میں پہلے کمپائلر کے ذریعے مشین کوڈ یا بائٹ کوڈ جنریٹ ہوتا ہے اور اس کے بعد ہی رن ٹائم سسٹم اسے رن کرتا ہے۔
 

ابوشامل

محفلین
خوشی اس بات کی ہے کہ آپ نے وکیپیڈیا کی اہمیت کو سمجھتے ہوئے کچھ لکھنے کا آغاز تو کیا اور افسوس اس بات کا کہ اس تھریڈ پر بہت دیر سے تبصرہ کر رہا ہوں۔ کیونکہ میں اس فیلڈ کا آدمی نہیں اس لیے تمام باتیں میرے تو سر سے گذر رہی ہیں (معذرت کے ساتھ) لیکن بہرحال دیگر لوگوں کو سمجھ میں آ رہا ہے یہی کافی ہے۔ اب آپ بتائیے کہ کیا کرنا ہے؟
 

نبیل

تکنیکی معاون
ابوشامل، ابھی اس موضوع پر کافی کچھ لکھنا باقی ہے۔ آپ چاہیں تو اب تک کا پوسٹ کیا گیا مواد وکی پیڈیا پر ڈال سکتے ہیں تاکہ وہاں اس کی قطع و برید کا آغاز ہو سکے۔
 

مصطفے قاسم

محفلین
سلام و علیکم!
گو کہ یہ پوسٹ ماضی قریب کی ہے مگر میں یہ کہنا چاہتا ہوں کہ کمپیوٹر پروگرامنگ کے بنیادی اصول و ضوابط جن پر پروگرامر کی تخلیقی صلاحیتیں‌ انحصار کرتی ہیں اگر ویڈیو فارمیٹ میں ہوں تو زیادہ مدد دے سکتی ہیں مگر سادہ ٹیکسٹ کا فائدہ یہ ہے کہ ‌dialup internet صارف باآسانی پڑھ سکتے ہیں۔ بہرحال بہت اچھی کاوش تھی نبیل بھّیا کی۔
 
Top