من ضمن لغات البرمجة لغات السي الثلاث وهم C, C++,C، فهل يوجد اختلاف بين هذه الثلاث لغات في البرمجة، ام انه شيء واحد، هذا ما تود معرفته خاصة اذا كنت من المبتدئين في مجال البرمجة.
لغة C
تعتبر لغة C سي من أقدم لغات السي، وهي اولهم، تعود نسبتها لمخترعها دينيس ريتشي عام 1972، حيث كان يستخدم نظام Unix لغة التجميع وتعتبر ادنى لغة في لغات البرمجة، ولكن اختراع لغة السي على يد ريتشي، اعتبر ثورة معلوماتية وبرمجية عظيمة على مدى التاريخ.
تتميز لغة السي بأنها ذات سرعة عالية في الأداء مقارنة مع باقي لغات البرمجة، حيث تتوازى مع المكونات المادية للحاسوب في السرعة وتستطيع الوصول لمهام المستويات الدنيا في أنظمة الحاسوب.
خصائص لغة C
تمتاز لغة السي بخصائص عديدة، من أبرزها:
انها تعتبر افصل لغات البرمجة على الاطلاق، خاصة لمن يحاولون التعلم.
اغلب اللغات البرمجية الجديدة هي لغات منبثقة عن لغة c سي.
مستخدمين لغة سي عددهم ليس بالكبير، ما يجعلها من اللغات الأقل تعرضاً للقرصنة.
تعتبر لغة سي معيار رسمي للمعهد الأمريكي الوطني للمعايير.
استخدامات لغة C
وعلى الرغم من قدم لغة c سي نوعاً ما مقارنة بباقي لغات السي، إلا أنها لازالت تستخدم الى يومنا هذا في أنظمة التشغيل المختلفة.
وتستخدم لغة السي في برامج تشغيل الأجهزة.
وتستخدم أيضاً في تطبيقات وبرامج الاتصالات.
فير التطبيقات التي بحاجة للتعامل مع التعليمات البرمجية القديمة.
لغة ++C
تعتبر لغة ++C سي بلس بلس لغة متطورة من السي، وهي امتداد لغة السي ،أما عن مطورها فهو طالب دكتوراه من الدنمارك بيارني ستيرستروب، فسعى لتحسين لغة السي مع إضافة قدرات برمجية عالية بدون أي يمس جودة او كفاءة لغة السي.
خصائص لغة ++C
تتميز لغة ++C سي بلس بلس، بالعديد من الخصائص، وهي:
تعد لغة السي بلس بلس لغة متوسطة المستوى.
تعتمد في أساسها على لغة السي وهي لغة منخفضة المستوى، لكنها اكثر تقدماً.
تعتبر لغة برمجة متعددة الاستعمالات.
تتفاعل مع المستخدم بشكل كبير.
إمكانية تعلمها كلغة أولى او كلغة ثانية بعد لغة السي.
تعتبر معيار رسمي في ANSI.لا تستدم كثيراً في تطبيقات الويب والهواتف.
يرمز ++ في اللغة لعامل الزيادة.
استخدامات لغة ++C
تستخدم في تطبيقات الخوادم والكمبيوتر.
تستخدم في التطبيقات التي تعتمد على الواجهة الرسومية GUI.
لغة #C
تعتبر لغة #C سي شارب من لغات البرمجة عالية المستوى، وهي لغة متطورة من لغة السي والسي بلس بلس، طورت من قبل فريق مايكروسوفت برئاسة هيجليسبرغ عام 2002، وتقوم على اساس اطار العمل NET، واشتق اسم سي شارب من النوتة الموسيقية # والتي تعني الزيادة للنصف أي ضعف سي بلس بلس.
خصائص لغة #C
من ابرز خصائص لغة سي شارب:
اللغة الأكثر تعقيداً في لغات السي.
تعتبر اقل اللغات من حيث وجود أخطاء.
يسهل تعلمها بسرعة.
تجمع بين لغة C سي و ++C سي بلس بلس و Visual Basic.
تستخدم في العديد من أنظمة التشغيل
تدعم البرمجة الكائنية فقط.
استخدامات لغة #C
بناء برامج سطح المكتب.
في تطبيقات الويب.
في التطبيقات الداخلية وتطبيقات المؤسسات.
تستخدم كبيئة تعليمية برجية لاطار العمل على الويب والانترنت.
الفروقات بينهم
تتشابه كلا من لغتي C و ++C مع وجود بعض الاختلافات، لغة C# تتشابه مع لغات أخرى مثل الجافا أكثر من السي.
تعتبر لغة C لغة إجرائية فقط، بينما ++C لغة إجرائية وكائنية، بينما لغة بينما لغة #C هي لغة موجهة للكائنات( لغة تهتم بتطوير البرمجيات من خلال الجمع بين مكونات سابقة ومكونات حديثة).
لغة ++C تدعم وظائف ليست موجودة في لغة C، أما #C تضم أشياء جديدة تفوق سابقاتها.
لغة ++C امتداد ل لغة C، اذا سي بلس بلس تستطيع ان تدعم كود سي بينما العكس غير صحيح، والأمر ينطبق على #C بكونها امتداد ل ++C.
C، البيانات، والمهام عبارة عن كيان حرّة، أي يسهل معالجتها والتلاعب بها بشيفرة خارجيةّ.
++C تضع جميع المهام في كائن واحدٍ، وبالتالي تكون البيانات ومشغلاتها تكون مخفيةً في الشيفرة الخارجية.
تستخدم C وظائف لعمليات الإدخال والإخراج، و تستخدم ++C كائنات لهذه العمليات.
لغة C تدعم المتغيرات المرجعية التي لا تدعمها لغة C.
لا يوجد في لغة C معالجةً للخطأ أو الاستثناء، أما في لغة ++C تفعل ذلك.
معالجة الذاكرة في لغة ++C يجب ان تتم بشكل يدوي، بينما في لغة C# تكون المعالجة بشكل تلقائي في الذاكرة.
لا تستخدم لغة C# أي مؤشرات، بينما تستخدم لغة ++C المؤشرات دائماً.
تستخدم لغة ++C في اغلب الأنظمة الاساسية. إلا أن لغة C# نادرًا ما يمكن استخدامها في نطاق خارج بيئات Windows.
تقوم لغة ++C بعمل تطبيقاتٍ وحدة التحكم، وتطبيقاتٍ مستقلةٍ (قائمة بذاتها).
تقوم لغة C# بإنشاء وحدة تحكم، وتطبيقات Windows، و NET، بالإضافة لتطبيقات الهواتف المحمولة، ولكنها لا تستطيع ان تبني تطبيقاتٍ مستقلة.
يقل الترابط والتشابه بين Cو #C
في حال اردت تعلم لغة #C قد لا تضطر اطلاقاً لتعلم لغة C