
البرمجة بلغة RUST
اللغة المثالية لبرمجة الألعاب وتطبيقات الويب
ماذا ستتعلم؟
- تثبيت أدوات Rust وإنشاء أول مشروع
- استخدام Cargo
- فهم أنواع البيانات والمتغيرات والثوابت
- استخدام العمليات الحسابية والمنطقية والمقارنة
- كتابة جمل صناعة القرار
- استخدام الحلقات التكرارية
- إنشاء الدوال واستخدامها
- التعامل مع الاحتمالات والبيانات النصية
- تنظيم البيانات وتخزينها
- تنفيذ تطبيق عملي كامل بلغة Rust
عن الدورة
يشرح هذا الكورس البرمجة بلغة Rust من الصفر. يبدأ بمقدمة الدورة وتثبيت الأدوات وإنشاء أول مشروع واستخدام Cargo، ثم التعليقات وأنواع البيانات وإنشاء المتغيرات والتعامل معها والثوابت. بعد ذلك تتعلم العمليات الحسابية وعمليات المقارنة والعمليات المنطقية، ثم مراحل صناعة القرار والحلقات التكرارية والدوال، كل منها على عدة أجزاء مع تمارين وتحميل الأكواد. وتنتقل إلى التعامل مع الاحتمالات وتنظيم البيانات وتخزينها والتعامل مع البيانات النصية، ثم تطبق ما تعلمته في تطبيق عملي كامل على خمسة أجزاء. ينفع هذا الكورس كل من يريد تعلم لغة برمجة حديثة تناسب الألعاب وتطبيقات الويب وبرامج النظام، سواء كان مبتدئا في البرمجة أو لديه خبرة في لغة أخرى. لا تحتاج إلى خبرة سابقة، فالكورس يبدأ من تثبيت الأدوات. ويقدم الكورس كل مفهوم بشرح مبسط ثم تطبيق على الكود، فتتابع الخطوات معه وتجرب بنفسك. وفي النهاية ستكون قادرا على كتابة برامج بلغة Rust وتنظيم الكود في دوال وبناء تطبيق عملي بنفسك.
نتائج متوقعة من الدورة
- القدرة على كتابة برامج بلغة RUST بكفاءة وأمان.
- فهم كيفية التعامل مع البيانات وتنظيمها باستخدام المتغيرات والثوابت.
- إنشاء دوال وبرامج متقدمة باستخدام الحلقات التكرارية.
- تنفيذ مشاريع عملية باستخدام الأدوات المتقدمة في لغة RUST.
تقييمات المتدربين
محتوى الدورة
1تثبيت الأدوات
4 درس
- مقدمه الدورةمقدمة دورة لغة Rust، تعرف بالمرحلة التي نشأت فيها ومميزاتها في سرعة الأداء والتعامل مع الذاكرة، وتعرض محاور الدورة من التثبيت وCargo والأساسيات إلى الدوال وEnums والتطبيق العملي.2:17
- تثبيت الأدواتيشرح تثبيت أدوات Rust، ومنها Rustup لإدارة الإصدارات وتحديثها، وأدوات البناء من Visual Studio، وCargo كمدير حزم، ثم تثبيت Visual Studio Code كمحرر للكود.11:53
- أول مشروعيشرح إنشاء أول مشروع في Rust يطبع Hello World، بكتابة ملف main.rs ودالة main واستخدام println! ثم ترجمة الملف وتشغيله من الطرفية.13:01
- استخدام الـ Cargoيشرح استخدام Cargo في Rust بدل الطريقة اليدوية: إنشاء المشروع بأمر new، وبناؤه وتشغيله وفحصه، ودور ملفي Cargo.toml وCargo.lock ومجلد target.16:30
2الأساسيات
5 درس
- التعليقاتيشرح التعليقات Comments في Rust، التعليق في سطر واحد والتعليق متعدد الأسطر، ودورها في شرح الكود للنفس وللفريق، وأن المترجم Compiler يتجاهلها تماما عند التنفيذ.9:51
- أنواع البياناتيشرح أنواع البيانات الأساسية في Rust، وهي الأعداد الصحيحة Integer والعشرية Float والحرف Char والنص String والقيمة المنطقية Boolean، وطريقة عرضها باستخدام println!.13:22
- إنشاء المتغيراتيشرح فكرة المتغير في Rust كمكان في الذاكرة يخزن البيانات ويحمل اسما، وكيفية إنشائه بكلمة let واستدعاء قيمته وطباعتها، وأن قيمته لا تتغير إلا بتعريف خاص.9:16
- التعامل مع المتغيراتيشرح التعامل مع المتغيرات في Rust: تحديد نوع البيانات صراحة، وأنواع الأعداد الصحيحة والعشرية وf32 وf64 والحرف، وقواعد التسمية، وجعل المتغير قابلا للتعديل بكلمة mut.13:46
- الثوابتيشرح الثوابت في Rust بكلمة const: وجوب تحديد نوع البيانات، وعدم إمكان تغيير قيمتها، والفرق بينها وبين let، وإعادة تعريف متغير بنفس الاسم في الكتلة نفسها.11:50
3العمليات
3 درس
- العمليات الحسابيةيشرح العوامل الحسابية Arithmetic Operators في Rust، وهي الجمع والطرح والضرب والقسمة والباقي Modulus، مع مثال برمجي والفرق بين القسمة وباقي القسمة.6:17
- عمليات المقارنةيشرح عوامل المقارنة Relational Operators في Rust مثل أكبر من وأصغر من ويساوي ولا يساوي، وأنها ترجع قيمة Boolean هي true أو false، مع أمثلة برمجية.10:17
- العمليات المنطقيةيشرح العمليات المنطقية في Rust وهي and وor وnot، وكيف تجمع أكثر من شرط مقارنة في تعبير واحد وترجع قيمة true أو false، تمهيدا لاستخدامها في اتخاذ القرار.8:01
4صناعة القرار
4 درس
- مراحل صناعة القرار (الجزء الأول)يبدأ مراحل صنع القرار Decision Making في Rust بجملة if الشرطية، حيث ينفذ بلوك الكود فقط عندما يكون الشرط true، مع أمثلة على المقارنة بين المتغيرات والشروط المركبة.10:32
- مراحل صناعة القرار (الجزء الثانى)يشرح جملة if else في Rust، حيث ينفذ بلوك else عندما يكون شرط if قيمته false، مع مثال يقارن رقمين ويطبع نتيجة مختلفة حسب تحقق الشرط.5:55
- مراحل صناعة القرار (الجزء الثالث)يشرح else if في Rust كمرحلة ثالثة من صنع القرار، لإضافة شرط جديد عند فشل الشرط الأول، مع مثال يحدد هل رقم أكبر من الآخر أو أصغر منه أو مساو له.7:29
- مراحل صناعة القرار (الجزء الرابع)يشرح استخدام الكلمة match في Rust كبديل لسلسلة if وelse if، بمقارنة قيمة متغير بعدة احتمالات وتنفيذ الحالة المطابقة، مع حالة افتراضية لما لا يطابق أي احتمال.12:29
5الحلقات التكرارية
4 درس
- الحلقات التكرارية (الجزء الأول)يشرح الحلقات التكرارية Loops في Rust بدءا بحلقة while، باستخدام متغير mutable وشرط يبقى true، لطباعة رسالة عدة مرات بدل تكرار الكود يدويا.12:08
- الحلقات التكرارية (الجزء الثانى)يكمل شرح الحلقات التكرارية في Rust بحلقة for مع النطاق Range، واستخدام break للخروج من الحلقة وcontinue لتخطي قيم معينة، مع تمرين على طباعة الأعداد الزوجية.7:43
- الحلقات التكرارية (الجزء الثالث)يشرح الحلقات المتداخلة، ويقارن بين for وwhile وloop في Rust، وكيفية إنشاء loop مع عداد، والحلقة اللانهائية وإيقافها بشرط if مع break.4:11
- الحلقات التكرارية (الجزء الرابع)يشرح الكلمتين continue وbreak داخل الحلقات في Rust: continue تتجاوز التكرار الحالي عند تحقق شرط، وbreak توقف الحلقة كلها، مع مثال على for وrange.4:35
6الدوال
6 درس
- الدوال (الجزء الأول)يشرح تعريف الدوال Functions في Rust بكلمة fn واسم الدالة والقوسين وبلوك الكود، وكيفية استدعاء الدالة Call من main لتنفيذ ما بداخلها، مع ربطها بدالة main نفسها.9:35
- الدوال (الجزء الثانى)يشرح تمرير البيانات إلى الدوال في Rust عبر المعاملات Parameters داخل القوسين، وتحديد نوعها، وترتيبها، وخطأ عدم تطابق عدد المعاملات مع عدد القيم عند الاستدعاء.13:59
- الدوال (الجزء الثالث)يشرح الدوال التي ترجع قيمة في Rust: تحديد نوع البيانات المرجعة، واستخدام return، وتخزين النتيجة في متغير، وتمرير القيمة المرجعة إلى دالة أخرى.10:17
- الدوال (الجزء الرابع)يشرح println! في Rust ومعنى علامة التعجب في الماكرو، وطباعة القيم بصيغ العرض المختلفة، وأن الماكرو للتجربة أثناء التطوير ويُزال من النسخة النهائية.7:07
- تمرينتمرين تطبيقي للعبة FizzBuzz في Rust: حلقة for على نطاق من الأرقام، وفحص القسمة بالباقي لطباعة Fizz وBuzz وFizzBuzz، ثم نقل المنطق إلى دالة تستقبل معاملات.13:48
- تحميل الأكواد
7المهام المتقدمة
8 درس
- التعامل مع الاحتمالاتيشرح التعداد Enum في Rust لتحديد مجموعة احتمالات لنوع معين مثل Gender، وكيفية التعامل مع قيمه باستخدام match داخل دالة، ومعالجة الاحتمالات غير المغطاة.13:03
- تمرينتمرين عملي على Enum في Rust، يعرف مستويات الوصول Admin وManager وUser وGuest ويستخدم match لتحديد من يحق له الوصول إلى ملف خاص، مع القيمة الافتراضية للبقية.5:01
- تنظيم البيانات (الجزء الأول)يشرح struct في Rust لتجميع بيانات مترابطة تحت اسم واحد، مثل الاسم والعمر والنوع للموظف، وإنشاء نسخ منه والوصول إلى حقوله بالنقطة، مع مراجعة enum.11:23
- تنظيم البيانات (الجزء الثانى)يشرح إضافة دوال إلى struct في Rust باستخدام impl، وكيفية الوصول إلى حقول النسخة داخلها، واستدعاء الدوال على الكائن وتعديل قيمة حقل مثل العمر.15:43
- تخزين البيانات (الجزء الأول)يشرح الـ tuple في Rust لتخزين عدة قيم من أنواع مختلفة في متغير واحد، وعرضه، والوصول لعناصره بالفهرس مثل نقطة صفر، أو تفكيكه إلى متغيرات منفصلة.13:41
- تخزين البيانات (الجزء الثانى)يشرح المصفوفة array في Rust وفرقها عن tuple بأنها تخزن نوعا واحدا، وتحديد نوعها وحجمها، وتعديل عناصرها بالفهرس، وتمريرها إلى دالة وإرجاعها منها.22:02
- التعامل مع البيانات النصيةيشرح التعامل مع النصوص في Rust: الفرق بين string literal وstring object، وإنشاء نص فارغ، وتحويل literal إلى object، واستخدام دوال مثل replace وtrim وlen.14:44
- تحميل الأكواد
8تطبيق عملي شامل
6 درس
- التطبيق العملى (الجزء الأول)يبدأ التطبيق العملي للعبة التخمين Guessing Game في Rust، التي تستخدم إدخال المستخدم Input ومكتبة خارجية للرقم العشوائي، مع إنشاء المشروع بـ Cargo وتشغيله.5:42
- التطبيق العملى (الجزء الثانى)يشرح قراءة إدخال المستخدم في لعبة التخمين بلغة Rust، عبر مكتبة io وتعريف متغير String فارغ mutable واستخدام read_line لتخزين ما يكتبه المستخدم في الطرفية.9:50
- التطبيق العملى (الجزء الثالث)يشرح توليد رقم عشوائي في لعبة التخمين بلغة Rust، بإضافة مكتبة rand الخارجية إلى ملف Cargo.toml وبنائها بـ Cargo واستخدام مولد الأرقام العشوائية rng.10:47
- التطبيق العملى (الجزء الرابع)يشرح مقارنة تخمين المستخدم بالرقم العشوائي في لعبة التخمين: تحويل النص المدخل إلى عدد صحيح بـ parse، ومعالجة الخطأ برسالة، وتنفيذ المقارنة بجمل if.7:05
- التطبيق العملى (الجزء الخامس)يختم برنامج لعبة التخمين في Rust: مقارنة الرقمين بـ enum الاسمه Ordering مع match بدل if، ثم وضع الإدخال داخل loop يتكرر حتى يصيب المستخدم الرقم.7:41
- تحميل الأكواد
المحاضر

م/عمرو عبد الفتاح



