[دورة] تعلم لغة c++ من الصفر

الموضوع في 'منتدى الدورات العامة' بواسطة E.ALI, بتاريخ ‏يناير 23, 2013.

  1. E.ALI

    E.ALI زيزوومي جديد

    إنضم إلينا في:
    ‏يناير 23, 2013
    المشاركات:
    18
    الإعجابات المتلقاة:
    64
    نقاط الجائزة:
    40
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7


    بسم الله الرحمن الرحيم​
    نظراً لعدم توفر مواضيع مستمرة في العديد من المواقع العربية تشرح مواضيع البرمجة من الصفر , أنشأت هذا الموضوع لأطرح المواضيع المتعلقة ببرمجة التطبيقات الخاصة بالويندوز و الويب.​
    و أسأل الله أن يوفقني في هذا العمل :)
    الـفــهرس​
     
  2. E.ALI

    E.ALI زيزوومي جديد

    إنضم إلينا في:
    ‏يناير 23, 2013
    المشاركات:
    18
    الإعجابات المتلقاة:
    64
    نقاط الجائزة:
    40
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7
    لـغــات الــبــرمــجة Programming languages​
    البرمجة هي عملية كتابة أوامر الى جهاز الكمبيوتر , ثم يقوم الجهاز بتنفيذ هذه الاوامر خلال سلسلة من الخطوات , تتم كتابة الأوامر من خلال لغات برمجة , قسمت إلى قسمين ( لغات منخفضة المستوى , لغات عالية المستوى ).​
    اللغات منخفضة المستوى هي لغات قريبة الى لغة الحاسوب , بمجرد كتابة الاوامر بهذه اللغات يتم تنفيذها مباشرة , لذلك فهي تتميز بالسرعة في التنفيذ , أي أنك اذا كتبت أوامر بلغة منخفضة المستوى و أخرى بلغة عالية المستوى , فإن التنفيذ سيكون بشكل أسرع لدى اللغة منخفضة المستوى ( مثال : لغة الأسمبلي ) , من الصعب فهم لغات منخفضة المستوى فهي بعيدة كل البعد عن الللغات التي ينطقها البشر.​
    أما اللغات عالية المستوى فهي اللغات القريبة الى لغة البشر , لذلك هي أسهل من المنخفضة المستوى , الأوامر التي تُكتب بوساطة هذه اللغات لا يتم تنفيذها مباشرة , بل تحتاج الى مفسر تقوم بتحويلة الى لغة الحساب , ثم يتم تنفيذ الاوامر , لذلك فان تنفيذ الأوامر تكون أبطأ من الأوامر المكتوبة بوساطة لغات منخفضة المستوى , من الأمثلة على هذه اللغات : الفيجوال بيسك , الجافا , C++.​
    في هذا الموضوع سأشرح البرمجة باستخدام احدى اللغات العالية المستوى وهي C++ , لا يعني ذلك أن اللغات الأخرى لن أتطرق اليها , ربما في المستقبل , ولا يعني ذلك أني أنصح بلغة C++ وعدم استخدام اللغات الأخرى , لا يمكن تحديد ماهي أفضل لغة برمجة , فلكل لغة مميزات تميزها عن اللغات الأخرى.​
    لكتابة الأوامر في لغة C++ نحتاج الى مترجم , المترجمات كثيرة , لكني سأختار مترجم Microsoft visual C++ , هناك نسخة مجانية من المترجم يمكنك تحميلها من هنا http://www.microsoft.com/visualstudio/eng/downloads#d-2010-express
     
  3. علي الحسين

    علي الحسين زيزوومي محترف

    إنضم إلينا في:
    ‏يوليو 16, 2009
    المشاركات:
    1,033
    الإعجابات المتلقاة:
    512
    نقاط الجائزة:
    720
    الإقامة:
    السودان الخرطوم
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows 7
    thank you
    موضوع جميل يحتاج له الكثيرون واصل


    [​IMG][​IMG][​IMG][​IMG][​IMG]
     
    أعجب بهذه المشاركة عين الطيف
  4. كمال احمد

    كمال احمد زيزوومي ماسي

    إنضم إلينا في:
    ‏نوفمبر 5, 2010
    المشاركات:
    2,085
    الإعجابات المتلقاة:
    6,200
    نقاط الجائزة:
    1,120
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows8.1
    جزاك الله خيرا
    واصل اخي الكريم لعلنا نستفيد من دروسك
     
    أعجب بهذه المشاركة عين الطيف
  5. H.H.H

    H.H.H زيزوومي ماسي

    إنضم إلينا في:
    ‏أكتوبر 3, 2008
    المشاركات:
    3,902
    الإعجابات المتلقاة:
    2,575
    نقاط الجائزة:
    1,170
    الإقامة:
    kSa
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Linux
    بالتوفيق لك​
    الى الامام​
    تلاميذك يا استاذنا ​
    بانتظار دروسك​
     
    عين الطيف و Mohamed Medo معجبون بهذا.
  6. The General Guard

    The General Guard زيزوومي VIP

    إنضم إلينا في:
    ‏يوليو 5, 2012
    المشاركات:
    3,256
    الإعجابات المتلقاة:
    6,874
    نقاط الجائزة:
    1,220
    الإقامة:
    مصر
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows 7
    معاكــ إن شاء الله
    (y)
     
    عين الطيف و Mohamed Medo معجبون بهذا.
  7. E.ALI

    E.ALI زيزوومي جديد

    إنضم إلينا في:
    ‏يناير 23, 2013
    المشاركات:
    18
    الإعجابات المتلقاة:
    64
    نقاط الجائزة:
    40
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7
    Your first program
    كل برنامج C++ يتم كتابته في ملف امتداده .cpp وهو ملف خاص للسي بلاس بلاس , البرنامج الواحد يحتوي على ملف cpp واحد أو أكثر , هذه الملفات تجمع وتسمى مشروع Project أو Solution.​
    لتشغيل مشروع سي++ يتطلب من المترجم استدعاء الملفات اللازمة لتشغيل هذا المشروع , لكن ماهي هذه الملفات؟​
    تخيل أنك في مطبخ وتريد أن تصنع كعكة , المطبخ فارغ لا يوجد به شيء , أول شي ستنصب الطاولة , في هذه الحالة Compiler , ستحتاج الى المقادير الخاصة بالكعكة مثلاً البيض و الحليب , لا يمكنك ايجاد البيض و الحليب داخل المطبخ الا بعد أن تحضر الثلاجة , أي تقوم باستدعاء Include الثلاجة الى المطبخ حتى تستطيع استخدام المقادير الموجودة فيها , والتالي تحتاج الى الخلاطة ؟ يجب ان تستدعي طاولة خاصة بادوات المطبخ , اذن كلما أردت استخدام شيء تحتاج الى ان تجلب الشيء الأكبر الذي يحويه.​
    في سي++ , اذا أردت استخدام بعض الأوامر , يجب عليك أولاً استدعاء الملفات التي تمكنك من استخدام هذه الأوامر , بعد ذلك يقوم المترجم باستدعاء هذه الملفات عند التشغيل.​
    بعد تنصيب وتشغيل مترجم مايكروسوفت , سيكون هكذا شكله​
    [​IMG]
    اضغط على New Project لإنشاء مشروع جديد , في النافذة التي ستظهر اختر نوع المشروع Empty project , اكتب اسب مناسب للمشروع ثم اضغط Ok​
    [​IMG]
    لقد قمت بانشاء المشروع , بعد انشاء المشروع تحتاج الى انشاء ملف cpp حتى تتمكن من كتابة الاوامر بلغة سي++ , توجه الى Solution explorer تجده على اليسار ثم اضغط زر يمين على اسم المشروع Add ---> New Item​
    [​IMG]
    اختر نوع العنصر ملف cpp C++ file واكتب اسم مناسب له ينتهي بـ.cpp مثلا basics.cpp​
    [​IMG]
    في المساحة الخاصة بالكود اكتب اللآتي ( لا تقلق ان لم تفهم شيء الهدف هنا فقط أن تعرف كيف تنشيء المشروع )​
    كود:
    #include <iostream>
     
    using namespace std;
     
    int main()
    {
     
        system("PAUSE");
        return 0;
     
    }
    [​IMG]
    الان اضغط على مفتاح f5 ليتم ترجمة المشروع وبناءه وتشغيله و في الانافذة التي تليها اختر Yes , ستظهر لك شاشة كونسول كالاتي

    [​IMG]
    اذا ظهرت هذه النافذة فقد تم انشاء مشروعك وتشغيله بنجاح.​
     
  8. H.H.H

    H.H.H زيزوومي ماسي

    إنضم إلينا في:
    ‏أكتوبر 3, 2008
    المشاركات:
    3,902
    الإعجابات المتلقاة:
    2,575
    نقاط الجائزة:
    1,170
    الإقامة:
    kSa
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Linux
    يعطيك العافية​
    هل فيه نسخة من البرنامج خاصة بنظام الابونتو ​
     
    عين الطيف و MagicianMiDo32 معجبون بهذا.
  9. ابوعبدالله

    ابوعبدالله مدير عام ومدير المكتبة الالكترونية طاقم الإدارة

    إنضم إلينا في:
    ‏ديسمبر 1, 2012
    المشاركات:
    21,140
    الإعجابات المتلقاة:
    62,463
    نقاط الجائزة:
    1,220
    الإقامة:
    ZYZOOM
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows 10
    [​IMG]
     
    عين الطيف و Axx معجبون بهذا.
  10. abo amir

    abo amir زيزوومي VIP

    إنضم إلينا في:
    ‏أكتوبر 16, 2008
    المشاركات:
    4,348
    الإعجابات المتلقاة:
    7,445
    نقاط الجائزة:
    1,220
    الإقامة:
    cairo-egypt
    برامج الحماية:
    avast
    نظام التشغيل:
    Windows 7
    [​IMG]
     
    أعجب بهذه المشاركة عين الطيف
  11. E.ALI

    E.ALI زيزوومي جديد

    إنضم إلينا في:
    ‏يناير 23, 2013
    المشاركات:
    18
    الإعجابات المتلقاة:
    64
    نقاط الجائزة:
    40
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7
    حسب ما قرأت بان هذا البرنامج يعمل على الويندوز و اللينكس
    http://www.codeblocks.org/

    لايهم أي مترجم تستخدم فكلها تقوم بنفس الوظيفة
     
    H.H.H ،MagicianMiDo32 و برووج السمآآء معجبون بهذا.
  12. E.ALI

    E.ALI زيزوومي جديد

    إنضم إلينا في:
    ‏يناير 23, 2013
    المشاركات:
    18
    الإعجابات المتلقاة:
    64
    نقاط الجائزة:
    40
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7
    مكونات أساسية Basic elements of Cpp
    برنامج سي++ عبارة عن مجموعة من برامج ثانوية , تسمى دوال Functions , بعض الدوال تسمى بالدوال الجاهزة أو المعرفة مسبقاً Predefined function وهي دوال تم كتابتها سابقاً وهي جاهزة للاستخدام فمثلاً اذا تريد ايجاد الجذر التربيعي للعدد x فانه تقوم باستخدام دالة جاهز sqrt(), ولكن ليس كل ما يحتاجه المبرمج موجود مسبقاً في الدوال , لذلك يُمكنك سي++ من كتابة دوال خاصة بك حتى تستدعيها عند الحاجة.​
    كل برنامج في سي++ يحتوي على دالة رئيسية main . في اللغة العربية اذا أردت أن تتعلم كتابة جملة يجب عليك أن تعرف الاملاء و القواعد اللغوية و النحوية , كذلك في سي++ يجب عليك أن تتعلم الأوامر الخاصة بسي++ و تتعلم قواعد كتابة الأوامر و أيضاً الاملاء الصحيح لهذه الأوامر , اذن لايمكنك كتابة برنامج سي++ الا بعد أن تعرف قواعد الكتابة الخاصة باللغة.​
    التعليقات Comments
    عندما تقوم بكتابة أوامر لبرنامج , يجب أن تكون قادراً على قراءة البرنامج في المستقبل , ويجب أن يكون غيرك أيضاً قادرة على قراءة الاوامر الخاصة بالبرنامج بشكل يسير , المبرمج الجيد يقوم باستخدام التعليقات ليوضح الفكرة الخاصة بجزء معين من الكود , وهذا يفيد لاحقاً في تطوير البرنامج و أيضاً في تصحيح الأخطاء التي قد تحدث في المستقبل.​
    هذه الصيغة العامة لكتابة تعليق في سي++​
    كود:
    //This is a comment
    // This is another comment
    هناك نوعان من التعليقات في سي++ , تعليق ذو سطر واحد كما هو وضح في الأعلى , وتعليق ذو أسطر متعددة وهذه صيغتها

    كود:
    /* This is a multiple line comments
    it prints more than one line
    in C++
    */
    هذه التعليقات يتم تجاهلها من قبل المرتجم , أي أنه لن يتم قراءة التعليقات على أنها جزء من اوامر سي++.
    هنا مثال جيد لكيف تقوم باستخدام التعليقات.

    كود:
    cout << 7+8 << endl; // It will print 15
    الجزء cout << 7+8 << endl; سيتم ترجمته من قبل Compiler ولكن التعليق يتم تجاهله.

    برنامجك الأول Your first program

    لنرجع الى البرنامج الذي تم شرحه في القسم 2

    كود:
    int main()
    {
     
    system("PAUSE");
    return 0;
    }
    
    عندما تقوم بكتابة أي برنامج سي++ يجب أن يحتوي على هذه الاكواد , السطر الأول , كما ذكرت أن كل برنامج سي++ يحتوي على دالة رئيسية وهي main()n ثم يتم فتح قوسين بهذا الشكل { تكتب هنا الأوامر } , system("PAUSE") n هي دالة جاهزة للاستخدام وتستخدم لمنع البرنامج من الاغلاق التلقائي بل ينتظر المستخدم أن يضغط على أي زر على الكيبورد حتى يغلق البرنامج , لاحظ في نفس السطر وجود هذا الرمز ; وهو ضروري في سي++ , يجب كتابة هذا الرمز بعد الانتهاء من كل أمر , في السطر الذي يليه reutrn0 وهو جزء من الدالة main يقوم بارجاع قيمة 0 الى الكمبيوتر حتى يعرف الكمبيوتر اذا ما تم تشغيل البرنامج بنجاح أو فشل في ذلك.


    في الواقع عليك أن تحفظ هذا التركيب حتى تكتب برامجك في سي++ , ولكن في المستقبل لن تحتاج الى الحفظ.
     
  13. yones7x

    yones7x عضو شرف نجم المنتدى

    إنضم إلينا في:
    ‏سبتمبر 18, 2010
    المشاركات:
    10,474
    الإعجابات المتلقاة:
    3,944
    نقاط الجائزة:
    1,220
    الإقامة:
    الإمارات - دبي
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows 10
    بارك الله فيك أ/ علي
    هل هذه الدورة من شرحك، أم تقوم بنقلها للفائدة؟
     
  14. gulfman

    gulfman زيزوومي جديد

    إنضم إلينا في:
    ‏يوليو 29, 2012
    المشاركات:
    105
    الإعجابات المتلقاة:
    6
    نقاط الجائزة:
    60
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows XP
    الاهم والمهم هو اننا نستفيد ونتعلم الجديد
     
    أعجب بهذه المشاركة MagicianMiDo32
  15. yones7x

    yones7x عضو شرف نجم المنتدى

    إنضم إلينا في:
    ‏سبتمبر 18, 2010
    المشاركات:
    10,474
    الإعجابات المتلقاة:
    3,944
    نقاط الجائزة:
    1,220
    الإقامة:
    الإمارات - دبي
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows 10
    ليس هذا ما افكر فيه
    حتى لو منقولة، سأبقيها
    لكن اريد المعرفة لهدف ابتغيه
     
  16. .:: MiDo NaBiL ::.

    .:: MiDo NaBiL ::. زيزوومي محترف

    إنضم إلينا في:
    ‏نوفمبر 28, 2012
    المشاركات:
    1,404
    الإعجابات المتلقاة:
    1,315
    نقاط الجائزة:
    820
    الإقامة:
    ^ EgYpT ^
    برامج الحماية:
    ESET
    نظام التشغيل:
    Linux
    جزاك الله خير .. ع الشرح الرائع ... ومنتظرين المزيد إن شاء الله​
    :smirk:
     
    Axx ،عين الطيف و MagicianMiDo32 معجبون بهذا.
  17. obada321

    obada321 زيزوومي ذهبي

    إنضم إلينا في:
    ‏نوفمبر 10, 2011
    المشاركات:
    3,869
    الإعجابات المتلقاة:
    1,124
    نقاط الجائزة:
    1,020
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows XP
    اخي بارك الله فيك

    اخي اتمنى لو تضع كيفية صنع اداة من الصفر وشكراً
     
    عين الطيف و MagicianMiDo32 معجبون بهذا.
  18. E.ALI

    E.ALI زيزوومي جديد

    إنضم إلينا في:
    ‏يناير 23, 2013
    المشاركات:
    18
    الإعجابات المتلقاة:
    64
    نقاط الجائزة:
    40
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7
    والله يبارك فيك
    الدورة من شرحي مع الرجوع الى كتاب
    c++ programming edition 5 كمرجع لترتيب الدروس
     
    برووج السمآآء و MagicianMiDo32 معجبون بهذا.
  19. yones7x

    yones7x عضو شرف نجم المنتدى

    إنضم إلينا في:
    ‏سبتمبر 18, 2010
    المشاركات:
    10,474
    الإعجابات المتلقاة:
    3,944
    نقاط الجائزة:
    1,220
    الإقامة:
    الإمارات - دبي
    برامج الحماية:
    Kaspersky
    نظام التشغيل:
    Windows 10
    بارك الله فيك
    يثبت لبعد انتهاء الدورة بفترة
     
  20. E.ALI

    E.ALI زيزوومي جديد

    إنضم إلينا في:
    ‏يناير 23, 2013
    المشاركات:
    18
    الإعجابات المتلقاة:
    64
    نقاط الجائزة:
    40
    برامج الحماية:
    اخرى
    نظام التشغيل:
    Windows 7
    ان شاء الله أكون عند حسن الظن
     
    أعجب بهذه المشاركة MagicianMiDo32

مشاركة هذه الصفحة

جاري تحميل الصفحة...