ازگر 30 سال کا ہو گیا۔

20 فروری 1991 کو Guido van Rossum نے alt.sources گروپ میں Python پروگرامنگ لینگویج کی پہلی ریلیز شائع کی، جس پر وہ دسمبر 1989 سے سسٹم ایڈمنسٹریشن کے مسائل کو حل کرنے کے لیے اسکرپٹنگ لینگویج بنانے کے منصوبے کے حصے کے طور پر کام کر رہے تھے۔ امیبا آپریٹنگ سسٹم، جو سی کے مقابلے اعلیٰ سطح کا ہو گا، لیکن، بورن شیل کے برعکس، OS سسٹم کالز تک زیادہ آسان رسائی فراہم کرے گا۔

پروجیکٹ کے لیے نام کامیڈی گروپ مونٹی ازگر کے اعزاز میں چنا گیا تھا۔ پہلے ورژن میں وراثت، استثنیٰ ہینڈلنگ، ایک ماڈیول سسٹم، اور بنیادی اقسام کی فہرست، dict اور str کے ساتھ کلاسوں کے لیے تعاون متعارف کرایا گیا۔ ماڈیولز اور مستثنیات کا نفاذ Modula-3 زبان سے لیا گیا تھا، اور ABC زبان سے انڈینٹیشن پر مبنی کوڈنگ اسٹائل، جس میں Guido نے پہلے تعاون کیا تھا۔

Python تخلیق کرتے وقت، Guido کو درج ذیل اصولوں سے رہنمائی حاصل تھی:

  • وہ اصول جنہوں نے ترقی کے دوران وقت بچایا:
    • دوسرے منصوبوں سے مفید آئیڈیاز لینا۔
    • سادگی کی جستجو، لیکن حد سے زیادہ آسان بنانے کے بغیر (آئنشین کا اصول "ہر چیز کو جتنا ہو سکے بیان کیا جانا چاہیے، لیکن آسان نہیں")۔
    • UNUX فلسفہ کی پیروی کرتے ہوئے، جس کے مطابق پروگرام ایک فعالیت کو نافذ کرتے ہیں، لیکن اسے اچھی طرح سے انجام دیتے ہیں۔
    • کارکردگی کے بارے میں زیادہ فکر نہ کریں، ضرورت پڑنے پر اصلاح کو شامل کیا جا سکتا ہے۔
    • مروجہ چیزوں سے لڑنے کی کوشش نہ کریں، بلکہ بہاؤ کے ساتھ چلیں۔
    • کمال پسندی سے بچیں؛ عام طور پر "کافی اچھی" سطح کافی ہوتی ہے۔
    • بعض اوقات کونوں کو کاٹا جا سکتا ہے، خاص طور پر اگر بعد میں کچھ کیا جا سکے۔
  • دوسرے اصول:
    • نفاذ کے لیے پلیٹ فارم مخصوص ہونے کی ضرورت نہیں ہے۔ ہو سکتا ہے کہ کچھ خصوصیات ہمیشہ دستیاب نہ ہوں، لیکن بنیادی فعالیت کو ہر جگہ کام کرنا چاہیے۔
    • صارفین پر ایسے پرزوں کا بوجھ نہ ڈالیں جنہیں مشین کے ذریعے سنبھالا جا سکتا ہے۔
    • پلیٹ فارم سے آزاد صارف کوڈ کی حمایت اور فروغ، لیکن پلیٹ فارمز کی صلاحیتوں اور خصوصیات تک رسائی کو محدود کیے بغیر۔
    • بڑے پیچیدہ نظاموں کو توسیع کی متعدد سطحیں فراہم کرنی چاہئیں۔
    • غلطیاں مہلک اور ناقابل شناخت نہیں ہونی چاہئیں — صارف کوڈ کو غلطیوں کو پکڑنے اور ہینڈل کرنے کے قابل ہونا چاہیے۔
    • یوزر کوڈ میں خرابیوں کو ورچوئل مشین کی فعالیت کو متاثر نہیں کرنا چاہیے اور مترجم کے غیر متعینہ رویے اور عمل کے کریشوں کا باعث نہیں بننا چاہیے۔

    ماخذ: opennet.ru

نیا تبصرہ شامل کریں