Rust:
Koodin järjestäminen funktioihin
Kuinka:
Kuvittele, että sinulla on koodia, joka laskee ympyrän alan useita kertoja. Sen sijaan, että toistaisit kaavan, kääriydyt sen funktioon.
fn laske_ympyran_ala(sade: f64) -> f64 {
std::f64::consts::PI * sade.powi(2)
}
fn main() {
let sade = 5.0;
let ala = laske_ympyran_ala(sade);
println!("Ympyrän ala on: {}", ala);
}
Tuloste:
Ympyrän ala on: 78.53981633974483
Syväsukellus
Historiallisesti funktiot ovat matematiikasta, missä ne kuvaavat syötteitä tuloksiin. Ohjelmoinnissa ne ovat olleet olemassa jo assembly-päivistä lähtien, vaikkakin kutsuimme niitä ‘aliohjelmiksi’. Rust-funktiot voivat palauttaa arvoja ja jopa muita funktioita ansiostaan ensiluokkaisille funktioille ja sulkemisille.
Vaihtoehtoja? Sisäänkirjoitettu koodi tai makrot, mutta ne ovat sotkuisia monimutkaiselle logiikalle. Oliot metodeineen ovat toinen tapa järjestää toiminnallisuutta, toisenlainen maku kuin itsenäiset funktiot.
Toteutus Rustissa on melko suoraviivaista. Funktiot ilmoittavat parametriensa tyypit ja paluutyypin. Nimeämiskonventio on ‘käärmekeissi’. Sinulla on julkiset funktiot (pub fn
) käytettäväksi moduulin ulkopuolella ja yksityiset sisäiseen käyttöön. Ja Rustissa on tämä siisti ominaisuus, ettei return
-avainsanaa tarvita funktion viimeisen lausekkeen kohdalla.
Katso myös
Tutustu näihin saadaksesi lisätietoja:
- The Rust Programming Language Book: Funktiot
- Rust by Example Funktioista