أهلًا بك إلى لغة البرمجة رست، كتاب تمهيدي حول رست. تساعدك لغة رست في كتابة برمجيات أسرع وأكثر وثوقيّة، وعادةً ما يكون كل من أريحية استخدام مستوى مرتفع والتحكم الذي يقدمه لك المستوى المنخفض طريقان مختلفان يجب عليك الاختيار بينهما إلا أن رست تغير من ذلك الواقع عن طريق الموازنة بين القدرة التقنية الهائلة لها وتجربة المطوّر الجيدة، إذ تعطيك رست خيار التحكم بالتفاصيل منخفضة المستوى (مثل استخدام الذاكرة) دون أن يترتب على ذلك الاختيار أي شيء إضافي تجده عادةً.
هذا الكتاب مترجم عن الكتاب The Rust Programming Language من مساهمة ستيف كلابنيك Steve Klabnik وكارول نيكلز Carol Nichols ومساهمات من مجتمع لغة رست، ويعد مرجعًا شاملًا إلى لغة رست بكل تفاصيلها واستخداماتها.
يشدد هذا الكتاب على إمكانية لغة رست لتمكين مستخدمها، فهو كتابٌ سهل القراءة بلغة بسيطة وموجّهٌ لمساعدتك، ليس فقط في معرفتك بلغة رست فحسب، بل للوصول إلى مبرمج بمستوًى عالٍ من الثقة عمومًا.
تُعد رست لغة برمجة مثالية للعديد من الأشخاص لعدة أسباب. لنلقي نظرةً على بعض مجموعات المستخدمين وأهمها:
- فرق المطورين
- الطلاب
- الشركات
- مطورو المصادر المفتوحة
- المهتمون بالسرعة والاستقرار
يفترض هذا الكتاب أنك كتبت شيفرة برمجية مسبقًا بإحدى اللغات الأخرى، إلا أنه لا يفترض أي لغة برمجة كانت تلك، وحاولنا جعل المحتوى قابل للفهم عمومًا قدر الإمكان بغض النظر عن نوع خلفية القارئ في البرمجة. لن نتكلم كثيرًا عن ماهية البرمجة أو كيف تستطيع التفكير بها، فإذا كنت جديدًا إلى البرمجة، فمن الأفضل قراءة كتاب تمهيدي حول البرمجة على وجه الخصوص ونرشح لك كتاب تعلم البرمجة للمبتدئين لتبدأ به.
يفترض هذا الكتاب عمومًا أنك تقرأه تسلسليًا من البداية إلى النهاية، إذ نقدم مفاهيمًا concept في الفصول اللاحقة بناءً على مفاهيم تكلمنا عنها في الفصول التي سبقتها، وإذا لم نوضّح بصورةٍ مفصلة المفاهيم المقدمة في الفصول الأولى، فهذا يعني أننا سنخوض في تفاصيل أكثر عمقًا في فصول لاحقة.
ستجد نوعين من الفصول في هذا الكتاب، هما: الفصول التي تتناول المفاهيم النظرية، والفصول التي تتناول المشاريع العملية؛ إذ سنتعلم في الفصول النظرية عن جانب معين من لغة رست، بينما سنبني في فصول المشاريع برامج بسيطة سويًّا بتطبيق ما تعلمناه إلى حد تلك النقطة. فصول المشاريع هي الفصل الأول والثاني عشر والعشرين والفصول الأخرى هي فصول نظرية.
يمكنك قراءة فصول الكتاب على شكل مقالات من هذه الصفحة، صفحة التصنيف «البرمجة بلغة رست»، أو مباشرة مما يلي:
- تعلم لغة رست Rust: البدايات
- برمجة لعبة تخمين أعداد
- مبادئ البرمجة الأساسية
- الملكية Ownership
- استخدام الهياكل لتنظيم البيانات
- التعدادات Enums
- إدارة المشاريع الكبيرة عبر الحزم والوحدات والوحدات المصرفة
- التجميعات الشائعة
- الأخطاء والتعامل معها
- الأنواع المعممة Generic Types والسمات Traits ودورات الحياة Lifetimes
- كتابة الاختبارات الآلية
- التعامل مع الدخل والخرج: كتابة برنامج سطر أوامر Command Line
- ميزات البرمجة الوظيفية: المكررات والمنغلقات
- نظرة مفصلة عن كارجو Cargo
-
المؤشرات الذكية Smart Pointers
- المؤشرات الذكية Smart Pointers
- معاملة المؤشرات الذكية Smart Pointers مثل مراجع نمطية Regular References باستخدام سمة Deref في لغة رست
- تنفيذ شيفرة برمجية عند تحرير الذاكرة cleanup باستخدام السمة Drop في لغة رست
-
المؤشر Rc
الذكي واستخدامه للإشارة إلى عدد المراجع في لغة رست Rust -
المؤشر الذكي Refcell
ونمط قابلية التغيير الداخلي interior mutability في لغة رست Rust - حلقات المرجع Reference Cycles وتسببها بتسريب الذاكرة Memory Leak في لغة رست Rust
- البرمجة المتزامنة الآمنة
- مزايا البرمجة كائنية التوجه Object-Oriented Programming
- الأنماط والمطابقات
- ميزات متقدمة
- بناء خادم ويب متعدد مهام المعالجة