Corso di Raku / Avanzato / Moduli / Basi dei moduli

Creare moduli

Man mano che i programmi crescono, e utile suddividerli in parti riutilizzabili. Un modulo e un’unita di codice, conservata in un proprio file, che altri programmi possono caricare e utilizzare.

Un file di modulo ha l’estensione .rakumod e inizia nominando il modulo con unit module. Le subroutine che scrivi al suo interno sono private per impostazione predefinita; per renderne una disponibile al codice che usa il modulo, contrassegnala con il tratto is export.

Ecco un modulo salvato in un file chiamato Greeting.rakumod:

unit module Greeting;

sub hello($name) is export {
    return "Hello, $name!";
}

La subroutine hello porta is export, quindi sara visibile a qualsiasi programma che usi il modulo. Una subroutine senza is export rimarrebbe privata del modulo.

Un modulo puo anche condividere dati tramite variabili our, che diventano raggiungibili attraverso il nome del modulo. Aggiungere un numero di versione a Greeting e semplice come una riga in piu nel file:

our $version = '1.0';

Con quella riga in Greeting.rakumod, il valore e disponibile come $Greeting::version ovunque il modulo sia caricato.

I prossimi argomenti mostrano come un programma carica un tale modulo e cosa esattamente ottiene da esso.

Pratica

Risolvi 1 quiz sul contenuto di questo argomento.

Basi dei moduli   |   Quiz — is export


💪 Oppure vai direttamente agli esercizi di questa sezione.