إن مجال البرمجة مجال شاسع، و ما يحدد شساعته هذه هو تعدادية اللغات البرمجية التي تحاصره من كل مكان، إذ مئات اللغات البرمجية في العالم التي يمكنك إستخدامها حسب التخصص لتطوير أي نوع من البرمجيات تريد. لكن من بين كل هذه اللغات البرمجية يوجد فئة معينة من اللغات البرمجية التي تحظى بشعبية كبيرة بين المستخدمين و التي من الصعب أن تجد مبرمجا لا يعرفها مثل Python, C, Java, CPP و غيرها ...
لكن، في بعض الأحيان يتم إصدار لغات برمجية متقاربة جدا من حيث الإسم، مما يجعل التفريق بين الأهداف الخاصة بكل لغة على حدة، مما يخلق لبسا و ارتباكا لدى المطورين الجدد. لعل من أشهر هذه الإلتباسات هو فهم الفروقات بين اللغات : C, C++ و C#، فهي متقاربة بشكل كبير من حيث الإسم، لكنها مختلفة من حيث المبادئ و الأهداف فما الفرق بين C و C++ و C# ؟ هذا محور مقالنا المبسط هذا.
ما هي لغة البرمجة C ؟
تعتبر من أوائل اللغات البرمجية القابلة لتطوير برمجيات مختلفة، تم تطويرها و إطلاقها من طرف " دينيس ريتشي " الأب الروحي للبرمجة و نواة اللينكس كذلك. حين ظهرت لغة البرمجة C كانت تهم بشكل كبير تطوير الأنظمة و بعض خصائها و ذلك لكونها لغة جيدة في التعامل مع الآلة و أقطابها بشكل كامل.
لغة البرمجة C هي لغة نسبيا ضعيفة مقارنة باللغات البرمجية الحالية، هي لغة عامية يمكن من خلالها صناعة برمجيات مختلفة خصوصا برمجيات سطح المكتب، يمكنها التعامل مع كل من برمجيات الكونسول، او برمجيات ذات واجهة معينة بتضمين المكتبات اللازمة.
لغة البرمجة C حاليا تعتبر أم اللغات البرمجية، لماذا ؟ لأن من رحمها انبثقت مجموعة أخرى من اللغات البرمجية مثل C++ و C# اللذان يعتبران أساس هذا المقال كذلك، حتى لغات مثل الجافاسكربت قد تطورت من رحم الـ C. لذلك، ينصحك الكثيرون بتعلمها أولا، لأن سيرورة عملها و طريقة كتابة الكود الخاص بها مشابه بشكل كبير للغات المبنية عليها.
لغة البرمجة C هي لغة Static - Procedural ( يمكنك قراءة هذا المقال للتعرف على الفرق بين Procedural و باقي الأنماط ). في الوقت الراهن و الحالي و الذي نسطر فيه أحرف هذا المقال، لغة البرمجة C تستخدم لـ 3 أغراض بالكثير : أولا المساهمة في تطوير الأنظمة خصوصا أنظمة اللينكس، ثانيا التعليم، إذ تستخدم من طرف مجموعة من الجهات لتعلم البرمجة لكونها أسهل و أفضل للمبتدئين، ثم أخيرا صناعة برمجيات قادرة على التواصل المباشر مع العناصر الآلية عبر خصائص الـ C مثل الـ Pointers .
ما هي لغة البرمجة C++ ؟
عندما ظهرت لغة البرمجة C، كانت جيدة في البداية و كفيلة بصناعة البرمجيات التي تحتاجها في ذلك الوقت، لكن بعض المطورين شككو دائما في وجود شيئ ما ناقص في لغة البرمجة الـ C، و لأنها كانت لغة برمجة مفتوحة المصدر و يمكن للجميع التعديل عليها، بادر شخص يُدعى Bjarne Stroustrup بالتعديل عليها، مع الحفاظ على كينونتها الأساسية. ليُطلق بعدها بسنوات لغة البرمجة C++. هي لغة برمجة تشبه كثيراً الـ C من حيث المبادئ الأساسية، فهي لغة ذات استخدام عام و لغة إجرائية بدورها، لكن الجديد هنا هو إضافة ما يسمى بالكلاسات في لغة البرمجة C++ و التي تفوقت فيها على الـ C، بل حتى أنه في بداياتها أطلق عليها إسم لغة " C With Classes " أي لغة الـ C مع الكلاسات قبل ان تأخذ إسم C++ في النهاية
بالرغم من توفيرها لمبادئ الكلاسات، فلغة البرمجة C++ ليست لغة كائنة التوجه (OOP)، بل في الحقيقة هي لغة Semi-Object Oriented، أي أنها لا تعتمد و لا تتخذ كل أساسيات البرمجة كائنية التوجه، بل فقط بعضا المتعلق بالوراثة و صناعة الكلاسات. تختلف أيضا الـ C++ على الـ C من حيث الأكواد و من حيث الأهداف، فالأكواد الخاصة بالـ C او الـ Syntax متقارب لكنه ليس مثله. أما الهدف من لغة البرمجة C++ فكثيرة، إذ تستخدم اليوم في صناعة برامج سطح المكتب، صناعة ألعاب الفيديو، صناعة الأنظمة أيضا، و صناعة تطبيقات الموبايل حتى و الكثير.
تعليقات
إرسال تعليق