Reading Other Peoples Code
اب تک آپ نے کوڈ خالی فائل سے لکھا ہے۔ ڈویلپر کی زندگی کا بڑا حصہ اس کا الٹ ہے۔ آپ کسی اور کا بنایا فولڈر کھولتے ہیں، اکثر کئی سال پرانا، اکثر کسی ایسے شخص کا جو اب کمپنی چھوڑ چکا ہے، اور کچھ بدلنے سے پہلے یہ سمجھنے کی ک…
اس کو سمجھنے کا ایک سے زیادہ طریقہ ہے۔ اگر آپ کو صرف ایک طریقہ سکھایا گیا ہے تو آپ کو حق سے کم سکھایا گیا ہے۔
اس کو سمجھنے کا ایک سے زیادہ طریقہ ہے۔ اگر آپ کو صرف ایک طریقہ سکھایا گیا ہے تو آپ کو حق سے کم سکھایا گیا ہے۔
اب تک آپ نے کوڈ خالی فائل سے لکھا ہے۔ ڈویلپر کی زندگی کا بڑا حصہ اس کا الٹ ہے۔ آپ کسی اور کا بنایا فولڈر کھولتے ہیں، اکثر کئی سال پرانا، اکثر کسی ایسے شخص کا جو اب کمپنی چھوڑ چکا ہے، اور کچھ بدلنے سے پہلے یہ سمجھنے کی کوشش کرتے ہیں کہ یہ کرتا کیا ہے۔ پہلی بار جب آپ کسی اصل گٹ ہب ریپوزٹری پر یہ کرتے ہیں، گھبراہٹ سچی ہوتی ہے۔ چالیس فولڈر۔ webpack.config.cjs جیسے نام۔ README فرض کر لیتا ہے کہ آپ پہلے سے جانتے ہیں monorepo کیا ہے۔ سانس لیں۔ لاہور کے ہر سینئر انجینئر نے پہلے دن یہی محسوس کیا تھا۔ کوڈ پڑھنے کا ہنر سیکھا جا سکتا ہے، اور یہ زیادہ تر اس بات پر منحصر ہے کہ پہلے نظر کہاں ڈالنی ہے۔
کوئی بھی چھوٹی اوپن سورس ریپو کھولیں، مثلاً گٹ ہب پر کوئی مشہور اردو کی بورڈ لے آؤٹ۔ بے ترتیب فائلیں کھولنے کی خواہش روکیں۔ اسی ترتیب میں پڑھیں۔ پہلے سب سے اوپر README.md۔ دوسرا package.json یا pyproject.toml یا requirements.txt، جو بھی زبان استعمال ہو۔ تیسرا src یا app نامی فولڈر، اور اس کے اندر index، main، یا app نامی فائل۔ یہ ترتیب باری باری تین سوالوں کا جواب دیتی ہے۔ پروجیکٹ کیا کرنے کا وعدہ کرتا ہے، یہ کس اور کوڈ پر منحصر ہے، اور اصل میں چلنا کہاں سے شروع کرتا ہے۔ نوے فیصد ریپوزٹریاں انہی تین قراءتوں سے اپنی شکل کھول دیتی ہیں۔
اب docstring کی عادت۔ docstring فنکشن کے بالکل اوپر لکھا گیا چھوٹا متن ہے، Python میں تین کوٹس کے درمیان، JavaScript میں سلیش اسٹار اسٹار کے درمیان، جو سادہ الفاظ میں بتاتا ہے کہ فنکشن کیا کرتا ہے، کیا لیتا ہے، اور کیا واپس کرتا ہے۔ اچھا کوڈ ان سے بھرا ہوتا ہے۔ کسی اور کا کوڈ پڑھتے وقت کسی منطق کو پڑھنے سے پہلے ہر docstring پڑھیں۔ اس سبق کے بعد اپنا کوڈ لکھتے وقت فنکشن کے جسم سے پہلے docstring لکھیں۔ نظم چھوٹا ہے۔ صلہ بہت بڑا۔ docstring آنے والے آپ سے ایک وعدہ ہے کہ رات ایک بجے اپنا ہی کوڈ یہ یاد کرنے کے لیے دوبارہ نہیں پڑھنا پڑے گا کہ وہ کرتا کیا ہے۔
یہ کر کے دیکھیں۔ گٹ ہب پر urdu sentiment تلاش کریں۔ سب سے اوپر والا ریپو کھولیں۔ ایسی پائتھن فائل ڈھونڈیں جس میں کم از کم تین فنکشن ہوں۔ README، requirements، فائلوں کے نام پڑھیں، پھر ہر فنکشن کا صرف docstring اور پہلی دو سطریں۔ نوٹ بک میں تین جملے لکھیں۔ پورا پروجیکٹ کیا کرتا ہے، ایک فنکشن اس میں کیا کرتا ہے، اور کوڈ کی ایک ایسی بات جو ابھی آپ کی سمجھ میں نہیں آئی۔ تیسرا جملہ سب سے قیمتی ہے۔ نہ سمجھ آنے والی چیزوں کی فہرست ہی وہ نصاب ہے جس سے آنے والی آپ پڑھے گی۔
ایک آخری عادت، جس کا فائدہ بڑھتا چلا جاتا ہے۔ جب بھی کوئی ایسا کوڈ پڑھیں جو غیر معمولی واضح یا غیر معمولی ہنر مند لگے، اس کا لنک code-i-admire.md نامی فائل میں محفوظ کر لیں۔ تین ماہ بعد آپ کے پاس بیس مثالیں ہوں گی۔ انہیں ساتھ دیکھیں۔ آپ کو لکھنے والوں کے انداز نظر آنے لگیں گے، نام رکھنے کے، منطق توڑنے کے، تبصرے لکھنے کے۔ یہ انداز خاموشی سے آپ کے اپنے کوڈ میں شامل ہوں گے، بغیر اصول رٹے۔ پاکستانی انداز کی تعلیم، استاد کے پاس بیٹھ کر ہاتھ دیکھنا، کوڈ پر بھی چلتی ہے۔ انٹرنیٹ نے آپ کو دس ہزار استاد دے دیے ہیں جن کے پاس بیٹھا جا سکتا ہے۔
تخمینی وقت: 13 منٹ