Rust:
ארגון קוד לתוך פונקציות
איך לעשות:
נניח שיש לך קוד שמחשב את שטח המעגל מספר פעמים. במקום לחזור על הנוסחה, אתה מכניס אותה לתוך פונקציה.
fn calculate_circle_area(radius: f64) -> f64 {
std::f64::consts::PI * radius.powi(2)
}
fn main() {
let radius = 5.0;
let area = calculate_circle_area(radius);
println!("שטח המעגל הוא: {}", area);
}
פלט:
שטח המעגל הוא: 78.53981633974483
צלילה עמוקה
בהיסטוריה, פונקציות הגיעו מהמתמטיקה, שם הן ממפות קלטים לפלטים. בתכנות, הן קיימות כבר מימי האסמבלי, אף על פי שקראנו להן ‘תת-פרוצדורות’. פונקציות ב-Rust יכולות להחזיר ערכים ואף פונקציות אחרות בזכות פונקציות מדרגה ראשונה וסגירות.
אלטרנטיבות? קוד מוטמע או מקרוסים, אך הם מבולגנים עבור לוגיקה מורכבת. עצמים עם מתודות הם דרך נוספת לארגן פונקציונליות, טעם שונה מאשר פונקציות עצמאיות.
היישום ב-Rust הוא די ישיר. פונקציות מצהירות על סוגי הפרמטרים וסוג ההחזרה שלהן. הן משתמשות ב-‘snake case’ לשמות לפי מסורת. יש לך את הפונקציות הציבוריות (pub fn
) לשימוש מחוץ למודול ואת הפרטיות לשימוש פנימי. ול-Rust יש תכונה מגניבה שבה אינך זקוק למילת המפתח return
עבור הביטוי האחרון בפונקציה.
ראה גם
בדוק את אלו למידע נוסף: