أنواع لغات البرمجة Programming Languages
لغة البرمجة :Programming Language هي عبارة عن لغة خاصّة يتم استخدامها من قِبَل المُبرمجين لكتابة البرمجيّات، أو النصوص (بالإنجليزيّة: Scripts)، أو مجموعة أخرى من الأوامر، ليتم تنفيذها على جهاز الحاسوب.
أنواع لغات البرمجة حسب المستوى
- لغات برمجة منخفضة المستوى Low-level languages
- لغات برمجة عالية المستوى High-level languages
اولاً : لغات البرمجة منخفضة المستوى
- لغة الآلة Machine language وهي اللغة التي يفهمها جهاز الحاسوب بشكل مباشر، وتتمثَّل بالأرقام.
- لغة التجميع : Assembly language إذ إنَّ هذه اللغات تتميَّز بكونها تتضمَّن فقط الأوامر التي يفهمها جهاز الحاسوب، وبالتالي هي الأكثر بُعداً عن اللغة التي يفهمها الإنسان، ولكن في نفس الوقت تتيح للمُبرمج التحكُّم الكامل في برنامجه.
ثانياً : لغات برمجة عالية المستوى High-level languages
هي الأبعد عن لغة الآلة، والأقرب لفهم الإنسان( لغة الانسان )، ولكنّها أيضاً لا تتيح نفس مقدار التحكُّم الذي تتيحه اللغات منخفضة المستوى للمبرمج، وذلك من حيث طريقة تنظيم الحاسوب للذاكرة والبيانات.
الميّزات المهمّة في لغات البرمجة عالية المستوى:
- تمكين المبرمج من استخدام المتغيِّرات Variables، والكائنات: Objects ، بالإضافة إلى الروتينات Routines والتكرار Loops فيمكن عن طريق اللغات البرمجيّة عالية المستوى في بعض الأحيان، تنفيذ كمّ كبير من الأوامر بكتابة سطر واحد فقط.
ومن الأمثلة على مثل هذا النوع من لغات البرمجة هي لغتي بايثون Python و روبي Ruby
أنواع لغات البرمجة حسب طريقة تنفيذها :
يمكن تقسيم لغات البرمجة من حيث طريقة تنفيذها في جهاز الحاسوب إلى نوعين:
النوع الأوّل : هي لغات البرمجة المُترجمة أو المُحوَّل Compiled
يتم فيها استخدام برنامج المُترجِم بالإنجليزيّة : Compiler ليتم تحويلها إلى لغة آلة مُخصّصة لنظام التشغيل الذي تمّت عليه عملية الترجمة ، ويكون على هيئة برنامج يمكن تنفيذه من خلال استدعاء اسمه، فلو تمَّت العمليّة في نظام تشغيل لينكس: Linux على سبيل المثال، فلن يتمكَّن المستخدم من تنفيذ ذات البرنامج على نظام تشغيل ويندوز Windows ، كما أنّه في عمليّة التحويل، يتم فحص البرنامج والكشف عن وجود أيّة أخطاء برمجيّة - وليس المنطقيّة- فيه.
من الأمثلة على هذا النوع من لغات البرمجة هي لغة السي ( ( C
النوع الثاني: فهي لغات البرمجة المُفسّرة Interpreted:
في اللغات البرمجيّة المُفسَّرة، يتم استخدام برنامج المُفسِّر: Interpreter لتنفيذ البرنامج بشكل مباشر دون الحاجة لترجمته، إذ يتم تنفيذ النصوص (أو ما يُسمّى بالسكريبت) بواسطة البرنامج المُفسِّر ذاته، لذا يجب تثبيت البرنامج المُفسِّر على أي جهاز يُراد تشغيل البرنامج المكتوب عليه، ممّا يجعل هذا النوع من البرامج قابلاً للتنفيذ على أي نظام تشغيل ما دام البرنامج المُفسِّر مُثبّتاً عليه.
ميّزات لغات البرمجة المُفسَّرة:
قدرة المبرمج على تعديل البرنامج بشكل مباشر دون الحاجة لإعادة ترجمته (كما في اللغات البرمجيّة المُترجَمة)، ولكن عمليّة الترجمة الفوريّة التي يقوم بها المُفسِّر باستمرار أثناء تشغيل البرنامج ستجعل من عمليّة التنفيذ بطيئة مقارنةً مع البرامج المُحوّلة.
من الأمثلة على هذا النوع من لغات البرمجة هي لغة بايثون.
أنواع لغات البرمجة حسب الاستخدام
يمكن تصنيف لغات البرمجة إلى عدّة أنواع حسب الغرض من استخدامها، حيث توجد لغات برمجة مُخصّصة لتطوير وإنشاء المواقع الإلكترونيّة، ومن الأمثلة عليها لغة جافا سكريبت JavaScript ولغة PHP ، ولغة بايثون، كما توجد لغات أخرى يمكن استخدامها في تطوير تطبيقات الهواتف المحمولة كتلك التي تعمل بأنظمة تشغيل الآندرويد Androidو IOS
من الأمثلة على هذه اللغات لغة جافا Java ولغة سويفت Swift
من لغات البرمجة أيضاً ما يُستخدَم في تطوير برمجيّات الحاسوب المكتبي، ومن لغات البرمجة المستخدمة في ذلك، لغة جافا ولغة سي شارب C# كما توجد لغات برمجيّة يمكن استخدامها لبرمجة وتطوير ألعاب الفيديو، ويمكن أيضاً استخدام اللغتين السابق ذكرهما أيضاً في ذلك، بالإضافة إلى لغات أخرى كلغة هاكسية Haxe وغيرها.
توجد لغات برمجة أيضاً يُمكن تخصيصها لنوع معيَّن من المهام، فلغة آر R على سبيل المثال هي لغة مُتخصّصة في التعامل مع البيانات، كالتنقيب عنها، وإجراء الحسابات عليها، بالإضافة إلى تحليلها، كما يمكن استخدام لغة بايثون لنفس الغرض.