Rust:
Organizowanie kodu w funkcje
Jak to zrobić:
Wyobraź sobie, że masz kod, który kilka razy oblicza powierzchnię koła. Zamiast powtarzać formułę, zamykasz ją w funkcji.
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!("Powierzchnia koła wynosi: {}", area);
}
Wynik:
Powierzchnia koła wynosi: 78.53981633974483
Dogłębna analiza
Historycznie, funkcje pochodzą z matematyki, gdzie przyporządkowują wejścia do wyjść. W kodowaniu są obecne już od czasów asemblera, chociaż nazywaliśmy je „podprogramami”. Funkcje w Rust mogą zwracać wartości, a nawet inne funkcje dzięki funkcjom pierwszoklasowym i domknięciom.
Alternatywy? Kod wbudowany lub makra, ale są bałaganem dla skomplikowanej logiki. Obiekty z metodami to inny sposób organizowania funkcjonalności, inny niż samodzielne funkcje.
Implementacja w Rust jest dość prosta. Funkcje deklarują typy swoich parametrów i typ zwracany. Przyjęło się, że nazwy są pisane ‘snake case’. Masz publiczne funkcje (pub fn
) do użytku poza modułem i prywatne do użytku wewnętrznego. I Rust ma tę fajną funkcję, że nie potrzebujesz słowa kluczowego return
dla ostatniego wyrażenia w funkcji.
Zobacz też
Sprawdź te materiały po więcej informacji: