مرحبًا، أيها العالم
دعونا نبدأ بأبسط برنامج ممكن في Rust، وهو برنامج كلاسيكي لطباعة Hello World:
fn main() { println!("Hello 🌍!"); }
ما تراه:
- يتم تعريف الدوال باستخدام
fn
. - يتم تحديد الكتل باستخدام الأقواس المعقوفة مثل C و C++.
- دالة
main
هي نقطة الدخول للبرنامج. - Rust has hygienic macros,
println!
is an example of this. - سلاسل Rust مرمّزه بـ UTF-8 ويمكن أن تحتوي على أي حرف Unicode.
تحاول هذه الشريحة تجعل الطلاب مرتاحين مع كود Rust. سيرون الكثير منه خلال الأيام الأربعة القادمة لذا نبدأ بشيء صغير ومألوف.
نقاط رئيسية:
-
Rust يشبه إلى حد كبير اللغات الأخرى في تقليد C/C++/Java. إنه لغة imperative ولا تحاول إعادة اختراع الأشياء إلا إذا كان ذلك ضروريًا للغاية.
-
Rust حديثة وتدعم بشكل كامل أشياء مثل Unicode.
-
Rust يستخدم الماكروهات في الحالات التي تريد فيها الحصول على عدد متغير من الوسائط (لا يوجد overloading للدوال).
-
كون الماكروهات (macros) 'hygienic' يعني أنها لا تلتقط identifiers من scope الذي تُستخدم فيه عن طريق الخطأ. في الواقع، ماكروهات Rust (macros) هي فقط hygienic جزئيًا.
-
Rust متعدد الأنماط (multi-paradigm). على سبيل المثال، يحتوي على ميزات قوية لبرمجة الكائنات (object-oriented programming features)، وعلى الرغم من أنه ليس لغة وظيفية، إلا أنه يتضمن مجموعة من المفاهيم الوظيفية (functional concepts).