لغة برمجة
لغة البرمجة عبارة عن مجموعة من الاوامر , تكتب وفق مجموعة من القواعد تحدد بواسطة اللغة , و من ثم تمر هذه الاوامر بعدة مراحل إلى ان تنفذ على جهاز الحاسوب . تقسم لغات البرمجة بناء على قربها من اللغات الإنسانية إلى لغة عالية المستوى(قريبة من اللغة التي يفهمها البشر) مثل سي Java جافا , C و لغة منخفضة المستوى (كلغة الأسيمبلي Assembly وهي قريبة من لغة الآلة). وتقسم أحيانا بناء على الأغراض لهذه اللغة , هناك لغات صممت لكي تعمل على أجهزة معينة , مثل ان تقوم شركة ما بإنتاج جهاز حاسوب أو معالج مركزي CPU , وتوفر له دليل استعمال يحتوي على الاوامر التي تنفذ عليه , و هناك لغات أخرى تعمل بشكل مستقل عن الالة اي انها تعمل ضمن الة افتراضية Virtual Machine , مثل لغة الجافا Java .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
تعريف البرمجة
من الممكن تعريف البرمجة بأنها عملية كتابة تعليمات وأوامر لجهاز الحاسوب أو أي جهاز آخر، لتوجيهه وإعلامه بكيفية التعامل مع البيانات أو لتنفيذ فعل معين. و تتبع عملية البرمجة قواعد خاصة باللغة التي اختارها المبرمج. و كل لغة لها خصائصها التي تميزها عن الأخرى و تجعلها مناسبة بدرجات متفاوتة لكل نوع من أنواع البرامج و المهمة المطلوبة من هذا البرنامج. كما أن للغات البرمجة أيضاً خصائص مشتركة و حدود مشتركة بحكم أن كل هذه اللغات صممت للتعامل مع الحاسوب.
خصائص لغات البرمجة
لغة البرمجة هي بالأساس طريقة تسهل للمبرمج كتابة تعليمات برنامجه التي تنفذ العمل المطلوب منه. و ولكتابة التعليمات توفر لغة البرمجة المختارة مجموعة من اللبنات الأساسية للاستناد عليها خلال عملية بناء البرنامج و مجموعة من القواعد التي تمكن من التعامل مع معلومات و تنظيم هذه الأسس التي توفرها اللغة لتتكامل و تقوم بعمل مفيد. تتمثل هذه الأسس و القواعد بصفة عامة من:
- المعلومات و تخزينها
- الأوامر و تنظيم سيرها
- التصميم الخاص
المعلومات و تخزينها
ان المعلومات في الأجهزة الرقمية الحالية يتم تخزينها على أرقام على نظام العد الثنائي و بصفة عامة فان المعالجات الحديثة لا تقوم بالتعامل مع البت الواحد بل مع مجموعات من البتات يمكن أن تضم :
- 8 بت = بايت وهي أصغر وحدة تخزين معلومات في الحواسيب الحديثة
- 16, 32, 64, أو 128 بت
و باستعمال 8 بت مثلا, يمكن تشكيل 256 قيمة مختلفة, و يمكن أن تكون هذه القيمة بين 0 و 255 و تمثل وظيفة لغة البرمجة استغلال وحدة أو مجموعة من الوحدات لتخزين معلومات من الحياة الواقعية مثل الأسماء أو القياسات أو أرقام الحسابات البنكية
الأوامر و تنظيم سيرها
يقوم المبرمج باجراء عمليات على وحدات المعلومات مثل تخزينها و قرائتها و مقارنتها و اجراء عمليات حسابية عليها أيضا, وتتبع العمليات القواعد المحددة للغة. و للغة البرمجة دور آخر و هو التحكم في تنظيم اجراء العمليات, حيث تحرص على اجرائها بنفس تنظيم كتابتها من طرف المبرمج و تمكن اللغة أيضاً من اجراء عملية اختيار و تفرع, فلنفترض أن البرنامج الذي يريد المبرمج صنعه يقوم بقسمة عددين يختارهما المستعمل, و اظهار النتيجة على الشاشة, و من المعروف أن القسمة على صفر لا تجوز, و هنا يقوم البرنامج بالاختيار : فاذا كان القاسم مخالفا لصفر فان البرنامج يقوم باجراء العملية و يعطي النتيجة, أما اذا كان القاسم صفراً فان البرنامج لا يقوم باجراء العملية و انما ينبه إلى أن المستعمل حاول القسمة على صفر. و يمكن تنظيم الأوامر بصفة أخرى, حيث يقع تنفيذ أمر أو مجموعة من الأوامر بصفة متكررة (Loop) و يمكن تقسيم الأوامر أيضاً إلى وحدات فرعية تقوم كل وحدة بانجاز عمل محدد, و الهدف هو تقسيم العمل إلى أجزاء يسهل العمل عليها كل على حدة (Loops)
التصميم الخاص
تتمتع كل لغة بتصميم خاص يختلف عن طريقة كل لغة في التعامل مع المعطيات, و عن طبيعة الطرق و التسهيلات التي توفرها اللغة للتعامل مع مشكلة معينة.
يمكن تصنيف لغات البرمجة من حيث طريقة بناء البرامج إلى لغات إجرائية (Basic, Fortran) وهي لغات تسلسلية، أساس بناؤها هو الإجراءات المطلوب تطبيقها على الأشياء والمتحولات. ولغات شيئية (C, Java, Delphi) وهي لاتسلسلية، وتقوم على أساس العناصر والمتحولات المستخدمة ضمن البرنامج المطلوب تحويرها، من خلال تطبيق مجموعة معينة من الإجراءات عليها.
أمثلة
لغات البرمجة للحاسوب متدنية المستوى :
أمثلة لبعض لغات البرمجة للحاسوب عالية المستوى:
- سي
- سي++
- دي
- جافا
- ليسب
- برولوغ
- بايثون
- سي شارب
- فورتران
- روبي
- أدا
- دلفي
- بيسك
- كوبول
- باسكال
- إس كيو إل
- بي إتش بي
- جافا سكربت
- جيم
- لغة لوغو Logo
مصادر أخرى
اقرأ أيضاً