تعريف اللغة بشكل عام هو ” نسق من الإشارات والرموز، يشكل أداة من أدوات المعرفة ” وهنا تتكون أى لغة من عنصرين مهمين
1- الإشارات والرموز : وهى الرموز المستخدمة للتعبير عن الاشياء او الكيانات التى يتحدث عنها الناطق باللغة فى حال اللغات الحية مثل العربية والإنجليزية مثالا تكون هذه الرموز على هيئة حروف او أرقام
2- النسق : هو مجموعة القواعد المتفق عليها من قبل المتحدثين باللغة لترتيب الإشارات والرموز وفى حالة اللغات الحية تكون ترتيب الحروف لتشكيل الكلمات والقواعد النحوية لترتيب الكلمات وتشكيل الجمل
والحالة الأمثل للتواصل اللغوى بين البشر ان يكون الاشخاص الراغبة فى التواصل يتحدثون نفس اللغة فى حالة اختلاف اللغات يجب الوصول الى لغة وسيطة يفهمها الشخصين ويسهل على الإنسان تعلم اللغة المختلفة عن لغته الاصلية اذا كانت من نفس الجذور اللغوية مثل اللغة الانجليزية واللغة الفرنسية فاللغتين من جذور لاتينية ومثل العربية والفارسية فاللغتين من جذور سامية
ولغات البرمجة لا تختلف كثيرا فى قواعد بناء اللغات فلها إشارات ورموز ونسق (كود) غير انها وسيلة التواصل بين الإنسان والكمبيوتر .
وتطورت لغات البرمجة منذ اختراع الكمبيوتر حتى الآن بشكل سريع من عدة محاور من ناحية عدد لغات البرمجة المعروفة وتطور اداء لغات البرمجة او حتى التخصصات التى تغطيها لغات البرمجة
تاريخيا :- لغات البرمجة من حيث التطور تنقسم الى خمسة أجيال
الجيل الأول :
هي لغة برمجة لمستوى الآلة. في البداية، لم يكن يستخدم المترجم لترجمة (compile) أو تجميع لغات الجيل الأول. كان يتم إدخال التعليمات من خلال مفاتيح الوحة الأمامية لنظام الحاسوب وهذه اللغة تكون فعليا على شكل الصفر والواحد ( 0 – 1).
الفائدة الرئيسية من البرمجة في الجيل الأول للغة البرمجة هو سرعة وكفائة الكود المكتوب حيث يتم يتم تنفيذها مباشرة من وحدة المعالجة المركزية. مع ذلك، تعتبر لغة الآلة أكثر صعوبة من لغات البرمجة الأعلى، وتزداد الصعوبة في التعديل عند حدوث خطأ.
الجيل الثاني :وهي لغة تختصر بعض العبارات والرموز المستخدمة ففيها يتم استبدال الرموز الرقمية في لغة الآلة بمجموعة من الكلمات الرمزية ” المختصرة ” باستخدام اللغة الإنجليزية, واعتبرت هذه اللغة قفزة عملاقة في عالم لغات البرمجة .
- يمكن قراءة وكتابة الكود من قبل المبرمج. ولكي تعمل على الحاسوب يجب أن تحول إلى لغة تفهمها الآلة، وهذه العملية تسمى تجميع.
- اللغة محددة الاستخدام لبيئة وعائلة معينة من المعالجات.
الجيل الثالث : وهى ما سمي باللغات الإجرائية وهى مستوى اعلى من لغات التجميع وكانت المشاكل الموجودة فى لغات التجميع تعتمد اعتمادا كبيرا على نوع المعالج الذى يتعامل معه وكان يجب على المبرمج التفكير والتعامل مع كل تفصيله دقيقة من البرنامج
اعتماداً على هذه الفكرة تم التوجه نحو تطوير لغات برمجة تمكّن المبرمج من بناء برنامج معتمداً على النظرة الكلية (high-level) ومن ثم تحويلها لمكونات أدنى (low-level). ونتج عن ذلك جيل ثالث من لغات البرمجة عرفت باسم لغات البرمجة عالية المستوى (high-level languages) واعتمدت هذه اللغات على لغة الإنسان الطبيعية-اللغة الإنجليزية- و رموز رياضية ومنطقية معروفة .
ثم ظهرت بعد ذلك لغات البرمجة الشيئية (object oriented ) وكانت هى الاخرى طفرة فى عالم البرمجيات حيث أتاحت للمبرمج التخلى على التفاصيل الدقيقة والتركيز فى احتياجات المستخدم من البرنامج
الجيل الرابع :- هى عبارة عن النتيجة الطبيعية لتطور لغات البرمجة فالجيل الثالث من لغات البرمجة قدم معظم ما يمكن تقديمه فى تطور اللغات حينها ماعدا تخصص اللغات فى مجالات عمل معينة فظهرت لغات الجيل الرابع لتبعد كل البعد عن لغة الآلة وتتجه الى اللغات الطبيعية مباشرة مثل (قواعد بيانات – مولدات التقارير – تحليل البيانات – رسم الواجهات – لغات التحسين الرياضي ) ومن مميزات هذا النوع من اللغات انه يمكن تكوين برامج كاملة بدون التطرق الى كتابة كود فقط نقوم بعملية التحليل ونبدا فى انشاء البرامج عن طريق واجهة رسومية
الجيل الخامس :-
وهي لغات صممت لكي يقوم الحاسب بتنفيذ برامج بدون المبرمج ودون الحاجة لمعرفة كيف يتم كتابة الكود بالتفصيل، تستخدم هذه بشكل رئيسي في برامج الذكاء الصناعي Artificial Intelligence
وتتميز باهتمامها بالواجهة البينية Interface بين المستخدم والكمبيوتر بحيث يمكن التعامل معها بالصوت والصورة واللغة البشرية ، ويمكن اعتبار الفيجوال بيسك مثال بسيط عليها