Corso di Raku / Oggetti, input/output ed eccezioni / Classi e oggetti / Attributi / Exercises / Un libro

Soluzione: Un libro

Ecco una possibile soluzione del compito.

Codice

class Book {
    has Str $.title;
    has Str $.author;
}

my $b = Book.new(title => 'Raku', author => 'Larry');
say "{$b.title} by {$b.author}";

🦋 Trova il programma nel file book.raku.

Output

Raku by Larry

Commenti

  1. Ciascuna delle dichiarazioni has $.title e has $.author dichiara un attributo insieme a un accessore in lettura.

  2. Entrambi gli accessori sono usati dentro un’unica stringa fra virgolette doppie. Ciascuno è racchiuso fra parentesi graffe — {$b.title} e {$b.author} — che è la forma dell’interpolazione di codice: ciò che sta fra le graffe viene eseguito e il suo risultato viene inserito, quindi gli accessori vengono chiamati e i loro valori messi nella stringa.

  3. Entrambi gli attributi sono stringhe, quindi conviene dichiararli come tali.

Un libro   |   Un’etichetta modificabile