Transcript for:
إعداد بيئة العمل للغة C++

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

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

وانا هتعامل مع حضرتك انك شفت القايمة دي كاملة. محتاجين او اي دي اي. ومحتاجين الادوات اللي اللغة عايزاها عشان ترن الكود بتاعنا. على الاسي بلس بلس. أول شيء، عندما أستخدم editor لن أفرده عليك سأعطيك مجموعة أخرى كثيرة لكي تكون لديك أكثر من خيار تختار منهم أنا اخترت Visual Studio Code وسأقوم بتنزيل بعض الأستنشن التي ستساعدني كما ترون إستنشن خاص بال C++ لكي تساعدني وأكمل الكورس بإذن الله لدي خيارات أخرى لطيفة جدا مثل Visual Studio Community Edition وهذا يمتلك أملاك و IDE محترم فوق الوصف بس عم يحسابك على 11 جيجا هينزلو في جهازك يعني وعندك IDE تاني اسمه CodeBlocks زي ما انت شايف CodeBlocks ازا Free IDE لل C والC++ ولل Fortran عارف عينيك جاي على التابع الرابع بس ده مش هنتكلم عنه دلوقتي طيب نزلنا IDE بتاعنا والحمد لله باشا الدنيا تمام زي الفل انا عايز امشي وراك واشتغل على Visual Studio Code عظيم في المرحلة دي انا عايزك تشتغل عليها عشان تشوف كمية المعلومات اللي هناخدها في الفيديو ده عشان انا بجد عايزك تتعلمها.

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

هاجي دلوقتي نفتح الفيجوال استوديو كود. او مش عندك طبعا يعمل له داونلود. تعالوا نفتح فولدر جديد خاص بالمشروع. ما عندناش طبعا فولدر هنعمل فولدر. سأسميه مثلاً fundamentals بالشكل ده ده الفولدر بتاعناه هنعمل ملف اسمه app.cpp c++ هحط فيه المحتوى اللي قدامك ده اللي مش مطلوب منك نهائيا تفهم بيعمل ايه عشان هنشرحه بالتفصيل الممل الممل الممل تمام تمام دلوقتي انا المفروض ان البرنامج بتاعي ده يعمل لي output للجملة دي iam here يطلع لي الجملة دي دلوقتي حضرتك علشان تقدر ترن الكود ده انت محتاج شوية ادوات في النظام بتاعك ايه الادوات دي تعالي نشوف مع بعض.

هدخل على قائمة وهكتب هنا بالشكل ده. جاب لي الـ extension من Microsoft install وهو الرجل بيعمل install كتر خيره محتاج أوريك حاجة تحت هنا مكتوب C++ is a compiled language دي compiled language اتكلمنا عن موضوع الـ compile ده في الفيديو في بلاي لست ما قبل البرمجة بتاع لغات البرمجة وفيه نوع من أنواع اللغات أو أنواع لغات بتحتاج الكود بتاعها يترجم للغة الكمبيوتر تمام كده؟ تمام بيقول لي ده معناه أن الـ source code must be translated الـ source code الكود اللي أنت بتكتبه يجب أن تقوم بعمل تحديث لتعمل أو تعمل في الكمبيوتر ويقول لك أن هذا اللغة يجب أن تنزل هذه المهن هناك مهن نحتاجها لتنزل لكي نتمكن من تعمل هذا ما هي هذه المهن؟ نحتاج إلى C++ Compiler و C++ Debugger هذا كل ما قلت لي من قليل أريد أن أفهم و لن أحفظ صح المفروض ان انت كده فهمت محتاجة نزل كومبايلر وديباجر دلوقتي الزيرو شرح لنا وورينا كل حاجة والحمد لله وعملنا المطلوب انا لسه هنزل الكلام ده بس انا بقول ان ده حصل خلاص وفي المستقبل حد بتفرج على الفيديو لقى فيه اختلاف هيعمل ايه هيدور ازاي دي في C++ كومبايلر وديباجر في النظام عشان يقدر يرن الكود بتاعه عظيم تعالوا بقى نعمل الكص بتاعتنا دي. الاول الكود بتاعنا ده لما نزلنا الاستنشون ايه اللي حصل? بص كده. بيقول لي تعالوا بعد ذلك ننظر إلى Quick Fix ونقوم بإضافة Edit Include Path جيد جداً قمت بالإضافة إلى Include Path وكتب لي هنا ما أريد أن أرى compiler path أين مصاري الcompiler الذي سيقوم بإضافة الكود الآن؟ لا أريد أن أقرأ لا أريد أن أقرأ أريد أن أقرأ حسناً، إنسى كل هذا وقل له السلام عليكم ونحن سنعطيك مجدداً سنعطيك في الأفراح دعنا نبدأ بعمل الخطوات لتنزيل الـ Tools الـ Compiler و الـ Debugger و لو سمحت تركز معي في الجملتين التي سأقولها الآن الآن لدينا طريقين للتعامل مع الكود لدينا الطريقة الأولى لتعامل مع الكود والطريقة الثانية لتعامل مع الـ Dragons هل تريد أن تكون من الكاتس أو من الدراجونز؟ ما هي حكاية الكاتس وما هي الحيوانات التي أتت فجأة؟ الطريقة للكاتس أن تعمل على كومبايلر أونلاين تدخل على C++ Shell وهذا هو الكود الخاص بنا، وقل له، إسمعي تفضل يا باشا، شكرا، السلام عليكم أنا جاهز جيدا، يريدون مني شيء، السلام عليكم وانت تتابع الكاتس، هل تريد أن تتابع الكاتس؟ يبقى حتى هنا الفيديو تريد أن تتبع التنانين وتتعلم الكثير من الأشياء؟ إذا أسمح لك بالتواصل معنا وإبقاء عن المنظمات المتعلقة بشكل عام لكي تتخلص في عالم المشاكل والأوامر والأرز التي تظهر وكيف تحلها وتبحث عنها تعالوا معنا سنذهب إلى هنا لنرى هذا التقسط أول شيء لدينا هو أن نقوم بعمل تنزيل للـ MSIS ستدخل إلى جوجل وتكتب تنزيل MSIS كما كتبت msys2.org سنقوم بعمل دونلود لإنستولر لنضع وقت لفديو لأننا سنحمل بلاوي سأقوم بعمل open برنامج عادي لا نريد أي شيء من السفحات next مكانه على C ok كله تمام جاهز نفسك لأن هناك تطوير كبير كبير وكلمة كتير يعني كتير قوي فعلا يعني أنت جيجا كده ولا حاجة لحد دلوقتي أنت بتنزل برنامج عادي ليس هناك أي شيء خالص لسنا دخلنا في المعلومات التي نستفيد منها دلوقتي اللي جاية دلوقتي اللي هو إن شاء الله يخلص بس ويقول دلوقتي انا بفكر ان اوقف الفيديو يعني نكسب وقت لنعطل الناس اذا كان هناك اي شيء يجب ان نوقف الفيديو جاء لي شاشة الترمينال التي لدينا موعد معها في فيديو بالتفصيل في بلاي لست مقابل البرمجة الترمينال هي شاشة يمكننا ان نكتفيها الاوامر لكي نحمل برمجيات في النظام البرمجيات التي تعمل معها ليست كلها انستولر وتعمل له ونكست نكست نكست لا في بتحتاج تكتب عشان تنزلها.

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

نديها كده شوية بس نكبر. ونبدأ نمشي معها خطوة خطوة. الان ما اسمه الpackage manager اسمه pacman مثل الpackman المشاهدة ستجد قوامر وما هو الـ-s هل ستكتب لنا هذا الكلام عند استخدام أي package في هذا الوقت ضغط على dash سيبدأ الهلب بإستخدام الأشياء التي تستخدمها وهي تسمى flags ما هي معناها وماذا تفعلها لدي flag هنا يفعل upgrade يفعل synchronize يفعل remove الهلب والتجربة الخاصة بنا كل ما ترونه يمكنك فعله وبالمناسبة سنستخدم معظم الأشياء هذه الآن أريد الآن أن أبدأ بعمل ما بص معي backman تقدر أن تأتي في النص فقط تدخل تاب يكمل لك الكمد لو كتبت لك شيء مثلا كشخص زيرو او احد اخر ولم تشرحه انظر معي اذا ما الذي سيقوم بهذا الوقت هنا يقول لك Synchronizing Package Database هنا يبدأ يقوم بالتزامن يرى المتاحة الموجودة ويحطمك معلومات عندك اللي مش عندك مساحتها كام لما اعمل لها تبقى كام كل الكلام ده كله بيكتبهولك دلوقتي بعد ما انا شفت الكلام ده كله هبدأ دلوقتي اقول له عايز اكمل ولا مش اكمل اقول له اه لاحز معي لو عندك بيدير الحزم او اللي انت هتنزلها في النظام هو نفسه ممكن يحتاج تحديز طبعا ما هو من ضمن دي اصلا هو بس هو في النهاية هقول له يس وتفضل هيبدأ يعمل زي ما انت شايف اوه انا تبحث عنه او تفتحه من المسار بتاعه في C لان ده نزلته فيه. نقدر طبعا نحفظ الحاجات دي بس انا مش حابب اضيع لك وقتك في حاجات جانبية. هنا بعد كده هقول له.

بك مان ما ينص. اس كابيتال يو. بص هنا كتب لي ايه? كتب لي كور سيستم ابجريد. هيعمل دلوقتي ابجريد للكور.

اقول له برضو بديك المساحات زي ما انت شايف. اقول له ايه? استفدل. 3 من 23 يعني مسهل يا رب خلينا على ما يخلص نطلع دي كده كل حاجة نخلصها يمكننا أن نتكلم عن بعض المعلومات التي يجب علينا أن نبحث عنها ونعرف هل الجهاز لديك Windows 64 أو 32 لكي نتمكن من الاختيار من الخيار المناسب في البرمجيات أو عندما تقوم بعمل setup لأي شيء في حياتك قرأ قليلا عن 64 و 32 هذه أشياء جانبية لا أريد أن أدخلك فيها الآن لكن قرأها ونعطيك معلومات عندما ننتهي بعد أن ننتهي من هذا سنبدأ ببحث عن MSIS إذا كان لديك Windows قبل Windows 11 ستجد هناك ملف اسمه امسس وجوه الحاجات الموجودة فيه. هاجي هنا وافتح الامسس من جي دابليو اربعة وستين.

تمام كده? نفس الكسة. هتلاقي مكتوب هنا من جي دابليو اربعة وستين.

معلش كل شوية بنكبر الشاشة. هنا تأتي مرحلة A. كنا نفعلها منذ قليل. كنا نفتح المنظرات والمجموعة.

حتى الآن لم ننزل الكمبيلر ولا الديباغر والأمور المطلوبة مني. سأبدأ بالنزول الكمبيلر. سأكتب Pacman-ss-gcc.

من جي سي سي؟ سنرى حالاً لا تنسى. هنا جاء لي جميع المجموعة التي تحتها. بعد الجمل كده هنقرر جمل ونشوف احنا محتاجين ايه احنا محتاجين باكج اسمها من جي دابليو دابليو اربعة وستين اكس ستة وثمانية اربعة وستين داش جي سي سي دي الباكج اللي احنا محتاجين هنجيبها منين بص كده معي تعالوا نقلب كده في الباكج دي ونشوف مكتوب تحتها ايه عشان تعرف احنا ليه اخترناها اصلا من اول هنا اهو مكتوب هنا من جي دابليو اه دابليو اربعة وستين لا مش دي اللي عايزينها خلينا نشوف تحت تاني شوية معلش نتعب شوية ندور عليها اهي من جي دابليو دابليو 64 اكسي 664 جي سي سي مكتوب ايه تحتها لو سمحت جي ان يو كومبايلر كوليكشن سي سي بلس بلس عظيم كده جبنا الكومبايلر كده جبنا الكومبايلر ننسخ دي بقى كابي وننزل تحت هنا ونقوم بإعطاءه باكمان داش اس و هنا لا يوجد كنترول في لكي لا يبعث لك الأمر تدخل على زرار الماوس في النصف وهو الويل ينزل لك الأشياء بالشكل هذا هذا هو الأمر نفس الكثرة كن جاهزا لأنك تنزل 400 ميجا إن شاء الله ينزل بسرعة ونغلق كنا قمنا بعمل بعض الخطوات جيدة هنا نفس الكثرة ومن هنا على فكرة قد أخبرك أننا قد نهجنا إن شاء الله لكن سينزل بعض الأشياء جيدة وممكن نعمل حاجة هنا لطيفة edit system variables حلوة دي برضو خطوة دي 14 من 15 يا مسهل هنا عملية ال checking هنا بقى التغييرات بقى وكله تمام 15 نقوم بعمل موضوع الديبغر نقوم بهذا الموضوع منذ قليل نضغط على الـpcgdb ستجد أن لديك مجموعة من هذا الموضوع ننظر إلى مكتوب تحتها لا يوجد مانع لأننا ضيعنا دقيقة من حياتنا لكي نتعلم هل يمكنك رؤية هذا؟ هل يمكنك أن تقول؟ هل يمكنك أن تقول؟ لن نضع وقتاً. من GWW64-XS86-64-GDP.

مكتوب تحتها دي بوغر. جميل. تفعيل؟ تحت خلص. الـ Backman الـ Wheel تفضل Yes الـ Debugger برضو تقريبا قد حجم الـ Compiler كده شباب نقدر نقول ان احنا خلصنا المطلوب والباقي كله عبارة عن تشك على الـ Versions بتاعة الـ Tools اللي اللغة محتاجها فيش أي حاجة غريبة بس هنعمل كام تجربة ومعلومة زيادة قبل ما نشوف الكود بتاعنا بإذن الله هناك شيء يحتاج لإعادةه ولكنه ينتهي بس الـ 22 الشاشة الترمينال التي ترونها تمكن من نزيل برامج كثيرة تمكن من إكتبالها تمكن من استخدام الـ cmd الموجودة في النظام تمكن من إكتبالها سنقوم بعمل كم تجربة انا عارف ان المسار بتاع التنانين مسار تقيل بس المسار التقيل ده هيطلع منك مبرمج محترف المسار التاني فيه مشاكل مش كل حاجة تبقى متاحة قدامك ما عندكش معلومات بتشتغل على حاجة online انت كده user اليوزر ده لو فيه حاجة تغيرت بتغير معاها لكن انت كده يعني ممكن نقول advanced user او الشخص اللي هو بيبتكر يقدر يعمل كل حاجة بنفسه بعد ذلك فكروا براجل محامي لم يجد شيئا يقوله فقام بحكي مع القاضي حسنا كل شيء تمام سنقوم بعمل تجربة بسيطة نذهب الى GCC ونقوم بوضع V أو GCC V كما ترون كتبت لدي الاصدارة يمكنك البحث عن G++ نفس القصة عظيم اخر حاجة عندنا جي دي بي جابلي الاصدارة هو كله تمام لو حاولت ان انت تفتح الكماند وتكتب الكلام ده عن طريق يعني نفس الاوامر مش هيجيب لك اي حاجة ومش هيفهم الامر ده ليه؟ لانه ما عندوش access على المكان اللي فيه البرمجيات دي خالص يعني ايه الكلام ده؟ تعال نشوف مع بعض لو كتبت انا هنا G++ Virgin مش هيفهم حاجة بص كتاب لك ايه؟ انا اصلا مش فاهم ايه الcommand ده خالص مع السلامة باشا مش عايزينك وتعالوا مع بعض نبص بص كده خالص؟ خالص هنخش على C وهنخش على الmss ونقوم بالتوصل إلى الـ MinGW64 ونقوم بالتوصل إلى الـ PIN Folder ستجد هنا الـ G++ الـ GCCC و الـ GDB وهو الـ Debugger قلت 3C هنا عندنا الcompiler والdebugger وكله موجود.

المصار بتاعنا ده حضرتك محتاجين نحطه في system variables أو في الvariables اللي ال system بيقدر يقرأ منها علشان نأكسس على الكلام ده من الcommand زي ما انت شفت من شوية. تعال نشوف مع بعض يعني ايه الكلام ده. هاخد المصار ده. ونفتح قائمة start ونقول له environment مثلا edit system environment أنا عندي نظام مختلف عن عندك وعايز أوصل للخانة دي اكتبي edit system variable edit system environment هدخل عليها كده وهاجي عند environment variables بالمناسبة هتلاقيها في windows xp وتين تقريبا نفس الشكل ده وهاجي عند المصور هنا اهو double click عليه او تقوله edit دابل كليك دي المسارات الموجودة في النظام اللي انا قدر اكسس عليها منهم النوت جي اس زي ما انت شايف والزامب بتاع لغة بي اتش بي وحاجات كتير جدا هقوله نيو واضيف المسار هنا وعمل كده اوكي اوكي وبعدين اوكي نفتح الكومند ونكتب جي بلس بلس ونتأكد ان كله تمام تمام يا باشا قدر الاصدار والحمد لله. نفتح بقى دلوقتي الفيجوال ستوديو كود.

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

فهم اللي موجود فهم اللي موجود. اقفل ده كده خالص. وتعالى نقول رون c c++ file بص جابلي ايه c c++ file g++.exe build and debug active file هيبني الفايل ويطلع لك ال output بص بقى مكان ال compiler فين مكانه في ال msys64 من gw64 من g++ اللي انا كنت لسه احدده لك من شوية تفضل يا باشا توكل على الله زي ما انت شايف كده هيبدأ يجيبلي النتيجة دلوقتي في الترمينل هنا زي ما انت شايف الديباجنج ده لو فيه اي ارور فيه اي مشكلة فيه حاجة محتاجة تتعدل بيطلعها لك هنا في شاشة الكونسول هنا كتب لي ايه I am here ده المطلوب منك تعمله مطلوب منك ان انت تكتب لي في التعليقات I am dragon معناها ان انت دلوقتي عملت المصار بتاع الدراجون او مشيت في المصار بتاع الدراجون لو انت كتبت الكود ده وجهست البرنامج بتاعك واشتغلت اونلاين لو سمحت اكتبلي هنا ايام كات في التعليقات عشان اعرف ان انت ممشيتش في المصار المسار ده.

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

يا رب جماعة الدرس يكون سهل وبسيط وعجبكم. اشوفكم ان شاء الله في فيديو جديد. والسلام عليكم.