مقدمة عن لغة سي ++ (++C)


++C هي لغة برمجة للاستخدامات العامة، تعتبر لغة السي++ لغة برمجة كائنية. والتي يعتبرها الكثيرون اللغة الافضل لتصميم التطبيقات ذات الواجهة الكبيرة.
ولغة السي بلس بلس ++C من لغات البرمجة العالية المستوي وفي نفس الوقت قريبة من لغة التجميع ذات المستوي المحدود.

 وهي لغة ناشئة من لغة C الذي قام بتطويرها بيارن ستروستروب الي ++C. تشمل السي++ جميع مزايا السي بالاضافة الى مزايا البرمجة الكائنية، تسهّل لغة ++C الاسلوب المهيكل والمنهجي لعملية تصميم البرامج،وتعتمد على الكائنات كبنية اساسية لتشكيل البرامج. ومثلها مثل لغة السي، فان السي++ هي لغة متعدده الاستخدامات الا انها مناسبة لبرامج انظمة التشغيل.


 وتكتب معظم اجزاء انظمة التشغيل وبرامج مساعدة انظمة التشغيل باستخدام السي++ ومنها نظام جنو/لينكس. و يتجنب الكثير من المبرمجين لغة السي++ والسي نظرا لشهرتهما كلغات برمجة معقدة.

 وقد ادى ذلك الى استخدام الكثيرين للغات مثل فيجوال بيسك وديلفي ثم جافا وسي شارب والاخيرتين هما مجرد تسهيل (و ليس تطوير) للغة السي++ وبدا في وقت معين ان لغات مثل الجافا سوف تستولى على سوق البرمجيات التجارية من السي++ مع هجرة عدد كبير من مبرمجى السي++ الى جافا وسي شارب ، الا انه سرعان ما ادرك المبرمجون ان السي++ هي السبيل الوحيد لإنتاج برامج تجارية قوية وسريعة وتؤدى المطلوب منها بكفاءة وباقل عدد من الاخطاء.

 - تدعم السي++ السي بشكل كامل(نظريا او هذا ما تقوله الشركات المنتجة للمترجمات) وعمليا يمكن لمعظم برامج السي ان تترجم بواسطة مترجمات سي++ ولهذا تسمى هذه المترجمات بمترجمات سي/سي++.

- الا ان الامر لا يخلو من بعض المشاكل غير المتوقعة، مثلا قد يحدث ان تسمى متغيرا باسم new وهي كلمة محجوزه في سي++ وليست محجوزة في سي.

 الاضافة الاهم التي اتت بها السي++ عن السي هي بالطبع اليرمجة عن طريق الكائنات. حيث تعتمد السي على البرمجة الاجرائية والتى كانت كافية في وقتها. الا ان بظهور انظمة التشغيل ذات الواجهة الرسومية انتقل معظم المبرمجين الى البرمجة بالكائنات .

 الا ان السي مازالت تستخدم في برمجة الويندوز. و هذا بالاضافة الى بضعة اضافات اخرى مثل : - مكتبات جديدة لاداء مهام الادخال والإخراج تعتمد على الكائنات. - كلمة inline التي تضمن الاجراء الفرعى في الاساسي بدلا من استدعائه. - استخدام الاشارة // لتضمين الملاحظات بطول سطر واحد.
 ربما تعود اسباب صعوبة لغتى السي والسي++ لاسباب تاريخية اكثر منها واقعية وهو ما يردده المبرمجين المعتادين على استخدام السي++ وهذا يعود بنا الى اصل لغة السي وهي لغة السي بى ال CPL والتى اشتهرت بشدة تعقيدها مما تسبب في ابتعاد المبرمجين عنها فتم تطويرها وتبسيطها الى لغة سميت BCPL ولم تلقى الكثير من النجاح ولكنها تطوت الى لغة البى B وعندما ارادو تطويرها سموها سي( وهذا هو اصل تسمية السي) ، وبالطبع ورثت السي++ خصائص لغة سي.

الا انه لا يمكن انكار ان مفاهيم مثل المؤشرات pointers ، والاشارات هي مفاهيم مربكة للمبرمج المبتدىء ، بالضافة الى مفاهيم التوارث Inheritance وتعدد الشكل polymorphism والقوالب Templates التي تربك حتى المبرمجين المحترفين.

وكذلك لا تقدم سي++ الحماية الكافية للمبرمج كى لا يقع في اخطاء التشغيل التي قد تتسبب في توقف الحاسوب عن العمل. كيف؟ في لغة الفيجوال بيسك مثلا عندما تحدد مصفوفة بحجم 20 عنصرا مثلا كلاتى : Dim A(20) As Integer

#include <iostream>      
using namespace std;      
int main()         
 {      
                
    cout<<"Hello"<<endl;     
    return 0; 
  }

Share this

مواضيع ذات صلة

Previous
Next Post »

ليست هناك تعليقات:

إرسال تعليق