حيث أن لغات البرمجة تعمل كوسيط بين المستخدم و لغة الآلة.
سبب طرحي للموضوع هو أن لغات البرمجة غير لغة الآلة كثيرة لذلك أتمسك بلغة الآلة دون أيا من اللغات التي تعمل كالوسيط.
لغة الآلة (Machine Language) ليست كافية لتغطية جميع مجالات البرمجة ولا يمكن استخدامها مباشرة في تطوير البرامج بسبب صعوبة كتابتها وفهمها وصيانتها. ولذلك، تم تطوير لغات البرمجة لتسهيل هذه المهام وجعلها أكثر فعالية.
تعتبر لغات البرمجة كوسيط بين البرمجيات ولغة الآلة، حيث يتم تحويل الكود المكتوب بلغة البرمجة إلى لغة الآلة عند تنفيذ البرنامج. ويمكن اختيار اللغة الأنسب حسب نوع التطبيق الذي يجب تطويره والمهارات المتوفرة للمطور.
ومن أمثلة لغات البرمجة التي تستخدم في تطوير البرامج:
بالإضافة إلى الأمثلة السابقة، هناك العديد من لغات البرمجة المستخدمة في تطوير البرامج وتختلف باختلاف نوع البرنامج ومجاله.
وتقسم هذه اللغات إلى لغات عالية المستوى (High-level languages) ولغات منخفضة المستوى (Low-level languages) وفقًا للمستوى الذي تستخدمه لوصف العمليات.
وعندما يكتب المبرمج بلغة عالية المستوى، فإن المترجم (Compiler) أو المفسر (Interpreter) يحول هذا الكود إلى اللغة الآلية، وينتج ملف ذو امتداد (exe) ليتم تشغيله على الحاسوب.
وعندما يكتب المبرمج بلغة منخفضة المستوى، فإنه يستخدم مجموعة من الرموز والأوامر التي يتم ترجمتها مباشرة إلى لغة الآلة، ولا يحتاج إلى مترجم أو مفسر.
وتتميز لغات البرمجة عالية المستوى بسهولة التعلم والاستخدام والترميز، ولكنها أقل كفاءة في بعض الأحيان، وتتطلب ترجمة الكود إلى اللغة الآلية قبل تشغيله. أما لغات البرمجة منخفضة المستوى فهي أكثر كفاءة وتمكن المبرمج من التحكم في التفاصيل الدقيقة لعمليات المعالجة، وتستخدم في برمجة أنظمة التشغيل والأجهزة المتقدمة مثل المعالجات والأنظمة المدمجة.
على سبيل المثال، لغة التجميع (Assembly Language) هي لغة برمجة منخفضة المستوى تتيح للمبرمج التعامل مع الأوامر المباشرة للمعالج والذاكرة، ولكنها تتطلب تعلم ترميز الأوامر وتفاصيل الجهاز المستخدم. بينما تعتبر لغات البرمجة العالية المستوى مثل Java وPython أسهل في التعلم والاستخدام، ولكنها تحتاج إلى معالجة إضافية لترجمة الكود قبل تشغيله.
بشكل عام، تختلف لغات البرمجة في مستوى التجريد والتفاصيل التي تسمح للمبرمجين بالتحكم فيها، وكذلك في مجالات الاستخدام والتطبيقات التي تصلح لها. لذلك، يختار المبرمجون لغة البرمجة المناسبة بناءً على احتياجات المشروع ومستوى الخبرة في البرمجة.
بشكل بسيط ومختصر، يتم تحويل الكود المكتوب بلغة البرمجة إلى لغة الآلة من خلال عملية تسمى "الترجمة" (Compilation) أو "التفسير" (Interpretation).
في عملية الترجمة، يتم تحويل الكود بأكمله إلى لغة الآلة مرة واحدة بواسطة مترجم (Compiler) ويتم حفظ النتيجة في ملف ثنائي الأبعاد (Binary file) يمكن تشغيلها مباشرة من قبل النظام الأساسي.
أما في عملية التفسير، فإن الكود يتم تحويله واحد الأسطر بواسطة مترجم يسمى "المترجم الفوري" (Just-in-time Compiler) ويتم تشغيل الكود في آن واحد.
وتختلف بعض لغات البرمجة في كيفية تحويل الكود إلى لغة الآلة. فمثلا، تستخدم لغات البرمجة مثل C و C++ و Java و Python المترجمات، في حين يستخدم لغات البرمجة مثل JavaScript و PHP و Ruby التفسير.
ذلك الإختيار يعتمد عليك حيث
لاحظ أيضاً أن لبناء تطبيق بسيط جداً بلغة الآلة يحتاج مجهود أكبر مما تتخيل لذلك عند تعلم اللغات منخفضة المستوى يكون استخدامها في حالات خاصة وللإستفادة من التحكم الكامل في الآلة
هل تعلم لغة الآلة لغة الصفر و الواحد يغنيني عن تعلم بقية اللغات؟
لا يغني ولا يسمن يا عزيزي ، لو كنت تريد التعلم لأجل العمل لابد من الإطلاع على لغات البرمجة المتطورة . أما لو كان التعلم بدافع التعلم فلا بأس بذلك ...
ويمكنك الاستعانة بآراء الأصدقاء حول الأمر
وحتى إن لم يكن من أجل العمل يا أماني. حتى وإن كان من أجل تطوير أي مشروع بصفة ذاتية، يجب عليه أن يكون ملمًّا بالمزيد من لغات البرمجة. وذلك لأن الاستخدامات والتطبيقات الفعليّة التي يحتاجها هو دائمًا ما تكون محلّ شكٍّ عند تضاؤل عدد لغات البرمجة التي يلم بها الشخص. إنها مثل نوعيات فرش الفنّان. كلّما كان قادرًا على استخدام المزيد من الفرش، استكاع تمثيل المزيد من أساليب التنفيذ.
التعليقات