تنبيه

الرجاء تحديد نص من المقال أولاً.

محتوى محمي

لتحميل هذا المقال، يرجى تفعيل جرس الإشعارات أو اختيار طريقة اشتراك أخرى.

Ahmed Bouchefra

الرئيسية
Ahmed Bouchefra

أحمد بوشفرة

Software Engineer & Tech Author

ابدأ هنا
ابدأ هنا
المكتبة
المكتبة
أكاديمية بايثون
أكاديمية بايثون
تطبيق اختبارات البرمجة
تطبيق اختبارات البرمجة
دورات يوديمي
دورات يوديمي
المسارات
المسارات
الملخصات
الملخصات
الأدوات
الأدوات
اشترك
اشترك
كتب فريق 10xdevblog
كتب فريق 10xdevblog
الكاتب: أحمد بوشفرة

ما الفرق بين لغات C، وC++، وC#؟ وهل يجب أن تتعلمها؟

اضغط على زر PDF لتحميل المقال كملف للقراءة لاحقاً

ملاحظة: هذا المقال بقلم أحمد بوشفرة. الآراء الواردة تعبر عن الكاتب.

أحمد بوشفرة: مبرمج ومؤلف تقني، أساعد المطورين على بناء تطبيقات ويب حديثة وسريعة.

يمكنك التواصل مع الكاتب لطلب خدمات برمجية عبر:

يمكنك أيضاً نشر مقالك هنا والترويج لخدماتك أمام جمهور من المبرمجين. تواصل معنا

لخص هذا المقال باستخدام ChatGPT

انسخ الأمر أدناه والصقه في ChatGPT للحصول على ملخص سريع للمقال:

لخص لي هذا المقال في نقاط رئيسية: https://www.ahmedbouchefra.com/difference-between-c تم النسخ!
فتح ChatGPT

بالتأكيد قد سمعت من قبل عن لغة C، ولغة C#، ولغة C++، ولكن هل تعتقد أنها جميعًا متشابهة لتشابهها في الاسم؟ هذا ما سنتعرف عليه في هذا المقال.

لغة C: الأساس والقوة

لنبدأ بأول لغة برمجة تم إنشاؤها، وهي لغة C. صُنعت لغة C منذ أكثر من 50 عامًا، وتطورت منها لغات كثيرة جدًا مثل Java، وJavaScript، وPython، وPHP، وغيرها الكثير.

ومن أبرز المشاريع التي تم إنشاؤها بها هو الروبوت المسمى “Curiosity”، الذي صنعته وكالة ناسا ليصعد إلى المريخ ويلتقط بعض الصور ويرسلها إلى الوكالة عبر الأقمار الصناعية. تمت برمجة هذا الروبوت بأكثر من 2.5 مليون سطر من كود C.

كان الخيار الأنسب لهم هو لغة C لأن هذا الروبوت لا يمتلك مساحة تخزين كبيرة ولا حتى معالجًا قويًا، فكانوا بحاجة إلى لغة ذات مساحة تخزين منخفضة وسريعة جدًا. وبالمناسبة أيضًا، أنفقت ناسا على هذا المشروع أكثر من 2.5 مليار دولار ليتمكن الروبوت من الصعود إلى المريخ، والتصوير، والإرسال، والاستكشاف، والسير في الصحراء بمفرده، والقيام بكل هذه المهام دون أي مساعدة من البشر. إنه روبوت مذهل حقًا، فهو يهبط على السطح، ويسير في الصحراء، ويصور، ويرسل البيانات، ويقوم بمهام كثيرة جدًا.

وهذا هو المثال البرمجي إذا أردت طباعة اسمك بلغة C. كل ما عليك هو استبدال كلمة “أحمد” بالنص الذي تريد طباعته.

#include <stdio.h>

int main() {
   printf("أحمد");
   return 0;
}

لكن مشكلة لغة C كانت عويصة حقًا، وهي أنها تفتقر إلى البرمجة كائنية التوجه (Object-Oriented Programming).

لغة C++: التطور مع البرمجة الكائنية

حسنًا، نحن نريد لغة تكون سريعة وممتازة أيضًا، ولكن مع إضافة البرمجة كائنية التوجه. وهنا ظهرت لغة C++، وهي من أمتع اللغات التي يمكن تعلمها.

لماذا سُميت C++؟

  • كلمة C مأخوذة من لغة C الأم.
  • علامة ++ في البرمجة تعني “إضافة واحد”.
  • لذلك، فإن C++ تعني أنها لغة C مضافًا إليها الـ Classes، والتي هي المكون الأساسي في البرمجة كائنية التوجه.

تتمتع C++ بنفس سرعة وأداء لغة C تمامًا، دون أي مشكلة، لكنها تتميز بإضافة البرمجة كائنية التوجه. وبالطبع، ساهمت لغة C++ في تطوير العديد من البرامج، منها برامج شركة Adobe مثل Photoshop وغيرها الكثير. ولا ننسى أن لغة C++ ساعدت في تطوير العديد من لغات البرمجة الأخرى، مثل لغة C#.

وهذا هو المثال البرمجي لطباعة اسمك باستخدام C++:

#include <iostream>

int main() {
    std::cout << "أحمد";
    return 0;
}

لغة C#: المنافس الحديث

والآن، ننتقل إلى اللغة الثالثة، وهي لغة C#، وهي لغة مستقلة بذاتها ولا علاقة لها بلغة C. هي في الواقع تشبه لغة Java. طورت شركة مايكروسوفت لغة C# وأنفقت عليها الكثير لتكون منافسة للغة Java. وبدأ الكثير من المطورين في استخدام لغة C# عندما بدأ محرك الألعاب Unity في استخدامها لبرمجة الألعاب.

وهذا هو المثال البرمجي لطباعة اسمك باستخدام C#:

using System;

class Program
{
    static void Main()
    {
        Console.WriteLine("أحمد");
    }
}

أي لغة يجب أن أتعلم؟ C أم C++ أم C#؟

قد تسألني الآن: أي لغة يجب أن أتعلم؟

  • إذا كنت مبتدئًا: حينها، إذا كانت هذه أول لغة برمجة لك ولم تتعلم البرمجة من قبل، فابدأ بأي لغة، فالأمر لن يفرق معك. سواء أردت أن تبدأ بـ C، أو C#، أو C++، الأهم هو أن تبدأ.

  • إذا كان لديك خبرة سابقة: أما إذا كانت هذه هي لغتك الثانية أو الثالثة، أو لديك بالفعل معرفة بالبرمجة، حينها، يجب أن تسأل نفسك: “ما هو الشيء الذي أريد أن أصنعه؟” وبناءً عليه ستستخدم الأداة المناسبة، والأداة هنا هي لغة البرمجة. على سبيل المثال، إذا أردت صنع لعبة، ستبحث عن اللغة المستخدمة في صنعها وتتعلمها.

لكن إذا كانت هذه أول لغة برمجة لك، فابدأ بأي لغة. لا يوجد مجهود يضيع سدى. لا تقلق إذا قضيت ستة أشهر في تعلم لغة ما وتعتقد أن هذا الوقت قد ضاع حتى لو لم تستخدمها. كل شيء تتعلمه يفيدك وستستخدمه لاحقًا. لا تعتقد أبدًا أن تعلم شيء ما هو مضيعة للوقت، أو أنك لن تستخدمه، فلماذا أتعلمه؟ ابدأ بأي لغة برمجة، أيًا كانت اللغة التي ستبدأ بها.

إذًا، هذا هو ببساطة الفرق بين لغات C، وC++، وC#.

هل لديك سؤال أو استفسار؟ اترك تعليقاً بالأسفل:

احصل على المحتوى الجديد فور نشره ⚡

اختر الطريقة الأنسب لك لمتابعتنا والحصول على التحديثات مجاناً.
(اضغط على رابط التفعيل الذي سيصلك لفتح المحتوى)

عرض كل بدائل الاشتراك

احصل على موارد مجانية! 📚

اشترك في القائمة البريدية واحصل على كتب ومصادر تعليمية مجانية

تنبيه هام:

للاشتراك بنجاح، يرجى فتح الصفحة في متصفح خارجي (مثل Chrome أو Safari) وليس متصفح التطبيق المدمج.

📚 المكتبة المجانية

حمّل كتب وأدلة PDF مجانية في البرمجة وتطوير الويب

تصفح المكتبة

شارك المقال

ما الفرق بين لغات C، وC++، وC#؟ وهل يجب أن تتعلمها؟
0:00 / 0:00