Monday, October 1, 2018

نبذة حول لغة البرمجة ++C 2018

بسم الله الرحمن الرحيم
نبذة حول لغة البرمجة ++C
لغة البرمجة ++C : 
بدأ  Bjarne Stroustrup العمل على' C with classes ' في العام 1979, وذلك بعد أن جائته فكرة عمل لغة برمجة جديدة بعد الخبرة التي إكتسبها في البرمجة لرسالة الدوكتوراة. وقد كان معجبا بلغة البرمجة بلغة البرمجة سمولا لأنها تحتوي على الكثير من المزايا الماناسبة والمساعدة لبناء مشاريع برمجية عملاقة ولكن ما يعيب هذه اللغة هو بطئها مما يجعلها  غير عملية على أرض الواقع.
في الجهة الأخرى كانت لغة البرمجة BCPL سريعة جدا ولاكن يعيبها أنها منخفضة المستوى بشكل لا يجعلها مناسبة لتطوير المشاريع العملاقة.
بناء على ذلك قرر ستروسترب أن يطور لغة C بإضافة مزايا سيمولا . و قد إختار لغة C  لأنها سريعة , متعددة الأغراض , متنقلة , وذات شعبية واسعة . ولم تكن سيمولا وحدها من أثرت على ++C بل هناك المزيد من اللغات مثل Algol 68 و Clu . فمن ضمن أولى الإضافات نذكر : الكلاسات , المرسلات الافتراضية ... في العام 1983 تم اعادة تسمية اللغة إلى ++C وتلاها اضافات جديدة للغة نذكر منها : الثوابت , تعليقات السطر الواحد , المراجع ...
وفي العام 1985 تم اصدار كتابThe  C++ Programming Languageفي نسخته  الأولى , ليكون من أهم المصادر للغة لعدم توافر معيار موحد وقتها . في العام 1989 تم اصدار 2.0 ++C مـع مزيد من الاضافات مثل : تعدد التوارث , الكلاسات المجردة ... ومع طور لغة ++C تطورت معها مكتبة قياسية وقد كانت اولى المكتبات اضافة هي مكتبة I/O Stream  , ومن اهم المكتبات الآن هي مكتبة القالب القياسي . ولا تزال ++C تحظى بشعبية منقطعة النظير في أوساط المحافل البرمجية على 
الرغم من قدمها ...
فلسفة تصميم ++C :
 - ان تكون لغة متعددة الاغراض , ثابتة في الكتابة , ذات كفاءة ومتنقلة مثل C
 - أن تكون ذات نماذج متعددة : اجرائية , كائنية , تجريد البايانات ...
 - أن تكون ذات توافق مع لغة C 
 - تجنب الخصائص التي تعتمد على منصة معينة ( نظام تشغيل معين : ويندوز ...)
 - مصممة للبرمجة بدون الحاجة بيئة برمجة معقدة 
 - اتاحة الخيارات للمبرمج , حتى لو كانت هناك احتمالية أن يخطئ المبرمج 
  في الإختيار 
بعض اللغات التي أثرت على ++C :
 - C
 - Algol68
 - Simula
 - Clu
 - ML
 - Ada 83

أهم اللغات التي تأثرت بي ++C :
 - Perl
 - Java
 - Falcon
 - Php
 - #C
 - Ada95
 - Lua
 - D
 - Aikido

خصائص اللغة :
 - لغة برمجة متعددة النماذج 
 - استايل الكتابة ثابت 
 - لغة مترجمة 
 - متوافقة مع لغة C بنسبة كبيرة
أهم التطبيقات : 
++C لغة متعددة الاغراض , ذات شعبية واسعة , ومن الخيارات المفضلة في 
المشاريع العملاقة . يوجد لها الكثير من المترجمات . وبرمج بواسطتها الكثير
جدا من البرامج مثل : برامج شركة أدوبي من فوتوشوب و أكروبات , برنامج 
التصميم الثلاثي الأبعاد العملاق (مايا) , برنامج الأوتوكاد , برنامج متصفح 
كروميوم (نسخة متصفح قوقل كروم المخصصة لنظام أبنتو ) , متصفح 
الفايروفوكس , نظام الهواتف سيمبيان , الواجهة الرسومية KDE ...الخ.
وقد تم  تطوير العديد و العديد من الألعاب باستخدام هذه اللغة مثل :
- Civilization and the jaws
- World of Warrcraft ...الخ 


No comments:

Post a Comment