GitHub کوڈ مینجمنٹ اور شیئرنگ کا سب سے مقبول پلیٹ فارم ہے۔ یہ سافٹ ویئر کوڈ کا گھر ہے جس پر کل 31 دنیا بھر سے کام کرنے والے ملین صارفین 337 پروگرامنگ زبانیں۔ یہ دیکھتے ہوئے کہ وقت کے ساتھ کتنا GitHub بڑھ گیا ہے، میں ڈھٹائی سے کہہ سکتا ہوں کہ GitHub یہاں ہے طویل سفر کے لیے۔
ہاں، مائیکروسافٹ نے اسے 2018 میں 7.5 بلین میں خریدا تھا لیکن ایسا لگتا ہے کہ بہت سے ڈویلپرز کی کہانیوں کے باوجود اس سے کوئی فرق نہیں پڑتا ہے۔ خریداری کے بعد پلیٹ فارم۔
میں یہ کیسے جانوں؟ GitHub Octoberfest کی اعزازی، آئیے کچھ اعدادوشمار دیکھیں:
ظاہر ہے، GitHub پہلے سے کہیں زیادہ استعمال ہو چکا ہے اور یہ اعدادوشمار میرے یقین کو پختہ کرتے ہیں کہ پلیٹ فارم شاید کسی سے پیچھے نہ ہو۔ میری زندگی میں دوسرا پلیٹ فارم۔ اس کے بہت زیادہ صارف کی بنیاد کو دیکھتے ہوئے، GitHub یہ دیکھنے کے لیے ایک مثالی جگہ ہے کہ کون سی کمپیوٹر زبانیں اپنے پروجیکٹ کی تعداد کے حوالے سے سب سے زیادہ استعمال ہوتی ہیں۔
ڈس کلیمر:
یہ پروگرامنگ زبانوں کے اندرونی کام، ان کی خوبیوں/خرابیوں، یا تاریخ پر کوئی تکنیکی مضمون نہیں ہے۔ بلکہ، یہ مختصر پس منظر کے ساتھ GitHub پر سب سے زیادہ مقبول زبانوں کی فہرست ہے۔
1۔ JavaScript
JavaScript ایک اعلیٰ سطحی، تشریح شدہ پروگرامنگ زبان ہے جو ابتدائی طور پر براؤزرز میں انٹرایکٹو اثرات پیدا کرنے کے لیے بنائی گئی ہے۔شروع میں، یہ بڑے پیمانے پر فرنٹ اینڈ پروگراموں کے لیے استعمال کیا جاتا تھا لیکن اس کے بعد سے یہ ایک ڈویلپر کا پسندیدہ بن گیا ہے کیونکہ اس نے فریم ورک، لائبریریوں، اور سافٹ ویئر سلوشنز کی تقریباً نہ ختم ہونے والی فہرست کو جنم دیا ہے جیسے بڑے عنوانات کے ساتھ الیکٹران, node.js, AngularJS, چند کا ذکر کرنا۔
JavaScript جو کلائنٹ سائیڈ لینگویج کے طور پر شروع ہوا تھا اب فرنٹ اینڈ اور بیک اینڈ دونوں پروگرام بنانے کے لیے استعمال ہوتا ہے۔ گیمز اور اب اس نے خود کو ایک تیز، ورسٹائل اور قابل توسیع پروگرامنگ زبان ثابت کیا ہے۔ اگر آپ مجھ سے پوچھیں، JS تھوڑی دیر کے لیے 1
رہے گا۔ پی ایس JavaScript کسی بھی طرح سے Java سے وابستہ نہیں ہے۔
2۔ جاوا
جاوا ایک مرتب کردہ، عام مقصد کی، اعلیٰ سطح کی پروگرامنگ زبان ہے جس میں آبجیکٹ اورینٹڈ پروگرامنگ پر فوکس کیا جاتا ہے۔ یہ وہ زبان ہے جس میں کم از کم 15 بلین ڈیوائسز ہیں جن کے ساتھ دنیا بھر میں 10 ملین ڈویلپرز ہیں۔
Sun Microsystems کوڈ کی بھروسے کے ساتھ اور پلیٹ فارم سے آزاد سافٹ ویئر کے حل کو ذہن میں رکھتے ہوئے بنایا گیا، Java اب اوریکل کی ملکیت اور دیکھ بھال ہے اور اس کے بغیر پروگرامنگ زبانوں کی کوئی فہرست بنانا عملی طور پر ناممکن ہے۔
Java اینڈرائیڈ ایپس، ڈیٹا بیس، ڈیسک ٹاپ ایپلی کیشنز وغیرہ تیار کرنے کے لیے استعمال کیا جاتا ہے اور عملی طور پر کا ریکارڈ رکھتا ہے۔ 1 کلاؤڈ میں انٹرپرائز سسٹمز اور ڈیولپمنٹ کے لیے گو ٹو لینگوئج۔
اس کا مقبول نعرہ ہے "ایک بار کمپائل کریں، کہیں بھی چلائیں" اور یہ اس کے کی بدولت ہے۔ ورچوئل مشین جو ڈیولپرز کو چلانے کے قابل بناتی ہے Java کسی بھی آپریٹنگ سسٹم پر جاوا ورچوئل مشین انسٹال ہے۔
3۔ ازگر
Python ایک تشریح شدہ، عام مقصد کی، اعلیٰ سطح کی، اوپن سورس پروگرامنگ زبان ہے جو سافٹ ویئر ڈویلپمنٹ سے لے کر بائیو میڈیکل ریسرچ تک کے شعبوں میں حل تیار کرنے کے لیے استعمال ہوتی ہے۔اس کی کچھ بہترین خصوصیات میں ماڈیولز کے لیے وسیع تعاون، ویب سروسز کے ساتھ آسان انضمام، اور ڈیسک ٹاپس کے لیے GUI پر مبنی ایپلی کیشن شامل ہیں۔
Python کو متعدد گیمز تیار کرنے کے لیے استعمال کیا جاتا ہے جیسے تہذیب IV، Toontown، وغیرہ، تخلیقات کے لیے سافٹ ویئر جیسے بلینڈر، Autodesk، Inkscape، وغیرہ، اور سائنسی تحقیقی کام خاص طور پر گہری سیکھنے کی ایپلی کیشنز میں , شماریاتی تجزیہ، اور روبوٹکس، چند ایک کے نام۔
4۔ پی ایچ پی
PHP کا مطلب PHP ہائپر ٹیکسٹ پری پروسیسر ہے اور یہ ایک عمومی مقصد، اعلیٰ سطحی، سرور سائیڈ اسکرپٹنگ پروگرامنگ زبان ہے ویب سازی. اس میں ویب سروسز کے لیے بلٹ ان صلاحیتیں، HTML میں سرور سائیڈ کوڈ کی بے عیب سرایت، اور ڈھیلے طریقے سے ٹائپ شدہ نحو شامل ہیں۔
PHP کو پی ایچ پی ڈویلپرز اور اس کی سیکیورٹی کے درمیان کوڈ کے معیار میں تنوع سمیت چند چیزوں کے لیے تضحیک کا نشانہ بنایا گیا ہے۔تاہم، اچھی بات یہ ہے کہ پی ایچ پی کے ڈویلپرز بہت سارے فریم ورک پیش کرتے ہیں (جن میں سے زیادہ تر مفت اور اوپن سورس ہیں) جو صارفین کو مشکل مسائل کو سنبھالنے میں مدد کرتے ہیں جو کہ دوسری صورت میں انہیں ترقیاتی لین کا سامنا کرنا پڑتا اور ساتھ ہی ساتھ ترقی کے عمل کو تیز کرنا پڑتا۔ سمارٹ بوٹسٹریپنگ کے ذریعے۔
5۔ C++
C++ ایک اعلیٰ سطحی عام مقصد کی پروگرامنگ زبان ہے جو C پروگرامنگ زبان کی توسیع کے طور پر بنائی گئی تھی۔ صحیح طریقے سے ڈب کیا گیا "C کے ساتھ "، C++ کی خصوصیات کو یکجا کرتا ہے۔ C جیسے کہ نئی خصوصیات کے ساتھ نچلی سطح کی میموری کی ہیرا پھیری جیسے کہ وراثت صارفین کو طاقتور پروگرامنگ کی صلاحیت اور لچک فراہم کرنے کے لیے۔ یہ ویڈیو گیمز، ویب براؤزرز، اور بہت سارے آپریٹنگ سسٹمز کی بنیادی زبان ہے۔
C++ کی کچھ بہترین خصوصیات میں صارفین کو دیگر اعلیٰ سطحی پروگرامنگ زبانوں کے مقابلے سسٹم ہارڈویئر پر زیادہ کنٹرول دینا شامل ہے۔اور جب کہ جاوا "ایک بار کمپائل کریں اور کہیں بھی چلائیں"، C++ ہے "ایک بار لکھیں اور کہیں بھی کمپائل کریں" جس کا مطلب ہے کہ آپ اپنا کوڈ لکھ سکتے ہیں اور اسے مختلف سسٹمز کے لیے آسانی سے مرتب کر سکتے ہیں کیونکہ اس کی کراس پلیٹ فارم مطابقت سورس کوڈ کی سطح پر حاصل کی جاتی ہے، مرتب کردہ بائنری کوڈ کی سطح کے بجائے۔
6۔ C
C (تلفظ C شارپ) ایک عام مقصدی، کثیر تمثیل پروگرامنگ زبان ہے جو صارفین کو عام، لغوی دائرہ کار، اعلانیہ، لازمی، آبجیکٹ اورینٹڈ اور جزو پر مبنی پروگرامنگ کے مضامین کے ساتھ کام کرنے کے قابل بناتی ہے۔ جاوا کی طرح، یہ مضبوطی سے ٹائپ کیا جاتا ہے، ڈیٹا بیس کے ساتھ اچھی طرح کام کرتا ہے، اور ویب سروسز کے لیے معاونت کی خصوصیات رکھتا ہے۔
C کے بارے میں اکثر سوچا جاتا ہے کہ مائیکروسافٹ کا ورژن Java مزید ڈویلپمنٹ ٹولز کے ساتھ اور اس کے بعد سے NET فریم ورک میں سب سے طاقتور پروگرامنگ لینگوئج بن گئی ہے۔ چھوٹی سے چھوٹی تبدیلیاں کرنے کے بعد آپ کو اپنا C کوڈ مرتب کرنا ہوگا لیکن ویژول اسٹوڈیو IDE کی حیرت انگیزی اس خرابی کو پورا کرتی ہے۔
7۔ ٹائپ اسکرپٹ
TypeScript ایک اوپن سورس پروگرامنگ لینگویج ہے جسے Microsoft کے ایک سخت نحوی سپر سیٹ کے طور پر بنایا اور برقرار رکھا ہے۔ JavaScript بڑی ایپلی کیشنز تیار کرنے کے لیے۔ اس میں جاوا اسکرپٹ میں اختیاری جامد ٹائپنگ اور ٹرانس کمپائلز شامل ہیں – مطلب یہ ہے کہ اسے جے ایس پروجیکٹس میں استعمال کیا جا سکتا ہے جیسا کہ نحو کو تبدیل کرنے، وسائل کو درآمد کرنے وغیرہ کی ضرورت کے بغیر ہے۔
TypeScript کو ترقی کے لیے ایک وسیع ماحول کے ساتھ ایک بڑی کمیونٹی کی حمایت حاصل ہے، ایک کمپائلر TypeScript میں نافذ کیا گیا ہے۔جو کسی بھی JS میزبان میں استعمال کیا جا سکتا ہے، اور C کی طرح ترقی کا تجربہ۔ پی ایس اس کا سورس کوڈ GitHub پر ہوسٹ کیا گیا ہے۔
جبکہ اوپر دی گئی تمام پروگرامنگ زبانیں آبجیکٹ، اری، بلٹ ان اقسام، فنکشنز، سٹرنگز اور آپریٹرز جیسی خصوصیات کا اشتراک کرتی ہیں، وہ منفرد طریقوں سے لاگو ہوتی ہیں اور ان میں ایسی خصوصیات ہوتی ہیں جو ان کے لیے منفرد ہوتی ہیں۔ .
کمپیوٹنگ زبانوں کی انوکھی خصوصیات ان وجوہات میں حصہ ڈالتی ہیں کہ آپ جس پروجیکٹ کی قسم پر کام کر رہے ہیں اس پر منحصر ہے کہ آپ کو ایک پر ایک کا انتخاب کرنا چاہیے - لیکن اگر آپ کسی پروجیکٹ کا انتخاب نہیں کرتے ہیں تو آپ کو کیسے پتہ چلے گا اور کچھ بنانا شروع کر دیں؟