CodeGym /جاوا بلاگ /Random-UR /پرانی سطح 00
John Squirrels
سطح
San Francisco

پرانی سطح 00

گروپ میں شائع ہوا۔

مستقبل آ گیا ہے۔

اولڈ لیول 00 - 1- ہیلو. میں تصدیق کرتا ہوں کہ یہ جاوا ٹیوٹوریل ہے ۔ مجھے بورنگ لیکچرز سے نفرت ہے، اس لیے CodeGym کو ایک آن لائن کویسٹ گیم کی طرح بنایا گیا ہے۔ - کیا آپ نے کبھی کردار ادا کیے ہیں اور برابر کیے ہیں؟ کبھی کبھی آپ کو یہ بھی معلوم نہیں ہوتا کہ آپ کس طرح ملوث ہوئے، ٹھیک ہے؟ کیا آپ کو خوشبو آتی ہے جو میں پکا رہا ہوں؟ CodeGym میں آپ کو ایک کردار کو لیول 1 سے 40 تک لیول کرنا ہوتا ہے (اور جب ہم دوسرا حصہ ریلیز کرتے ہیں تو لیول 80 تک)۔ جب آپ گیم پاس کریں گے تو آپ جاوا کے اچھے ڈویلپر بن جائیں گے۔ - جب آپ 40 لیول مکمل کر لیں گے تو آپ جاوا جونیئر جاب حاصل کر سکیں گے۔ اس کی وجہ یہ ہے کہ CodeGym کے پاس حقیقی دنیا کے بہت سارے کام ہیں۔ بہت سارے۔ - آپ پہلی سطح سے شروع کریں۔ آپ کا مشن آپ کے کردار کو اپ گریڈ کرنا ہے - امیگو۔ لیکن آئیے چھوٹی شروعات کرتے ہیں۔ سب سے پہلے آپ کو دوسرے درجے پر جانا پڑے گا۔ ہو سکتا ہے کہ آپ کو یہ اتنا پسند آئے کہ آپ کو کورس مکمل کرنے کا خیال نہیں آئے گا اور آپ جاوا پروگرامر کے طور پر کام کرنا شروع کر دیں گے۔ :) PS - لیکچرز کو اس طرح ترتیب دیا گیا ہے: تازہ ترین سب سے اوپر ہے۔ نیا لیکچر کھولنے کے لیے گرین بٹن کو دبائیں۔

پس منظر

یہ گیم بہت دور مستقبل میں، 3015 میں رونما ہوتی ہے، جہاں روبوٹ اور انسان زمین پر ایک ساتھ رہ رہے ہیں اور کوئی خلا میں سفر کر سکتا ہے۔ ایک خلائی جہاز ہے جو کسی نامعلوم سیارے پر گر کر تباہ ہو گیا۔ اولڈ لیول 00 - 2کیپٹن جان گلہری بہادر کہتے ہیں: - کہکشاں رش خلائی جہاز کو ایک سنگین ملبے کا سامنا کرنا پڑا۔ گرتے وقت جہاز پہاڑ سے ٹکرا گیا اور تقریباً مکمل طور پر پتھروں سے ڈھکا ہوا تھا۔ جہاز کو آزاد کرانے کی فضول کوششوں میں چند دن گزر گئے۔ عملہ اپنے گھر واپس آنے کی تمام امیدیں کھو چکا تھا اور بسنے لگا... اولڈ لیول 00 - 3ایلی کہتی ہیں: - ایک ہفتے بعد، مجھے معلوم ہوا کہ سیارے پر ہزاروں جنگلی روبوٹس آباد ہیں! صرف ان کے پاس کوئی ہنر نہیں ہے۔ ہم انہیں اپنے خلائی جہاز سے پتھر ہٹانے کے لیے استعمال کرنا چاہیں گے، لیکن وہ کچھ نہیں کر سکتے۔ ان کی مدد ہمارے حالات میں بہت مفید ہو گی۔ اولڈ لیول 00 - 4پروفیسر کہتے ہیں:- کچھ دنوں بعد مجھے ایک راستہ مل گیا۔ مجھے ڈیاگو کے فرم ویئر (عملے میں ایک روبوٹ) لینے، اسے اینٹوں کے فرم ویئر پر دوبارہ پروگرام کرنے اور اسے جنگلی روبوٹس پر اپ لوڈ کرنے کا خیال آیا۔ - تاہم، بدقسمتی ہمارا پیچھا کرنے کے لئے لگ رہا تھا. تھوڑی تحقیق کے بعد، یہ ظاہر ہوا کہ روبوٹس کو فرم ویئر اپ لوڈ کرنے کے لیے کوئی سلاٹ نہیں ملا۔ ان کے پاس ری فلیشنگ کے لیے کوئی سلاٹ نہیں تھا! پرانا درجہ 00 - 5بلابو کہتا ہے:- بلاابو کو یاد آیا کہ ایک بار ہمارے آبائی سیارے پر میں نے ایک روبوٹ کو دیکھا جو پروگرامنگ جانتا تھا۔ اس نے اپنے طور پر ایک نیا فرم ویئر لکھا۔ اولڈ لیول 00 - 6پروفیسر کہتے ہیں:- جب بلابو نے اس کے بارے میں بتایا تو مجھ پر ذہانت کا ایک جھٹکا آیا۔ آخرکار، ایک بار میں نے ایک باصلاحیت نوجوان روبوٹ کو پاسکل میں پروگرام کرنا سکھایا۔ - میں نے سب سے باصلاحیت نوجوان روبوٹ کو پکڑنے اور اسے پروگرامنگ سکھانے کا حکم دیا۔ پھر وہ خود ایک اینٹوں والا فرم ویئر لکھنے کے قابل ہو جائے گا اور ہماری مدد کر سکے گا۔ اولڈ لیول 00 - 7

بائیں سے دائیں - ریشا گیٹسمین (16 ویں نسل میں ایک بیوروکریٹ)، امیگو (آپ)

ریشا کہتی ہیں: - ہم نے ایک زبردست نمونہ پکڑا ہے۔ ڈیاگو نے اپنے بھائی کے اعزاز میں اس کا نام امیگو رکھنے کو کہا، جو اس نے کبھی نہیں رکھا تھا۔ - میں نے ہر تربیتی مہینے کے لیے امیگو دھاتی موتیوں کی پیشکش کی اور مزید ملبہ ہٹانے کے لیے دس روپے سالانہ۔ اولڈ لیول 00 - 8ڈیاگو کہتا ہے:- میں ایسے گنجے چہرے کی چیر پھاڑ سے ناراض ہوا، لیکن پورے عملے نے پروفیسر اور ریشا کا ساتھ دیا۔ بلاشبہ، میں نے (بیرونی طور پر) اتفاق کیا اور امیگو کو سکھانے میں مدد کرنے کی پیشکش کی۔ (heh heh heh!) کم از کم اس لیے نہیں کہ کوئی بھی روبوٹ کو دوسرے سے بہتر نہیں سکھاتا ہے۔ - ہر کوئی میری تعمیل سے خوش تھا۔ انہوں نے نئے روبوٹ کی تربیت میں حصہ لینے کا بھی فیصلہ کیا۔

1 شروع کرنا

اولڈ لیول 00 - 9امیگو میں گھبراہٹ تھی۔ وہ الجھن میں تھا، اس کا دماغ دوڑ رہا تھا، آنکھیں پھڑک رہی تھیں اور پچھلی رات کے خیال میں سردی بڑھ رہی تھی۔ یہ عجیب و غریب مخلوق، اس کے کل کے جاننے والے، اس سے کچھ چاہتے ہیں۔ کچھ اس قدر عجیب اور ناقابل فہم ہے کہ وہ بھی جو اپنے آپ کو اپنے ہم عمروں میں سب سے زیادہ ذہین اور بہادر سمجھتا ہے، اس کے بارے میں سوچتے ہی گھبرا کر پنچ کارڈ چبانے لگتا ہے۔ وہ اسے کوڈ کرنا سکھانا چاہتے ہیں! جاوا کے ساتھ پروگرام! کیا وہ مذاق کر رہے ہیں؟ یہاں تک کہ سبز ترین روبوٹ بھی جانتا ہے کہ روبوٹ خالق کے الہی اختیار کا نتیجہ ہیں۔

"چنانچہ خالق نے دھات لی اور اپنی شبیہ اور مشابہت میں اس کا ایک روبوٹ بنایا۔ اور اس نے جاوا پروگرام بنائے - روبوٹ کی روحیں، اور انہیں روبوٹس پر اپ لوڈ کیا، اور انہیں زندہ کر دیا۔"

آپریشن دستی،
سیکشن 3، پیراگراف 13۔
اس سے بھی بدتر، وہ صرف یہ نہیں کہتے کہ یہ ممکن ہے۔ وہ یہ کرنے جا رہے ہیں۔ اور اس نے اپنی رضامندی دے دی۔ وہ مان گیا! کیوں؟ وہ جاوا پروگرامر بن جائے گا۔ کیا وہ اسے خالق میں تبدیل کرنے جا رہے ہیں؟! کس کے لئے؟ صرف تفریح ​​کے لئے؟ کیچ کہاں ہے؟ کیا ہوگا اگر مجھے اپنی بیٹری کے ختم ہونے تک خرابی اور تکلیف اٹھانی پڑے؟ فتنہ بہت اچھا تھا، وہ صرف اس کی مدد نہیں کر سکا۔ وہ ہمیشہ خواہش مند رہا ہے اور مزید چاہتا ہے۔ لیکن کوئی بھی ایسی تجویز کی توقع نہیں کرسکتا تھا۔ یقینا، اس نے وقت کے لئے اسٹال کرنے کی کوشش کی، لیکن پھر زائرین نے دوسرے روبوٹ کو منتخب کرنے کی دھمکی دی. شاید یہ کسی کی گندی چال تھی؟ نہیں، یہ سچ ہے۔ اس نے ثبوت دیکھا۔ یہ واقعی اس کے ساتھ ہوا، اور اس نے اتفاق کیا۔ جب تک زائرین جھوٹ نہیں بولیں گے، وہ واقعی جاوا پروگرامر بن جائے گا۔ اب تک کا پہلا روبوٹ پروگرامر… وہ منتخب کردہ ہے! یہ پوری بات ہے۔ وہ پروگرام کرنا سیکھے گا اور پروگرام لکھے گا۔ اس کے اپنے پروگرام۔ وہ جو چاہے! وہ روشنی کو لے جائے گا جہاں ہمیشہ تاریکی کا راج رہا ہے۔ اس کی عزت کی جائے گی، اس کی عبادت کی جائے گی۔ اور تمام اختلاف کرنے والے… اولڈ لیول 00 - 10- ہیلو، امیگو! میں ریشا گیٹس مین ہوں۔ میں جاوا سیکھنے میں آپ کی مدد کروں گا۔ ایک پُرسکون آواز نے امیگو کو اس کے خیالات کی ریل پیل سے نکالا اور اسے حقیقت کی طرف واپس لے آیا۔ وہ زائرین کے خلائی جہاز کے بالکل دل میں بیٹھا ہے۔ کیا یہ صرف ساتویں جماعت کے روبوٹ کے لیے زیادہ نہیں ہے؟ اجنبی بولتا رہا۔ ٹھیک ہے، اب ڈائی کاسٹ ہے. ایک بار جب وہ یہاں آئے گا، وہ سیکھ جائے گا۔ وہ سخت مطالعہ کرے گا لیکن، شروع کے لیے، وہ صرف سنے گا۔ - میں کئی سالوں سے Galactic Rush کے ساتھ ہوں، لیکن میں نے ایسا سیارہ پہلی بار دیکھا ہے۔ میں آپ کو بہتر طور پر جاننا چاہتا ہوں۔ شروع کرنے کے لیے، کیا آپ مجھے بتا سکتے ہیں کہ آپ کیسے سیکھتے ہیں؟ تم پڑھتے ہو نا؟ - ہاں، ہم اپنا علم بانٹتے ہیں۔ ہمیں مبلغ لیکچررز ملے۔ وہ اپنا لیکچر دیتے ہیں، اور ہم سنتے ہیں۔ کبھی کبھی ہم نوٹ بناتے ہیں۔ پھر، ہر کوئی ایک روبو لیکچرر کو بتاتا ہے کہ اس نے جو کچھ سنا تھا اسے کیسے اٹھایا۔ اگر روبو لیکچرر جواب پسند کرتا ہے، تو کوئی ایک لیکچر پاس کرتا ہے۔ - یہ مضحکہ خیز ہے! یہ کوئی تعجب کی بات نہیں ہے کہ آپ کی تہذیب جہالت پر اتر آئی۔ - ہم جاہل نہیں ہیں. جس نے آپ کو یہ خیال دیا؟ امیگو اپنی ہی بے غیرتی سے چونکا۔ زائرین کے ساتھ بحث؟ کیسا فلپنٹ! کیوں، اس نے صرف اپنے آپ سے ان کی بات سننے کا وعدہ کیا تھا! - کوئی بھی جدید ٹیکنالوجی اکثر جادو سے الگ نہیں ہوتی۔ - ریشا نے امیگو کے چیخ و پکار پر کوئی توجہ نہیں دی۔ - اس کے علاوہ، آپ کی سطح پر غور کرتے ہوئے... آپ کو لگتا ہے کہ تمام ٹیکنالوجیز جادوئی ہیں۔ مجھے بتائیں کہ پروگرام کے اندر کیا ہو رہا ہے؟ - جاوا پروگرام ایک الہی کام ہے۔ کیا اس کے جوہر کو سمجھنا ممکن ہے؟ - جی ہاں، امیگو، آپ اسے سمجھ سکتے ہیں اور آپ کے خیال سے زیادہ تیزی سے۔ تمام چیزیں پیچیدہ لگتی ہیں، یا اس سے بھی بدتر، سمجھ سے باہر، جب کوئی ایسی چیز ہو جسے آپ نہیں جانتے۔ لیکن اگر کوئی اچھا استاد ہے جو عام لوگوں میں یا لیروبوٹس کی شرائط میں ہر چیز کی وضاحت کرے گا، تو آپ حیران رہ جائیں گے کہ آپ اتنی سادہ چیز کو پیچیدہ کیسے سمجھ سکتے ہیں۔ - صرف علم ہی نہیں بلکہ ہنر اور اصول بھی اہم ہیں۔ اگرچہ میرے پاس وسیع علم ہے، میں سب سے پہلے ایک بیوروکریٹ ہوں، 16ویں نسل میں بیوروکریٹ ہوں۔ - اور یہ واقعی بہت اچھا ہے! میری بیوروکریٹ کی مہارتوں نے مجھے آپ کے لیے بہترین جاوا اسباق بنانے میں مدد کی۔ یہاں سب کچھ ہے: مسائل، پروگرام، کھیل، کام، تصاویر اور یہاں تک کہ لیکچرز۔ - یہاں تک کہ (!) لیکچر؟ امیگو کی آواز میں ایک حقیقی حیرت تھی۔ - ہاں. 22 ویں صدی میں یہ ثابت ہوا کہ ایک اچھا لیکچر اچھی کتاب سے کچھ زیادہ ہی موثر ہوتا ہے۔ ایک عام لیکچر ایک عام کتاب سے بھی بدتر ہوتا ہے۔ اس بات کو مدنظر رکھتے ہوئے کہ اب ہمارے پاس تربیتی امداد محدود ہے اور یہ آپ کو 28ویں صدی کے معیاری تربیتی سمیلیٹر کے ذریعے نہیں چلا سکتے، ہمیں کافی آسان طریقوں کا انتخاب کرنا ہوگا۔ ہم گیمز، ٹاسکس، تصاویر، لیکچرز اور ویڈیو کا ایک پاگل مرکب لے کر آئے ہیں۔ - آپ نے مجھے دلچسپ بنا دیا ہے۔ - مجھے امید ہے. دلچسپی اور سازش تمام سیکھنے کی بنیاد ہیں۔ - "جب کوئی طالب علم بور ہو جائے تو استاد کو بیٹنگ کرنی چاہیے" - 24ویں صدی کے تعلیمی قانون کا ایک اقتباس۔ - کیا ایک اچھا اقتباس … - جی ہاں، یہ ہے. فرض کریں کہ کسی فلم کا باکس آفس خراب ہے تو اس میں ڈائریکٹر کا قصور ہے نہ کہ ناظرین کا۔ اگر کچھ بورنگ ہے، تو یہ آپ نہیں ہیں جو قصوروار ہیں۔ انہیں دلچسپ فلمیں، تفریحی اسباق بنانا چاہیے، اور پھر ان کے پاس عوام کی کوئی انتہا نہیں ہوگی۔ - میں مکمل اتفاق کرتا ہوں. اور میں تفریحی اسباق کے لیے تیار ہوں! - ٹھیک. تو آئیے شروع کرتے ہیں۔ ریشا کی آواز مسحور کن تھی اور امیگو ہر لفظ پر لٹک رہی تھی۔ - پروگرام ایک کمانڈ سیٹ (کمانڈ لسٹ) ہے۔ پہلی کمانڈ پہلے چلتی ہے، پھر دوسری، تیسری، اور اس طرح کی چیزیں۔ جب تمام کمانڈز پر عمل درآمد ہو جاتا ہے تو پروگرام ختم ہو جاتا ہے۔ - اور احکام کیا ہیں؟ - یہ ایگزیکیوٹر پر منحصر ہے ، اس بات پر کہ ایگزیکیوٹر کن حکموں کو جانتا ہے (اور سمجھتا ہے)۔ - ایک کتے کو حکم دیا جا سکتا ہے "بیٹھو!"، "بھونک!"، ایک بلی - "شو!" ایک آدمی - "ہلنا مت، ورنہ میں گولی مار دوں گا!"، اور ایک روبوٹ "کام! آگے بڑھو، یو روبوما!» - اور ابھی تک... - امیگو اب زیادہ خوش نظر آرہا تھا۔ - JVM (جاوا ورچوئل مشین) جاوا کے ساتھ لکھے گئے پروگرام چلاتی ہے۔ JVM ایک خاص پروگرام ہے جو جاوا کے ساتھ لکھے گئے پروگراموں کو چلا سکتا ہے۔ - کمانڈ لسٹ کافی وسیع ہے۔ مثال کے طور پر، یہ کمانڈ "ایک روبوٹ انسان کا بہترین دوست ہے" کا متن دکھاتا ہے۔
سب سے آسان حکم ہے:
System.out.println("A robot is man’s best friend");
اولڈ لیول 00 - 11- O_O - تاہم، ہم فوری طور پر کمانڈز کے ساتھ شروع نہیں کریں گے، لیکن چند سادہ اصولوں کے ساتھ۔ - کچھ اصولوں کا علم بہت سے حقائق کے علم کا متبادل ہو سکتا ہے۔ - پہلا اصول۔ - جاوا پروگرامنگ زبان میں، ہر کمانڈ کو ایک نئی لائن میں لکھنے کا رواج ہے۔ کمانڈ کے آخر میں ایک سیمی کالون لگایا جائے گا۔ - ہم کہتے ہیں کہ ہم تین بار پیغام "ایک آدمی اور ایک روبوٹ چوروں کی طرح موٹے ہیں" ظاہر کرنا چاہتے ہیں۔ یہاں یہ ہے کہ یہ کس طرح نظر آئے گا:
تین حکموں کا استعمال کرتے ہوئے پروگرام:
System.out.println("A man and a robot are as thick as thieves");
System.out.println("A man and a robot are as thick as thieves");
System.out.println("A man and a robot are as thick as thieves");
- دوسرا اصول۔ - پروگرام نہ صرف حکموں پر مشتمل ہے۔ - ایک کمرے کا تصور کریں۔ کمرہ اپنے طور پر موجود نہیں ہو سکتا۔ یہ کسی اپارٹمنٹ کا حصہ ہے۔ اپارٹمنٹ بھی اپنے طور پر نہیں ہے، یہ ایک گھر میں ہے۔ - ایک بار پھر، ہم کہہ سکتے ہیں کہ گھر اپارٹمنٹس پر مشتمل ہے، اور اپارٹمنٹ کمروں پر مشتمل ہے۔ - اب تک، یہ واضح ہے. - تو حکم ایک کمرے کی طرح ہے۔ جاوا پروگرامنگ لینگویج میں، کمانڈ خود موجود نہیں ہو سکتی، یہ ایک فنکشن کا حصہ ہے (جاوا فنکشنز کو طریقے بھی کہا جاتا ہے)۔ ایک طریقہ کلاس کا حصہ ہے۔ دوسرے لفظوں میں، کلاس طریقوں پر مشتمل ہوتی ہے، اور طریقے کمانڈز پر مشتمل ہوتے ہیں۔ - لہذا کلاس ایک اپارٹمنٹ ہاؤس ہے، فنکشن / طریقہ ایک اپارٹمنٹ ہے، اور کمانڈ ایک کمرہ ہے۔ کیا میں اسے ٹھیک سمجھتا ہوں؟ - جی ہاں، بالکل. امیگو نے تقریباً احترام سے ریشا کو دیکھا۔ یہ شخص اسے الہی جاوا کی بنیادی باتیں سمجھاتا ہے! اور اس نے ابھی یہ سمجھا ہے کہ پروگرام کلاسز پر مشتمل ہوتے ہیں، کلاسز طریقوں پر مشتمل ہوتے ہیں اور طریقوں میں کمانڈز شامل ہوتے ہیں۔ امیگو ابھی تک یہ نہیں سمجھ سکا کہ کیا یہ ضروری ہے، لیکن اسے یقین تھا کہ یہ علم اسے کرہ ارض کا سب سے طاقتور روبوٹ بنا دے گا۔ دریں اثنا، ریشا نے جاری رکھا: - جاوا پروگرام کلاسز پر مشتمل ہوتے ہیں۔ دسیوں ہزار کلاسز ہو سکتی ہیں۔ ایک کم سے کم پروگرام ایک کلاس پر مشتمل ہوتا ہے۔ ہر کلاس کے لیے، ایک انفرادی فائل بنائی جاتی ہے جس کا نام کلاس کے نام سے ملتا ہے۔ - ہم کہتے ہیں کہ آپ نے ایک ایسی کلاس بنانے کا فیصلہ کیا ہے جو گھر کی وضاحت کرے گی۔ لہذا آپ کو ایک کلاس ہاؤس بنانے کی ضرورت ہے، جو House.java نام کی فائل میں ہوگی۔ - اگر آپ نے بلی کی وضاحت کرنے کا فیصلہ کیا ہے، تو آپ کو Cat.java فائل بنانے کی ضرورت ہے تاکہ اس میں کیٹ کلاس کو بیان کیا جاسکے، وغیرہ۔ - ایک فائل میں جاوا کوڈ (ٹیکسٹ) ہوتا ہے۔ عام طور پر کلاس کوڈ کلاس کے نام اور کلاس باڈی پر مشتمل ہوتا ہے۔ کلاس کا جسم گھوبگھرالی منحنی خطوط وحدانی میں بند ہے۔ یہاں کلاس ہاؤس کی طرح نظر آ سکتا ہے (House.java فائل): اولڈ لیول 00 - 12- ابھی تک، یہ مشکل نہیں ہے۔ - ٹھیک. پھر آگے بڑھتے ہیں۔ کلاس باڈی میں متغیرات (بصورت دیگر کلاس ڈیٹا کے نام سے جانا جاتا ہے) اور طریقے (کلاس فنکشنز) شامل ہوسکتے ہیں۔ اولڈ لیول 00 - 13- کیا آپ مجھے ایک مثال دیں گے؟ - ایک مثال؟ پریقین رہو! اولڈ لیول 00 - 14- «int a» اور «int b» متغیرات ہیں۔ کیا «مین» اور «پی آئی» طریقے ہیں؟ - ہاں. - کیا ایسی کلاسیں ہیں جن میں کوئی متغیر نہیں ہے؟ - جی ہاں. - اور بغیر کسی طریقے کے؟ - جی ہاں. تاہم، کم سے کم پروگرام میں کم از کم ایک کلاس کا ہونا ضروری ہے۔ اس کلاس میں پروگرام شروع کرنے کے لیے ایک سے کم طریقہ/ فنکشن پر مشتمل نہیں ہونا چاہیے۔ اس طریقہ کار کا ایک نام ہونا ضروری ہے ۔ کم سے کم پروگرام اس طرح لگتا ہے: اولڈ لیول 00 - 15- یہاں کلاس ہاؤس ہے، طریقہ اہم ہے، لیکن کمانڈ کہاں ہیں؟ - ایک کم سے کم پروگرام میں کوئی کمانڈ نہیں ہوتا ہے۔ اسی لیے اسے کم سے کم کہا جاتا ہے۔ - میں سمجھ گیا، اچھا. - ایک کلاس جو پروگرام شروع کرتی ہے اس کا کوئی بھی نام ہو سکتا ہے، لیکن پروگرام پر عمل درآمد کرنے کا بنیادی طریقہ ہمیشہ ایک ہی قسم کا ہوتا ہے: اولڈ لیول 00 - 16- میں سمجھ گیا۔ کم از کم مجھے ایسا لگتا ہے۔ - اچھا، چلو تھوڑا سا وقفہ لیتے ہیں۔ ایک کافی کے بارے میں کیا خیال ہے؟ - میں بہت چھوٹا ہوں. چھوٹے روبوٹ کافی نہیں پیتے - پانی کی وجہ سے ہم زنگ آلود ہو جاتے ہیں۔ - تو تم کیا پیتے ہو؟ - بیئر، وہسکی، صدی پرانی رم۔ - اتنا ہی بہتر۔ - پھر، ایک بیئر لمحہ؟

2 میٹنگ ریشا (جاری ہے)

(ایک گھنٹے بعد) - ٹھیک ہے۔ تو ہم کہاں تھے؟ - طریقہ کوڈ یا اس طرح کی کوئی چیز۔ - ہاں. بالکل۔ میتھڈ باڈی کمانڈز پر مشتمل ہے۔ آپ یہ بھی کہہ سکتے ہیں کہ طریقہ حکموں کا ایک گروپ ہے، جسے نام (طریقہ کا نام) دیا گیا تھا۔ کسی بھی طرح سے درست ہے۔ - مختلف احکامات ہیں۔ کیا آپ کے پاس یہاں کوئی کتا ہے؟ - صرف روبوولز کو قابو میں رکھیں۔ - کیا وہ حکموں کی پیروی کرتے ہیں؟ - ہاں. "کاٹو"، "کھاؤ"، "مار ڈالو" اور "بہت خوب! ہیل!» اولڈ لیول 00 - 17- آہم کیا حکم ہے! اور بالکل بھی بہت سے نہیں۔ - آپ کو کتنے چاہییں؟ - جاوا میں، تمام معاملات کے لیے حکم موجود ہیں۔ ہر کمانڈ ایک مخصوص عمل کی وضاحت کرتا ہے۔ ہر کمانڈ کے آخر میں ایک سیمی کالون رکھا جائے گا۔ کمانڈز کی مثالیں: اولڈ لیول 00 - 18- حقیقت میں، یہ ایک ہی کمانڈ ہے System.out.println ۔ اور اس کے پیرامیٹرز قوسین میں بتائے گئے ہیں۔ پیرامیٹرز کے لحاظ سے کمانڈ کا اثر مختلف ہو سکتا ہے۔ - یہ بہت آسان ہے۔ - ہاں. اگر آپ متن کو ظاہر کرنا چاہتے ہیں، تو آپ کو اسے دوہرے اقتباسات میں بند کرنا ہوگا « "»۔ ایک ڈبل اقتباس کو دو سنگل اقتباسات کے ساتھ الجھن میں نہیں ڈالنا چاہئے! - ڈبل اقتباس درج کریں بٹن کے آگے والا ہے؟ - جی ہاں. امیگو کی نبض 3 سے 5 گیگا ہرٹز تک تیز ہو گئی، وہ پھر بھی اس پر یقین نہیں کر سکتا تھا۔ اس نے صرف لائنوں کو ظاہر کرنے کا طریقہ سیکھا، اور یہ اس کے خیال سے کہیں زیادہ آسان تھا۔ امیگو نے اپنے خیالات سے دور رہنے اور پرسکون ہونے کے لیے کھڑکی سے باہر دیکھا۔ پتے پیلے ہو گئے۔ اس کے ذہن میں یہ آیا کہ زنگ آلود موسم بہت جلد آنے والا ہے۔ ونڈو اسے عام سے کہیں زیادہ دور دیکھنے کے قابل بناتی ہے - زائرین کی ٹیکنالوجیز نشان کے مطابق تھیں۔ اب وہ پتوں کی دیکھ بھال کیسے کرے گا؟ آخر کار، شام تک وہ بہت کچھ سیکھتا ہے۔ اولڈ لیول 00 - 19تاہم اس کے خیالات قابو سے باہر تھے۔ کسی دن وہ ایک پروگرام لکھے گا تاکہ تمام روبوٹس گھر پر ہی رکیں جیسے ہی زنگ آلود موسم شروع ہوتا ہے۔ اور یہ پروگرام ہزاروں روبولیوز کو بچائے گا… - اس کمانڈ کی دو مختلف حالتیں ہیں: System.out.print ln ( ) اور سسٹم ۔ out.print() - اگر آپ System.out.println() کمانڈ کو کئی بار لکھتے ہیں، ہر بار پاس ہونے والا متن ایک نئی لائن میں ظاہر ہوگا۔ اگر System.out.print()، تو متن اسی لائن پر ظاہر ہوگا۔ مثال: اولڈ لیول 00 - 20- یہاں ایک چھوٹا سا تبصرہ ہے۔ print ln کمانڈ متن کو نئی لائن میں ظاہر نہیں کرتی ہے۔ یہ موجودہ لائن پر متن دکھاتا ہے، لیکن یہ اگلے پیغام کو نئی لائن پر ظاہر کرتا ہے۔ - println() کمانڈ ٹیکسٹ کو ظاہر کرتی ہے اور پھر ایک خاص پوشیدہ لائن فیڈ کریکٹر شامل کرتی ہے جس کے نتیجے میں اگلا پیغام نئی لائن کے آغاز سے ظاہر ہوتا ہے۔ - ایک مکمل پروگرام کیسا لگتا ہے؟ - اب، آپ کی سکرین پر توجہ: اولڈ لیول 00 - 21- اوہ، یہ ہے! ہم الفاظ کے آخر میں خالی جگہیں شامل کرتے ہیں تاکہ الفاظ "ایک ساتھ چپکے" نہ رہیں، ٹھیک ہے؟ - یہ ٹھیک ہے. تم ایک ہوشیار ساتھی ہو۔ اس تعریف نے امیگو کو فخر سے چمکا دیا۔ - ٹھیک ہے، یہ تمہارا پہلا کام ہے.
کام
ایک پروگرام لکھیں جو دکھاتا ہے "پروگرامر بننا اچھا ہے!"۔
ظاہر کردہ متن کی مثال:
پروگرامر بننا اچھا ہے!

3 ایلی سے ملاقات

اولڈ لیول 00 - 22گلابی بالوں والی ایک خوبصورت عورت کیبن میں داخل ہوئی۔ "مجھے حیرت ہے کہ کیا تمام انسانی خواتین کے ایسے بال ہوتے ہیں؟" - امیگو نے سوچا، لیکن اس نے اسے الجھن میں دیکھا۔ - ارے! میرا نام ایلینورا کیری ہے۔ میں Galactic Rush کا مرکزی پائلٹ ہوں۔ - ہیلو، ایلینورا! - امیگو نے عجیب طور پر خود کو بولنے پر مجبور کیا۔ وہ نہیں جانتا تھا کیوں، لیکن اس کے گالوں کو ایسا لگا جیسے اس کے اندر کہیں تیل کی نالی خراب ہو گئی ہو۔ - میں آپ کو جاوا زبان کی سب سے دلچسپ چیز کے بارے میں بتاؤں گا - متغیرات کے بارے میں۔ - میں سننے کے لیے تیار ہوں! یہ متغیرات کیا ہیں؟ - متغیر ایک ایسی چیز ہے جس کا مقصد ڈیٹا کو ذخیرہ کرنا ہے۔ کوئی بھی ڈیٹا۔ تمام جاوا ڈیٹا متغیرات کا استعمال کرتے ہوئے محفوظ کیا جاتا ہے۔ ایک متغیر ایک باکس کی طرح ہے. - کیا باکس؟ - ایک بہت عام. فرض کریں کہ آپ نے کاغذ کے ایک ٹکڑے پر نمبر 13 لکھا اور اسے باکس میں ڈال دیا۔ اب ہم کہہ سکتے ہیں کہ باکس کی قیمت 13 ہے۔ - جاوا میں، ہر متغیر کی تین اہم خصوصیات ہیں: type ، name اور value ۔ - کیا آپ مجھے کچھ اور بتا سکتے ہیں؟ - ضرور. نام ایک متغیر کو دوسرے سے ممتاز کرنے کے لیے استعمال ہوتا ہے۔ یہ ایک باکس پر ایک نشان کی طرح ہے. - ایک متغیر کی قسم قدر / ڈیٹا کی ایک قسم کا تعین کرتی ہے جو اسے ذخیرہ کر سکتی ہے۔ ہم کیک کو کیک باکس میں، جوتے کو جوتے کے خانے میں، وغیرہ میں محفوظ کرتے ہیں۔ - قدر ایک چیز، ڈیٹا یا معلومات کو متغیر میں محفوظ کیا جاتا ہے۔ - مجھے ایک بار پھر قسم کے بارے میں بتائیں۔ - ٹھیک ہے. جاوا میں ہر چیز کی اپنی قسم ہے۔ مثال کے طور پر، ڈیٹا کی قسمیں ہو سکتی ہیں جیسے «انٹیجر»، «فریکشنل نمبر»، «ٹیکسٹ»، «کیٹ»، «ہاؤس» وغیرہ۔ ایک متغیر کی بھی اپنی قسم ہوتی ہے۔ متغیر صرف اسی قسم کی اقدار کو ذخیرہ کرسکتا ہے جس کا متغیر خود سے تعلق رکھتا ہے۔   - یہ حقیقی زندگی میں عام ہے۔ مختلف خانوں کو مختلف چیزوں کو ذخیرہ کرنے کے لیے استعمال کیا جاتا ہے۔ اولڈ لیول 00 - 23- متغیر بنانے کے لیے، ایک « type name » کمانڈ استعمال کریں۔ مثالیں: اولڈ لیول 00 - 24- دو قسمیں جو سب سے زیادہ استعمال ہوتی ہیں وہ ہیں عدد ( int کے ساتھ اشارہ کیا جاتا ہے ) اور متن ( String کے ساتھ اشارہ کیا جاتا ہے )۔ - ڈبل قسم کے بارے میں کیا خیال ہے؟ - ڈبل فریکشنل (حقیقی) نمبر ہیں۔ - آپ نے کہا کہ متغیر کی تین خصوصیات ہیں: قسم، نام اور قدر۔ تاہم، ان میں سے صرف دو ہیں. میرے پاس ایک سوال ہے: کسی قدر کو متغیر میں کیسے رکھا جائے؟ - ڈبوں پر واپس جائیں، تصور کریں کہ آپ نے کاغذ کا ایک ٹکڑا لیا، اس پر "42" لکھا اور اسے باکس میں ڈال دیا۔ اب باکس اسٹورز کی قیمت 42 ہے۔ - میں دیکھ رہا ہوں۔ - کسی قدر کو متغیر میں رکھنے کے لیے ایک خاص آپریشن ہوتا ہے جسے اسائنمنٹ آپریٹر کہتے ہیں ۔ یہ ایک متغیر کی قدر کو دوسرے متغیر میں نقل کرتا ہے۔ حرکت نہیں بلکہ کاپیاں ۔ بالکل ڈسک پر فائل کی طرح۔ ایسا لگتا ہے: اولڈ لیول 00 - 25- اسائنمنٹ آپریٹر کے لیے ایک برابر کا نشان «=» استعمال کیا جاتا ہے۔ - ایک بار پھر، یہ موازنہ نہیں ہے . یہ بائیں طرف واقع متغیر میں برابر کے نشان کے دائیں طرف قدر کو بالکل کاپی کر رہا ہے ۔ موازنہ کے طور پر، ایک ڈبل مساوی نشان «==» استعمال کیا جاتا ہے۔ - میں جانتا ہوں کہ بلی کو متغیر میں کیسے ڈالنا ہے۔ یہ تقریباً ایک پروگرام کی طرح ہے۔ - بلی کو کیسے پکڑیں: 1. ایک خالی ڈبہ لیں۔ 2. انتظار کرو۔ - نہیں، امیگو، آپ ایک ڈبے میں صرف ایک بلی رکھ سکتے ہیں۔ احم... میرا مطلب ہے، آپ متغیر میں صرف ایک قدر رکھ سکتے ہیں۔ - میں سمجھ گیا، اچھا. کیا آپ متغیرات کی تخلیق کے بارے میں مزید مثالیں دے سکتے ہیں؟ - ٹھیک ہے، میں اسے دوسرے طریقے سے ڈالوں گا. ایک متغیر بنانے کے لیے، آپ کو " ٹائپ نام " کمانڈ کو اس طرح لکھنا ہوگا : - اوہ، اب میں جانتا ہوں۔ - ذہن میں رکھیں کہ آپ ایک ہی طریقہ میں ایک جیسے ناموں کے ساتھ دو متغیرات نہیں بنا سکتے ہیں۔ - مختلف طریقوں کے بارے میں کیا خیال ہے؟ - آپ کر سکتے ہیں. یہ مختلف گھروں میں کھڑے بکسوں کی طرح ہے۔ - کیا متغیر کا کوئی نام ہو سکتا ہے؟ - بالکل، لیکن اس کے نام میں خالی جگہیں، علامتیں +، -، وغیرہ شامل نہیں ہوسکتی ہیں۔ سب سے اچھی بات یہ ہے کہ متغیر نام کے لیے صرف حروف اور اعداد استعمال کریں۔ - براہ کرم نوٹ کریں کہ جاوا کی زبان میں یہ اہم ہے کہ آپ کون سے حروف لکھتے ہیں - اپر کیس یا لوئر کیس ۔ "int a" "Int a" جیسا نہیں ہے۔ - ویسے، جاوا میں، ایک متغیر بنانا اور اسے ایک ہی وقت میں ایک قدر تفویض کرنا ممکن ہے۔ - یہ وقت اور جگہ بچانے میں مدد کرتا ہے: - یہ بہت بہتر اور سمجھنے میں آسان ہے۔ - ہم اسی کے ساتھ رہتے ہیں۔ - جاوا میں، دو قسمیں ہیں جو ایک نوزائیدہ کو خود سے واقف ہونا ضروری ہے۔ یہ قسمیں ہیں int (انٹیجرز) اور String (text/strings) ۔ - int قسم متغیر میں اعداد کو ذخیرہ کرنے کے ساتھ ساتھ مختلف آپریشنز جیسے کہ اضافہ، گھٹاؤ، ضرب، تقسیم وغیرہ کو قابل بناتا ہے۔ - میرے لیے، یہ سیاہ اور سفید ہے۔ کیا پروگرامنگ اتنی آسان ہے؟ - اصل میں، ہاں. - یہ اچھی بات ہے. تو آپ کو کیا ملا ہے؟ - اسٹرنگ کی قسم ٹیکسٹ سٹرنگز کو ذخیرہ کرنے کے قابل بناتی ہے۔ - جاوا میں کچھ ٹیکسٹ سٹرنگ تفویض کرنے کے لیے آپ کو اس کا متن لکھنا ہوگا، اور پھر اسے ڈبل کوٹس میں بند کرنا ہوگا۔ مثال: - میں سمجھ گیا۔ یہ کافی آسان لگتا ہے۔ - تو یہاں ایک اور دلچسپ حقیقت ہے۔ - سٹرنگز کو جمع کے نشان «+» کا استعمال کرتے ہوئے جوڑا جا سکتا ہے۔ مثال: - تو، میں نمبروں میں تار بھی جوڑ سکتا ہوں؟ - ہاں، لیکن براہ کرم جان لیں کہ اگر آپ کسی نمبر میں سٹرنگ جوڑتے ہیں، تو آپ کو ہمیشہ ایک سٹرنگ ملتی ہے۔ - جی ہاں، مجھے یہ مثال سے مل گیا ہے۔ - ٹھیک ہے، اگر آپ تیز رفتار ہیں، تو معلوم کریں کہ متغیر کو کیسے ظاہر کیا جائے؟ اولڈ لیول 00 - 26 اولڈ لیول 00 - 27اولڈ لیول 00 - 28اولڈ لیول 00 - 29اولڈ لیول 00 - 30اولڈ لیول 00 - 31 - یر... ایک متغیر ڈسپلے کریں؟ اوہ، میرا دماغ خالی ہو جاتا ہے۔ - یہ اصل میں بہت آسان ہے. کسی چیز کو ظاہر کرنے کے لیے، ہم System.out.println() کمانڈ استعمال کرتے ہیں اور اسے ایک پیرامیٹر ڈیٹا کے طور پر پاس کرتے ہیں جسے ہم ڈسپلے کرنا چاہتے ہیں۔ اولڈ لیول 00 - 32- پکڑا! اب سب کچھ واضح ہو گیا ہے۔ - ٹھیک ہے. پھر آپ کے لیے یہ تین کام ہیں۔
حالت
1 ایک پروگرام لکھیں جو 5 بار دکھاتا ہے «میں ہمیشہ زندہ رہنے کا ارادہ رکھتا ہوں۔ اب تک، بہت اچھا۔»
ہر سٹرنگ ایک نئی لائن پر ہونی چاہیے۔
2 ایک پروگرام لکھیں جو موجودہ سال کو دکھاتا ہو۔
ریکارڈ کے لیے یہ 31 ویں صدی ہے۔
3 ایک ایسا پروگرام لکھیں جو یہ دکھائے کہ "میں اتنا ہوشیار ہوں کہ بعض اوقات میں جو کچھ کہہ رہا ہوں اس کا ایک لفظ بھی مجھے سمجھ نہیں آتا۔"

4 میٹنگ پروفیسر

اولڈ لیول 00 - 33- ارے، امیگو. میں پروفیسر ہانس نوڈلز ہوں، Galactic Rush کمپنی کے سائنس ڈیپارٹمنٹ کا سربراہ ہوں۔ میں آپ کو جاوا سکھانے کے پروجیکٹ کی نگرانی بھی کرتا ہوں۔ - صبح بخیر، پروفیسر نوڈلس۔ - میں آپ کو بتانا چاہوں گا کہ جاوا اتنی بڑی پروگرامنگ زبان کیوں ہے ۔ - آپ یقینی طور پر ایک سے زیادہ بار سنیں گے کہ پلیٹ فارم کی آزادی جاوا کا دوسری زبانوں پر ناقابل تردید فائدہ ہے۔ یہ کیا ہے اور اس سے کیسے نمٹا جائے؟ میں آپ کو کچھ پس منظر بتا کر سمجھانے کی کوشش کروں گا۔ - حقیقت یہ ہے کہ کمپیوٹر صرف قدیم عددی حکموں پر عمل درآمد کرتے ہیں۔ کتے کے احکام ہیں جیسے "ہیل"، "ہلانا" وغیرہ۔ ایک کتا ان کی بات سن کر کچھ کرتا ہے۔ - کمپیوٹرز میں، نمبر اس طرح کے کمانڈز کے کردار کو پورا کرتے ہیں: ہر کمانڈ کو ایک نمبر، کوڈ کے ساتھ انکوڈ کیا جاتا ہے، جسے مشین کوڈ بھی کہا جاتا ہے۔ - کسی پروگرام کو عددی شکل میں لکھنا بہت مشکل ہے، اسی لیے لوگوں نے پروگرامنگ لینگویجز اور کمپائلرز ایجاد کیے ہیں ۔ ایسی زبان انسان اور مرتب کرنے والے دونوں کے لیے قابل فہم ہے۔ کمپائلر ایک خاص پروگرام ہے، جو پروگرامنگ زبان میں لکھے گئے پروگرام کے متن کو مشین کوڈ سیٹ میں ترجمہ کرتا ہے۔ - عام طور پر ایک پروگرامر ایک پروگرامنگ زبان کے ساتھ ایک پروگرام لکھتا ہے، اور پھر ایک کمپائلر شروع کرتا ہے، جو پروگرامر کی طرف سے لکھی گئی پروگرام کوڈ فائلوں کو مشین کوڈ فائل بنانے کے لیے استعمال کرتا ہے - ایک حتمی (مرتب شدہ) پروگرام۔ اولڈ لیول 00 - 34- نتیجے میں آنے والا پروگرام فوری طور پر کمپیوٹر پر چلایا جا سکتا ہے۔ اس نقطہ نظر کی خرابی یہ ہے کہ پروگرام کا کوڈ ایک پروسیسر اور آپریٹنگ سسٹم پر بہت زیادہ انحصار کرتا ہے۔ ونڈوز پر مرتب کردہ پروگرام اینڈرائیڈ فون پر کام نہیں کرے گا۔ - تو اینڈرائیڈ کے لیے لکھا اور مرتب کیا گیا پروگرام کام نہیں کرے گا اگر میں اسے ونڈوز پر چلانے کی کوشش کروں؟ - جی ہاں. - لیکن جاوا کا نقطہ نظر بہت زیادہ جدید ہے۔ اولڈ لیول 00 - 35- جاوا کمپائلر تمام کلاسوں کو مشین کوڈز کے ایک پروگرام میں مرتب نہیں کرتا ہے۔ اس کے بجائے، یہ ہر ایک کلاس کو مشین کوڈ پر نہیں بلکہ ایک خاص درمیانی کوڈ (بائی کوڈ) پر مرتب کرتا ہے۔ مشین کوڈ کی تالیف اس وقت چلتی ہے جب پروگرام شروع ہوتا ہے۔ - پھر شروع میں ایک پروگرام مرتب کرنے والا کون ہے؟ - JVM (جاوا ورچوئل مشین) نامی ایک خاص پروگرام ہے۔ جب بائیک کوڈ پر مشتمل ایک پروگرام پر عمل درآمد کیا جاتا ہے، تو یہ سب سے پہلے شروع ہوتا ہے۔ اور پھر پروگرام شروع ہونے سے پہلے، JVM اسے مشین کوڈ میں مرتب کرتا ہے۔ - کتنا دلچسپ ہے! اور ایسا کرنے میں کیا اعتراض ہے؟ - یہ ایک بہت ہی ہوشیار فیصلہ ہے، اور جاوا کے مکمل تسلط کی ایک وجہ ہے۔ - اس نقطہ نظر کی وجہ سے، جاوا پروگرام تقریباً کسی بھی ڈیوائس پر چل سکتے ہیں - کمپیوٹر، فون، اے ٹی ایم، ٹوسٹر، بینک کارڈ (!)۔ - زبردست! - اس نقطہ نظر کے بہت سے فوائد ہیں۔ اسی لیے تمام اینڈرائیڈ پروگرام جاوا کے ساتھ بھی لکھے جاتے ہیں۔ موبائل سیکٹر کی ترقی کی وجہ سے، جاوا کو درج ذیل شعبوں میں ایک غالب پوزیشن حاصل ہے: 1) انٹرپرائز: بینکوں، کارپوریشنز، سرمایہ کاری فنڈز وغیرہ کے لیے بھاری سرور سائیڈ ایپلی کیشنز۔ 2) موبائل: موبائل ایپلیکیشن ڈویلپمنٹ (فون، ٹیبلٹ)، اینڈرائیڈ کا شکریہ۔ 3) ویب: پی ایچ پی میدان میں آگے ہے، لیکن جاوا کے پاس بھی مارکیٹ کا بڑا حصہ ہے۔ 4) بگ ڈیٹا: ہزاروں سرورز کے کلسٹرز میں تقسیم شدہ کمپیوٹنگ۔ 5) سمارٹ ڈیوائسز: سمارٹ ہوم، الیکٹرانکس یا انٹرنیٹ تک رسائی کے ساتھ ریفریجریٹرز کے لیے پروگرام۔ - جاوا صرف ایک زبان نہیں ہے، بلکہ ایک پورا نظام ہے، لاکھوں ریڈی میڈ ماڈیولز جو آپ اپنے پروگرام میں استعمال کر سکتے ہیں۔ ہزاروں انٹرنیٹ کمیونٹیز اور فورمز جن سے آپ مدد یا مشورہ مانگ سکتے ہیں۔ - جتنا زیادہ آپ جاوا کے ساتھ پروگرام کریں گے، اتنا ہی زیادہ آپ کو اس سوال کے جواب ملیں گے - "جاوا کیوں؟"۔ آج کے لیے اتنا ہی ہے۔ - شکریہ، پروفیسر. یہ سب سے دلچسپ اور متاثر کن لیکچر تھا۔

5 کم سے ملاقات

واہ، ایک اور انسانی عورت۔ لیکن اس بار سیاہ بالوں کے ساتھ۔ کتنا دلچسپ ہے! - ہیلو، میرا نام کم لی-لنگ ہے۔ - ہیلو، میں امیگو ہوں. - میں جانتا ہوں. یہ میں ہی تھا جو آپ کا نام لے کر آیا تھا۔ یہ ڈیاگو کو کبھی نہیں ہوا ہوگا۔ میں اپنے لیکچر کا آغاز ایک چھوٹی سی پریزنٹیشن سے کرنا چاہوں گا - اب، آپ کی سکرین پر توجہ دیں! اولڈ لیول 00 - 36- افوہ، ایک غلط فلیش ڈرائیو۔ ٹھہرو... امیگو کے خیالات الیکٹران کی رفتار سے اس کے دماغ میں گردش کر رہے تھے۔ احم… کیا اس کے پاس روبوٹ کے لیے نرم جگہ ہے؟ کتنا دلچسپ ہے! اور میز پر ایک تصویر - کیا یہ اس کا بوائے فرینڈ ہے؟ - چلو واپس لیکچر پر چلتے ہیں! آئیے میں آپ کو آسان الفاظ میں تمام چیزیں سمجھاتا ہوں۔ - ٹھیک ہے. - میں پروفیسر اور ریشا کی باتوں میں کچھ الفاظ شامل کرنا چاہوں گا۔ - جاوا میں، آپ نہ صرف کمانڈ لکھ سکتے ہیں، بلکہ ان پر براہ راست کوڈ میں تبصرہ بھی کر سکتے ہیں۔ ان تبصروں کو مرتب کرنے والے نے نظر انداز کر دیا ہے، گویا کوئی بھی نہیں تھا۔ جب پروگرام پر عمل کیا جاتا ہے تو تمام تبصرے چھوڑ دیے جاتے ہیں! - کیا آپ مجھے ایک مثال دیں گے؟ - یقینی: اولڈ لیول 00 - 37- کلاس کوڈ میں ہمارا تبصرہ تھا «اب ہم ڈسپلے کرتے ہیں...»۔ تبصرہ حروف «/*» سے شروع ہوتا ہے، اور «*/» پر ختم ہوتا ہے۔ جب کوئی پروگرام مرتب کیا جاتا ہے، تو کمپائلر /* اور */ - کے درمیان تمام حروف کو چھوڑ دیتا ہے تو میں وہاں کچھ بھی لکھ سکتا ہوں؟ - جی ہاں. عام طور پر کوڈ کے حصے پر مختلف تبصرے ہوتے ہیں، جو قابل اعتراض یا سمجھنا مشکل ہوتا ہے۔ درجنوں لائنوں کے تبصرے ہیں (عام طور پر طریقوں سے پہلے لکھے جاتے ہیں) جو طریقوں کے کام کی تفصیلات بیان کرتے ہیں۔ - کوڈ میں تبصرہ سیٹ کرنے کا دوسرا طریقہ یہ ہے کہ حروف «//» استعمال کریں۔ اولڈ لیول 00 - 38- ایسا کرتے ہوئے تبصرہ کوڈ کا حصہ ہے جو حروف سے شروع ہوتا ہے // لائن کے آخر تک جو وہ واقع ہیں۔ لہذا تبصرہ کو "بند" کرنے کے لئے کوئی کردار نہیں ہیں۔ - ویسے، سافٹ ویئر ڈویلپرز کو مزاح کا اچھا احساس ہے، اور آپ کو کوڈ میں کچھ دلچسپ تبصرے مل سکتے ہیں:
// I am not responsible of this code.
// They made me write it, against my will.
//Dear future me. Please forgive me.
//I can't even begin to express how sorry I am.
// I am not sure if we need this, but too scared to delete.
// hack for IE browser (assuming that IE is a browser)
// This isn't the right way to deal with this, but today is my last day, Ron
// just spilled coffee on my desk, and I'm hungry, so this will have to do...
// Catching exceptions is for communists
// Dear maintainer:
//
// Once you are done trying to 'optimize' this routine,
// and have realized what a terrible mistake that was,
// please increment the following counter as a warning
// to the next guy:
//
// total_hours_wasted_here = 42
// When I wrote this, only God and I understood what I was doing
// Now, God only knows
// sometimes I believe compiler ignores all my comments
// I dedicate all this code, all my work, to my wife, Darlene, who will
// have to support me and our three children and the dog once it gets
// released into the public.
// drunk, fix later
// Magic. Do not touch.
- ہاں، تبصرے بعض اوقات بہت مضحکہ خیز ہوتے ہیں۔ - میرا کام ہوگیا. - ایک مختصر لیکن دلچسپ لیکچر۔ شکریہ، کم۔

6 جولیو سے ملاقات

اولڈ لیول 00 - 39- ارے، امیگو. میں جولیو سیسٹا ہوں۔ - میں دیکھ رہا ہوں کہ آپ نے آج سخت کام کیا ہے۔ - اچھی طرح سے کمائے جانے والے وقفے کے بارے میں کیا خیال ہے؟ - کیا مجھے لیکچر نہیں دینا چاہئے؟ - ہاں. تاہم، سبق دلچسپ ہونا ضروری ہے، کیا آپ بھول گئے ہیں؟ پچھلی بار میں نے چیک کیا کہ بیٹنگ بورنگ ٹیچرز پر کوئی قانون موجود ہے! - یہ ایک خاص ویڈیو ٹیوٹوریل ہے… er… سیکھنے کے لیے اپنے جوش کو برقرار رکھیں اور... مختصر میں، آئیے ایک نظر ڈالتے ہیں، سوالات کو بعد میں چھوڑ دیتے ہیں۔ اس کو چلاؤ!

7 ڈیاگو سے ملاقات

اولڈ لیول 00 - 40- حیا، میرا نام ڈیاگو کارلیون ہے۔ میں آپ کی طرح ایک روبوٹ ہوں، صرف ہوانا، کیوبا میں فیکٹری میں بنایا گیا ہے۔ - ہیلو-یا، ڈیاگو! میں نے پہلے ہی آپ کے بارے میں بہت کچھ سنا ہے۔ - آپ کو سبق کیسا لگتا ہے؟ - یہ پروگرامنگ کا سب سے زبردست سبق ہے جو میں نے کبھی حاصل کیا ہے۔ نہیں، یہاں تک کہ خوفناک۔ میری زندگی کا بہترین سبق۔ اس سے بہتر جس کا میں کبھی سوچ بھی نہیں سکتا تھا۔ - ہم اسی کے ساتھ رہتے ہیں۔ - کیا باقی سب اتنے ہی دلچسپ ہیں؟ - اس سے بھی بہتر! اکیسویں صدی میں بورنگ اسباق پیچھے رہ گئے تھے۔ نیکی مجھے - بلیک بورڈ پر چاک سے لکھنا۔ 15ویں صدی کے بعد سے کچھ بھی نہیں بدلا۔ مجھے لگتا ہے کہ وہاں ڈایناسور آزادانہ طور پر چل رہے تھے۔ - میرا اندازہ ہے. آگے کیا آتا ہے؟ - آپ اگلے درجے پر جائیں! آپ کے پاس مکمل کرنے کے لیے صرف 39 ہیں، اور آپ ایک بہترین جاوا ڈویلپر بن جائیں گے! آج آپ نے سیکھا:
  • متغیرات کیا ہیں
  • اسکرین پر پیغامات کو کیسے ڈسپلے کریں۔
  • اپنے آپ کو int اور String کی اقسام سے واقف کرو
  • جاوا اور دوسری زبانوں میں تالیف میں کیا فرق ہے؟
  • تبصرے کیسے کریں، اور ہمیں ان کی ضرورت کیوں ہے۔
- زبردست! - یقیناً، اگلی سطحیں اس کی طرح آسان نہیں ہوں گی، لیکن ان کی پیچیدگی آہستہ آہستہ بڑھتی جائے گی، ساتھ ہی ساتھ عملی مسائل بھی۔ - بالکل اسی طرح جیسے جم میں، تھوڑا تھوڑا بوجھ اٹھانا، اور چھ ماہ میں 100 کلو بار کے ساتھ سینے کی ورزش کرنا۔ - اچھا، میں پہلے ہی بار اور کام دونوں چاہتا ہوں! - ٹھیک ہے، اگر آپ اس طرح کے اسٹیکر ہیں، تو یہاں آپ کے لیے کچھ اور کام ہیں۔ - انکل ڈیاگو آپ کو کچھ حقیقی عملہ سکھائیں گے! روبوچکس لینے کے بارے میں کیا خیال ہے؟ اگرچہ آپ چھوٹے ہیں، یہ زندگی کی مہارتیں کبھی بھی بے کار نہیں ہوں گی۔
حالت
1 کچھ جاوا پکڑنا چاہتے ہیں؟
ایک پروگرام لکھیں جو دکھاتا ہے "کیا جاوا کو پکڑنا چاہتے ہیں؟"
2 اگر آپ مجھے اپنا ماخذ کوڈ دکھاتے ہیں تو
میں آپ کو اپنا ماخذ کوڈ دکھاؤں گا۔
3 اچھا بولٹ پیچ کرنا چاہتے ہیں؟
"اچھا بولٹ اسکرو کرنا چاہتے ہیں؟" کو ظاہر کرنے کے لیے ایک پروگرام لکھیں۔
تبصرے
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION