مقدمة عن الـ C++

ضع تقييمك من فضللك
[Total: 2 Average: 5]

بسم الله والحمد لله والصلاة والسلام على رسول الله
أهلا بكم أخوانى الكرام فى بداية دورة جديدة فى لغة الـ C++

أولا مقدمة عن ما هى الـ C++
هشرح مقدمه باسلوبى عن اللغة وأرجوا أن تنال اعجابكم

اسلام عبدالله_مقدمة عن الـ C++

الـ C++ هى لغة برمجة كائنية وتضم العديد من ميزات لغات البرمجة عالية المستوى ومنخفضة المستوى،
واحد هيقولى يعنى ايه

بإختصار عشان الموضوع دا هيبقى ليه موضوع كامل نتكلم فيه سوا
فيه حاجه مشهوره فى أى لغات البرمجة اسمها “البرمجة كائنية التوجه” أو “البرمجة الشيئية” ودى بنرمزلها بـ OOP
ودا اختصار للجملة Object-oriented programming

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

ونتوسع فيما بعد عن هذا الامر ولكن لنعلم أن غالبية البرمجة فى الـ C++ تعتمد اعتماد كبير بالبرمجة الشيئية وهذا أمر مشترك فى لغة الـ Java

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

وواحد بيقولى ايه ياعم اسلام كود لغة تجميع شديد الفعالية انت شكلك بتتفلسف علينا
لا بتفلسف ولا حاجه بس عشان تفهمها لازم تعرف يعنى ايه كلمة برمجه الاول تعالوا نشوف كدا:

لغة التجميع دى هى لغة الاسيمبلى “Assembly language” وهى أحدى وأول اللغات ذات المستوى المنخفض “Low-Level language”
وصممت للتعامل مع الحاسوب أكثر من كونها منصة للبرمجة
وذلك لانها مصممه من الاساس لتكون سهلة القرائه من قبل البشر مقابل الاله

والمقصود بأنها من المستوى المنخفض ليس لضعفها بل هى لغة قوية جدا
ولكن لانها لغة بدائيه ويصعب التعامل معها بسبب تعقد شكل الكود “Syntax”

ولكل معالج لغة تجميع خاصه به (بمعنى ان أى لغة بتكتب بيها ليها ملفات كدا زى قاموس لترجمة اللغة او الشكل اللى انت بتكتبه الى لغة الاله)

ومن هنا نقدر نقول ان الجهاز بيفهم حرفين بس وهما 0 و 1 ، طبعا الالوان والفورم الاكواد والصور وكل ما تراه عينيك فى شاشة الحاسب الالى
هو ترجمة الرقمين 0 و 1 وهيا دى لغة الاله “Machine language”
وهى عبارة عن نظام الأرقام الثنائية “Binary Numeral System”

الامر كان قمة فى التعقيد عشان تكتب كود يوصلك للى انت عايزه
من هنا عملوا حاجه اسمها Assembly ودى كانت اول لغة للتسهيل على المستخدم

الاسيمبلى عشان نكتب عليها كان ليها compiler اسمه Assembler
كومبايلر يعنى مترجم يعنى لما تكتب الكود بشكل الاسيمبلى دا ياخده المترجم يترجمه ل 0 و 1 عشان تفهمه الاله ما هيا مش بتفهم غير 0 و 1
فبدلا من كتابة 0 و 1 تكتب رموز وكلمات معينة بلغة الاسيمبلى
ومن ثم يقوم الكومبايلر بترجمة هذه الرموز والكلمات الى 0 و 1 أى الى اللغه التى تفهمها الاله
والصورة التاليه توضح كيف تتم عملية الترجمة …

اسلام عبدالله_مقدمة عن الـ C++

اسلام عبدالله_مقدمة عن الـ C++

كان استخدام اللغات السابقه دى رغم انها اسهل بكثير من لغة الاله
الى انها كانت من اللغات التى يصعب جدا التعامل معها وهذا طبيعي فهى بداية انشاء لغات البرمجه

حتى وصلنا الان للغات عالية المستوى “High-Level language”
والتى منهم لغة كالـ Java و الـ Python والـ C وغيرها من اللغات

بدأ تطوير هذه اللغة كامتداد للغة سي تحت اسم (سي مع الصفوف)
من قبل العالم Bjarne Stroustrup في مختبرات Bell عام 1979
وتم إضافة العديد من الميزات الأخرى لاحقاً وتغير الاسم عام 1983 ليصبح سي++
من باب الدعابة عبر استخدام معامل الزيادة لجانب اسم لغة سي تأكيداً على أنها “التالي للغة سي“.

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

لذلك فمعنى أن الـ C++ تقوم بتصريف أكوادها إلى كود لغة تجميع شديد الفعالية
أى أن سرعة معالجة أكوادها وصولا للغة الأله هو شديد السرعه والفعالية وهذا يميزها عن غيرها من اللغات
ولذلك هى شعبية جدا فى تطوير برمجة الالعاب والاندرويد وتطبيقات سطح المكتب مثل المتصفحات ومشغلات الوسائط وغيرها…

وأيضا تتميز بقوة حمايتها أى أن اختراق برامجها يعتبر من الامور الغاية فى الصعوبه
وتتميز بانخفاض استخدام الذاكرة وسرعة التنفيذ مقارنة بباقى اللغات

ويمكن استخدام المؤشرات لمعالجة مواقع ذاكرة محددة وهو امر تفتقر له لغة الجافا
وهو امر مهم وضرورى جدا لكتابة مكونات نظام التشغيل ذات المستوى المنخفض

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

وميزات عديدة اخرى للغة الـ C++ وقد قدمت ابرز مميزاتها لذلك فما رايك بلغة الـ C++ ألا تستحق التعلم؟

كان معكم أخوكم فى الله اسلام عبدالله
نلتقى فى الدرس القادم ان شاء الله

عن Eslam Abdullah

اضف رد

This site uses Akismet to reduce spam. Learn how your comment data is processed.

المهندس الاول للتدريب تعليم كل مايخص الحاسوب من البداية للإحتراف حماية - صيانة - تصميم - انترنت - برامج كامله -دورات ......