پروگرامنگ زبان
جیسا کہ ہم جانتے ہیں کہ کسی شخص سے بات چیت کرنے کے لیے ہمیں ایک مخصوص زبان کی ضرورت ہوتی ہے، اسی طرح کمپیوٹر کے ساتھ رابطے کے لیے پروگرامرز کو بھی ایک زبان کی ضرورت ہوتی ہے جسے Programming Language کہا جاتا ہے۔
پروگرامنگ لینگویج سیکھنے سے پہلے آئیے سمجھ لیں کہ لینگویج کیا ہے؟
زبان کیا ہے؟
زبان مواصلات کا ایک طریقہ ہے جو ایک دوسرے کے ساتھ خیالات، آراء کا اشتراک کرنے کے لئے استعمال کیا جاتا ہے. مثال کے طور پر، اگر ہم کسی کو سکھانا چاہتے ہیں، تو ہمیں ایک ایسی زبان کی ضرورت ہے جو دونوں بات چیت کرنے والوں کے لیے سمجھ میں آئے۔
پروگرامنگ لینگویج کیا ہے؟
پروگرامنگ لینگویج ایک کمپیوٹر لینگویج ہے جسے پروگرامرز (ڈیولپرز) کمپیوٹر کے ساتھ بات چیت کے لیے استعمال کرتے ہیں۔ یہ کسی مخصوص کام کو انجام دینے کے لیے کسی مخصوص زبان (C, C++, Java, Python) میں لکھی گئی ہدایات کا ایک مجموعہ ہے۔
ایک پروگرامنگ زبان بنیادی طور پر ڈیسک ٹاپ ایپلی کیشنز، ویب سائٹس اور موبائل ایپلی کیشنز کو تیار کرنے کے لیے استعمال ہوتی ہے۔
پروگرامنگ زبان کی اقسام
1. کم درجے کی پروگرامنگ زبان
نچلی سطح کی زبان مشین پر منحصر (0s اور 1s) پروگرامنگ زبان ہے۔ پروسیسر نچلے درجے کے پروگراموں کو کسی کمپائلر یا ترجمان کی ضرورت کے بغیر براہ راست چلاتا ہے، اس لیے نچلی سطح کی زبان میں لکھے گئے پروگرام بہت تیزی سے چلائے جا سکتے ہیں۔
نچلی سطح کی زبان کو مزید دو حصوں میں تقسیم کیا گیا ہے۔
مشینی زبان
مشینی زبان کم درجے کی پروگرامنگ زبان کی ایک قسم ہے۔ اسے مشین کوڈ یا آبجیکٹ کوڈ بھی کہا جاتا ہے۔ مشینی زبان کو پڑھنا آسان ہے کیونکہ یہ عام طور پر بائنری یا ہیکساڈیسیمل شکل (بیس 16) کی شکل میں ظاہر ہوتی ہے۔ پروگراموں کو تبدیل کرنے کے لیے مترجم کی ضرورت نہیں ہے کیونکہ کمپیوٹر مشینی زبان کے پروگراموں کو براہ راست سمجھتے ہیں۔
مشین لینگویج کا فائدہ یہ ہے کہ یہ پروگرامر کو ہائی لیول پروگرامنگ لینگویج سے زیادہ تیزی سے پروگراموں کو چلانے میں مدد دیتی ہے۔
ii اسمبلی کی زبان
اسمبلی لینگویج (ASM) بھی ایک قسم کی نچلی سطح کی پروگرامنگ زبان ہے جو مخصوص پروسیسرز کے لیے بنائی گئی ہے۔ یہ علامتی اور انسانی سمجھ میں آنے والی شکل میں ہدایات کے مجموعہ کی نمائندگی کرتا ہے۔ یہ اسمبلی کی زبان کو مشینی زبان میں تبدیل کرنے کے لیے اسمبلر کا استعمال کرتا ہے۔
اسمبلی لینگویج کا فائدہ یہ ہے کہ اسے کسی پروگرام کو چلانے کے لیے کم میموری اور کم عملدرآمد کا وقت درکار ہوتا ہے۔
2. اعلی سطحی پروگرامنگ زبان
ہائی لیول پروگرامنگ لینگویج (HLL) کو صارف دوست سافٹ ویئر پروگرام اور ویب سائٹس تیار کرنے کے لیے ڈیزائن کیا گیا ہے۔ اس پروگرامنگ لینگویج میں پروگرام کا مشینی زبان میں ترجمہ کرنے کے لیے ایک کمپائلر یا مترجم کی ضرورت ہوتی ہے (پروگرام کو عمل میں لانا)۔
اعلیٰ سطح کی زبان کا سب سے بڑا فائدہ یہ ہے کہ اسے پڑھنا، لکھنا اور برقرار رکھنا آسان ہے۔
اعلی درجے کی پروگرامنگ زبان میں Python, Java, JavaScript, PHP, C#, C++, Objective C, Cobol, Perl, Pascal, LISP, FORTRAN, اور Swift پروگرامنگ زبان شامل ہیں۔
ایک اعلیٰ سطحی زبان کو مزید تین حصوں میں تقسیم کیا جاتا ہے۔
پروسیجرل اورینٹڈ پروگرامنگ زبان
پروسیجرل اورینٹڈ پروگرامنگ (POP) زبان سٹرکچرڈ پروگرامنگ سے ماخوذ ہے اور طریقہ کار کال کے تصور پر مبنی ہے۔ یہ ایک پروگرام کو چھوٹے طریقہ کار میں تقسیم کرتا ہے جسے معمولات یا افعال کہتے ہیں۔
پروسیجرل اورینٹڈ پروگرامنگ لینگویج کو سافٹ ویئر پروگرامر ایک ایسا پروگرام بنانے کے لیے استعمال کرتا ہے جسے IDE، Adobe Dreamweaver، یا Microsoft Visual Studio جیسے پروگرامنگ ایڈیٹر کا استعمال کر کے پورا کیا جا سکتا ہے۔
POP زبان کا فائدہ یہ ہے کہ یہ پروگرامرز کو پروگرام کے بہاؤ کو آسانی سے ٹریک کرنے میں مدد کرتا ہے اور پروگرام کے مختلف حصوں میں کوڈ کو دوبارہ استعمال کیا جا سکتا ہے۔
مثال: C، FORTRAN، Basic، Pascal، وغیرہ۔
ii آبجیکٹ اورینٹڈ پروگرامنگ زبان
آبجیکٹ اورینٹڈ پروگرامنگ (OOP) زبان اشیاء پر مبنی ہے۔ اس پروگرامنگ زبان میں پروگراموں کو چھوٹے حصوں میں تقسیم کیا جاتا ہے جسے آبجیکٹ کہتے ہیں۔ اس کا استعمال پروگرام میں حقیقی دنیا کے اداروں جیسے وراثت، پولیمورفزم، تجرید وغیرہ کو لاگو کرنے کے لیے کیا جاتا ہے تاکہ پروگرام کو دوبارہ قابل استعمال، موثر اور استعمال میں آسان بنایا جا سکے۔
آبجیکٹ اورینٹڈ پروگرامنگ کا سب سے بڑا فائدہ یہ ہے کہ OOP پر عملدرآمد، برقرار رکھنے، ترمیم کرنے اور ڈیبگ کرنے میں تیز اور آسان ہے۔
مثال: C++، Java، Python، C#، وغیرہ۔
iii فطری زبان
قدرتی زبان انسانی زبانوں کا ایک حصہ ہے جیسے انگریزی، روسی، جرمن اور جاپانی۔ اسے مشینوں کے ذریعے انسان کی زبان کو سمجھنے، جوڑ توڑ اور تشریح کرنے کے لیے استعمال کیا جاتا ہے۔ اسے ڈویلپرز ترجمہ، خودکار خلاصہ، نام کی ہستی کی شناخت (NER)، رشتہ نکالنے، اور موضوع کی تقسیم جیسے کاموں کو انجام دینے کے لیے استعمال کرتے ہیں۔
قدرتی زبان کا سب سے بڑا فائدہ یہ ہے کہ یہ صارفین کو کسی بھی موضوع میں سوالات پوچھنے اور سیکنڈوں میں براہ راست جواب دینے میں مدد دیتی ہے۔
3. درمیانی سطح کی پروگرامنگ زبان
درمیانی سطح کی پروگرامنگ زبان نچلی سطح کی پروگرامنگ زبان اور اعلیٰ سطح کی پروگرامنگ زبان کے درمیان ہے۔ اسے انٹرمیڈیٹ پروگرامنگ لینگویج اور سیوڈو لینگویج کے نام سے بھی جانا جاتا ہے۔
درمیانی درجے کی پروگرامنگ لینگویج کے فوائد یہ ہیں کہ یہ اعلیٰ سطح کی پروگرامنگ کی خصوصیات کو سپورٹ کرتی ہے، یہ صارف دوست زبان ہے، اور مشینی زبان اور انسانی زبان سے قریبی تعلق رکھتی ہے۔
مثال: C، C++، زبان
سب سے زیادہ استعمال ہونے والی پروگرامنگ زبان
جیسا کہ ہم سب جانتے ہیں، پروگرامنگ زبان ہماری زندگی کو آسان بناتی ہے۔ فی الحال، تمام شعبے (جیسے تعلیم، ہسپتال، بینک، آٹوموبائل وغیرہ) مکمل طور پر پروگرامنگ زبان پر منحصر ہیں۔
صنعتوں کے ذریعہ درجنوں پروگرامنگ زبانیں استعمال کی جاتی ہیں۔ کچھ سب سے زیادہ استعمال ہونے والی پروگرامنگ زبانیں ذیل میں دی گئی ہیں۔on سب سے زیادہ استعمال ہونے والی صارف دوست پروگرامنگ زبانوں میں سے ایک ہے۔ یہ ایک کھلا ذریعہ ہے اور 1990 کی دہائی میں تیار کردہ پروگرامنگ زبان سیکھنے میں آسان ہے۔ یہ زیادہ تر مشین لرننگ، مصنوعی ذہانت، بگ ڈیٹا، GUI پر مبنی ڈیسک ٹاپ ایپلی کیشنز، اور روبوٹکس میں استعمال ہوتا ہے۔
فوائد
o ازگر پڑھنے میں آسان، سمجھنے میں آسان اور لکھنے میں آسان ہے۔
o یہ دیگر پروگرامنگ زبانوں جیسے C، C++، اور Java کے ساتھ مربوط ہے۔
o پائتھون کوڈ کو لائن بہ لائن چلاتا ہے، اس لیے پروگرامر کے لیے کوڈ میں ہونے والی غلطی کو تلاش کرنا آسان ہے۔
o ازگر پلیٹ فارم سے آزاد ہے یعنی آپ ایک بار کوڈ لکھ سکتے ہیں اور اسے کہیں بھی چلا سکتے ہیں۔
نقصانات
o Python موبائل ایپلیکیشنز اور گیمز تیار کرنے کے لیے موزوں نہیں ہے۔
o ازگر مترجم کے ساتھ کام کرتا ہے۔ یہی وجہ ہے کہ یہ دیگر پروگرامنگ زبانوں جیسے C اور C++ سے سست ہے۔
2. جاوا
جاوا ایک سادہ، محفوظ، پلیٹ فارم سے آزاد، قابل اعتماد، فن تعمیر سے غیر جانبدار اعلیٰ سطحی پروگرامنگ زبان ہے جسے سن 1995 میں سن مائیکرو سسٹم نے تیار کیا تھا۔ اب جاوا اوریکل کی ملکیت ہے۔ یہ بنیادی طور پر بینک، ریٹیل، انفارمیشن ٹیکنالوجی، اینڈرائیڈ، بڑا ڈیٹا، ریسرچ کمیونٹی، ویب اور ڈیسک ٹاپ ایپلی کیشنز تیار کرنے کے لیے استعمال ہوتا ہے۔
فوائد
o جاوا دیگر پروگرامنگ زبانوں کے مقابلے میں لکھنا، مرتب کرنا، سیکھنا اور ڈیبگ کرنا آسان ہے۔
o یہ ایک ہی پروگرام کو مختلف پلیٹ فارمز پر چلانے کی صلاحیت فراہم کرتا ہے۔
o یہ ایک انتہائی محفوظ پروگرامنگ زبان ہے کیونکہ جاوا میں واضح پوائنٹرز کا کوئی تصور نہیں ہے۔
o یہ ایک ہی وقت میں متعدد کام انجام دینے کی صلاحیت رکھتا ہے۔
نقصانات
o جاوا دیگر پروگرامنگ زبانوں جیسے C یا C++ سے زیادہ میموری اور سست استعمال کرتا ہے۔
o یہ بیک اپ کی سہولت فراہم نہیں کرتا ہے۔
3. سی
C ایک مقبول، سادہ اور لچکدار عام مقصد کی کمپیوٹر پروگرامنگ زبان ہے۔ ڈینس ایم رچی نے اسے 1972 میں AT&T میں تیار کیا۔ یہ نچلی سطح کی پروگرامنگ زبان کے ساتھ ساتھ اعلیٰ سطح کی پروگرامنگ زبان دونوں کا مجموعہ ہے۔ اس کا استعمال ایپلیکیشنز جیسے ٹیکسٹ ایڈیٹرز، کمپائلرز، نیٹ ورک ڈیوائسز اور بہت کچھ کو ڈیزائن کرنے کے لیے کیا جاتا ہے۔
فوائد
o سی زبان سیکھنا آسان ہے۔
o یہ تیز، موثر، پورٹیبل، توسیع میں آسان، طاقتور اور لچکدار پروگرامنگ زبان ہے۔
o یہ پیچیدہ حسابات اور آپریشنز جیسے MATLAB کو انجام دینے کے لیے استعمال ہوتا ہے۔
o یہ رن ٹائم میں میموری کو مختص کرنے کے لیے ڈائنامک میموری ایلوکیشن فراہم کرتا ہے۔
نقصانات
o سی پروگرامنگ لینگویج میں، غلطیوں کو تلاش کرنا بہت مشکل ہے۔
o C کنسٹرکٹرز، ڈسٹرکٹرز، تجرید، پولیمورفزم، انکیپسولیشن، اور OOPs جیسے نام کی جگہ کے تصورات کی حمایت نہیں کرتا ہے۔
4. C++
C++ ہزاروں پروگرامنگ زبانوں میں سے ایک ہے جسے ہم سافٹ ویئر تیار کرنے کے لیے استعمال کرتے ہیں۔ C++ پروگرامنگ لینگویج 1980 میں Bjarne Stroustrup نے تیار کی تھی۔ یہ C پروگرامنگ لینگویج سے ملتی جلتی ہے لیکن اس میں کچھ اضافی خصوصیات بھی شامل ہیں جیسے کہ استثنیٰ ہینڈلنگ، آبجیکٹ پر مبنی پروگرامنگ، ٹائپ چیکنگ وغیرہ۔
فوائد
o C++ ایک سادہ اور پورٹیبل ساختی پروگرامنگ زبان ہے۔
o یہ OOPs کی خصوصیات کو سپورٹ کرتا ہے جیسے Abstraction، Inheritance، Encapsulation.
o یہ اعلی سطحی تجرید فراہم کرتا ہے اور نچلی سطح کی پروگرامنگ زبان کے لیے مفید، اور عام مقصد کے لیے زیادہ موثر ہے۔
o C++ C زبان کے ساتھ زیادہ مطابقت رکھتا ہے۔
نقصانات
o C++ پروگرامنگ زبان دیگر پروگرامنگ زبانوں جیسے جاوا یا ازگر کے مقابلے میں محفوظ نہیں ہے۔
o C++ کوڑا اٹھانے کی حمایت نہیں کر سکتا۔
o بڑی اور پیچیدہ ویب ایپلیکیشنز کو ڈیبگ کرنا مشکل ہے۔
5. C#
C# (جس کا تلفظ C شارپ ہے) ایک جدید، عام مقصد، اور آبجیکٹ پر مبنی پروگرامنگ زبان ہے جو .NET پلیٹ فارم پر XML پر مبنی ویب سروسز کے ساتھ استعمال ہوتی ہے۔ یہ بنیادی طور پر ویب ایپلیکیشنز میں پیداوری کو بہتر بنانے کے لیے ڈیزائن کیا گیا ہے۔ ان صارفین کے لیے سیکھنا آسان ہے جن کے پاس عام پروگرامنگ زبانوں جیسے C، C++، یا Java کا کافی علم ہے۔
فوائد
o C# ایک جدید، ٹائپ سیف، آسان، تیز، اور اوپن سورس پروگرامنگ زبان ہے جو آسانی سے ونڈوز کے ساتھ مربوط ہے۔
o C# (C شارپ) کی دیکھ بھال C++ پروگرامنگ زبان سے کم ہے۔
o C# ایک خالص آبجیکٹ پر مبنی پروگرامنگ زبان ہے۔
o C# میں ایک مضبوط میموری بیک اپ کی سہولت شامل ہے۔ اس لیے یہ میموری کے اخراج کے مسئلے سے بچاتا ہے۔
نقصانات
o C# کم لچکدار ہے کیونکہ یہ مکمل طور پر Microsoft .Net فریم ورک پر مبنی ہے۔
o C# میں، ملٹی تھریڈ ایپلی کیشنز کو لکھنا، سمجھنا، ڈیبگ کرنا اور برقرار رکھنا مشکل ہے۔
6. جاوا اسکرپٹ
JavaScript ایک قسم کی اسکرپٹنگ زبان ہے جو کلائنٹ سائڈ کے ساتھ ساتھ سرور سائڈ دونوں پر استعمال ہوتی ہے۔ یہ 1990 کی دہائی میں نیٹ اسکیپ نیویگیٹر ویب براؤزر کے لیے تیار کیا گیا تھا۔ یہ پروگرامرز کو ویب صفحات کو زندہ کرنے کے لیے پیچیدہ خصوصیات کو نافذ کرنے کی اجازت دیتا ہے۔ یہ پروگرامرز کو متحرک ویب سائٹس، سرورز، موبائل ایپلیکیشنز، اینی میٹڈ گرافکس، گیمز اور بہت کچھ بنانے میں مدد کرتا ہے۔
فائدہ
o JavaScript ویب صفحہ پر رویے اور تعاملات کو شامل کرنے میں ہماری مدد کرتا ہے۔
o اسے سرور سے لوڈنگ کے وقت کو کم کرنے کے لیے استعمال کیا جا سکتا ہے۔
o اس میں پرکشش، متحرک ویب سائٹس، اور بھرپور انٹرفیس بنانے کی صلاحیت ہے۔
o JavaScript ایک سادہ، ورسٹائل، اور ہلکی وزنی پروگرامنگ زبان ہے۔
o JavaScript اور اس کا نحو سمجھنا آسان ہے۔
نقصان
o JavaScript مکمل طور پر براؤزر پر مبنی ہے۔
o یہ متعدد وراثت کی حمایت نہیں کرتا ہے۔
o یہ دیگر پروگرامنگ زبانوں کے مقابلے میں کم محفوظ ہے۔
7. آر
فی الحال، R پروگرامنگ ان مقبول پروگرامنگ زبانوں میں سے ایک ہے جو ڈیٹا اینالیٹکس، سائنسی تحقیق، مشین لرننگ الگورتھم، اور شماریاتی کمپیوٹنگ میں استعمال ہوتی ہے۔ اسے 1993 میں Ross Ihaka اور Robert Gentleman نے تیار کیا تھا۔ یہ مارکیٹرز اور ڈیٹا سائنسدانوں کو آسانی سے ڈیٹا کا تجزیہ کرنے، پیش کرنے اور تصور کرنے میں مدد کرتا ہے۔
فوائد
o R پروگرامنگ ڈیٹا رینگلنگ کے لیے وسیع تعاون فراہم کرتا ہے۔
o یہ استعمال میں آسان انٹرفیس فراہم کرتا ہے۔
o یہ ونڈوز، لینکس اور میک جیسے کسی بھی پلیٹ فارم پر چلتا ہے۔
o یہ ایک اوپن سورس اور پلیٹ فارم سے آزاد پروگرامنگ زبان ہے۔
نقصانات
o R پروگرامنگ 3D گرافکس کو سپورٹ نہیں کرتا ہے۔
o یہ دیگر پروگرامنگ زبانوں سے سست ہے۔
8. پی ایچ پی
پی ایچ پی کا مطلب ہے ہائپر ٹیکسٹ پری پروسیسر۔ یہ ایک اوپن سورس، طاقتور سرور سائیڈ اسکرپٹنگ زبان ہے جو بنیادی طور پر جامد اور متحرک ویب سائٹس بنانے کے لیے استعمال ہوتی ہے۔ اسے Rasmus Laird نے 1994 میں تیار کیا ہے۔ php کے اندر، ہم HTML، CSS، اور JavaScript کوڈ بھی لکھ سکتے ہیں۔ php فائل کو محفوظ کرنے کے لیے فائل ایکسٹینشن .php استعمال کی جاتی ہے۔
فوائد
o PHP ایک زیادہ محفوظ اور استعمال میں آسان پروگرامنگ زبان ہے۔
o یہ طاقتور آن لائن لائبریریوں کو سپورٹ کرتا ہے۔
o اسے ونڈوز، لینکس اور میک جیسے آپریٹنگ سسٹم کی ایک قسم پر چلایا جا سکتا ہے۔
o یہ کلاؤڈ سروسز کے ساتھ بہترین مطابقت فراہم کرتا ہے۔
نقصانات
o PHP بڑی تعداد میں ایپلی کیشنز کو سنبھالنے کے قابل نہیں ہے اور بڑی ایپلی کیشنز کے لیے موزوں نہیں ہے۔
o اسے برقرار رکھنا کافی مشکل ہے۔
9. جاؤ
گو یا گولانگ ایک اوپن سورس پروگرامنگ زبان ہے۔ یہ سادہ، قابل اعتماد اور موثر سافٹ ویئر بنانے کے لیے استعمال ہوتا ہے۔ اسے رابرٹ گریزیمر، روب پائیک اور کین تھامسن نے 2007 میں تیار کیا تھا۔
فوائد
o گو زبان سیکھنے اور استعمال میں آسان ہے۔
o یہ ان بلٹ ٹیسٹنگ ٹولز کے ساتھ آتا ہے۔
o گو ایک تیز پروگرامنگ زبان ہے۔
نقصانات
o گو زبان جنرک کی حمایت نہیں کرتی ہے۔
o یہ غلطی سے نمٹنے کی حمایت نہیں کرتا ہے۔
o یہ فریم ورک کی کمی کی حمایت کرتا ہے۔
10. روبی
روبی ایک اوپن سورس، عام مقصد، اور خالص آبجیکٹ پر مبنی پروگرامنگ لینگویج ہے جو 1993 میں جاری کی گئی تھی۔ یہ فرنٹ اینڈ اور بیک اینڈ ویب ڈویلپمنٹ میں استعمال ہوتی ہے۔ یہ بنیادی طور پر سی جی آئی (کامن گیٹ وے انٹرفیس) اسکرپٹ لکھنے کے لیے ڈیزائن کیا گیا ہے۔
فوائد
o روبی مختلف GUI (گرافیکل یوزر انٹرفیس) ٹولز جیسے GTK اور OpenGL کو سپورٹ کرتا ہے۔
o اسے انٹرنیٹ کے ساتھ ساتھ انٹرانیٹ ایپلیکیشنز دونوں تیار کرنے کے لیے استعمال کیا جاتا ہے۔
o روبی میں لکھا ہوا کوڈ چھوٹا ہے اور اس میں لائنوں کی تعداد کم ہے۔
نقصانات
o روبی دیگر پروگرامنگ زبانوں کے مقابلے میں سست ہے۔
o پروگرامرز کے لیے روبی میں لکھے گئے کوڈ کو ڈیبگ کرنا بہت مشکل ہے۔
0 Comments