Introduzione
Il programma “Ciao, mondo!” è una tradizione classica e rispettata nel campo della programmazione informatica. È un piccolo e completo primo programma per principianti ed è un buon modo per assicurarsi che l’ambiente sia configurato correttamente.
In questo tutorial ti guiderò nella creazione di questo programma in Ruby. Tuttavia, per rendere il programma più interessante, modificherai il tradizionale programma “Ciao, mondo” in modo che chieda all’utente il suo nome. Userai poi il nome nel saluto. Quando avrai finito con il tutorial, avrai un programma che assomiglia a questo quando lo esegui:
OutputPlease enter your name.
Sammy
Hello, Sammy! I'm Ruby!
Prerequisiti
Dovresti avere un ambiente di sviluppo Ruby locale configurato sul tuo computer. Configuralo seguendo uno di questi tutorial:
- Come Installare Ruby e Configurare un Ambiente di Programmazione Locale su macOS
- Come installare Ruby e configurare un ambiente di programmazione locale su Ubuntu 16.04
- Come installare Ruby e configurare un ambiente di programmazione locale su Windows 10
Passo 1 — Scrivere il programma di base “Ciao, mondo!”
Per scrivere il programma “Ciao, mondo!”, apri un editor di testo della riga di comando come nano
e crea un nuovo file:
- nano hello.rb
Una volta che il file di testo si apre nella finestra del terminale, digiterai il tuo programma:
puts "Hello, World!"
Analizziamo i diversi componenti del codice.
puts
è un metodo Ruby che dice al computer di stampare del testo sullo schermo.
Il metodo puts
è seguito da una sequenza di caratteri — Ciao, mondo!
, racchiusi tra virgolette. Qualsiasi carattere all’interno delle virgolette è chiamato una stringa. Il metodo puts
stamperà questa stringa sullo schermo quando il programma verrà eseguito.
Alcuni metodi, come il metodo puts
, sono inclusi di default in Ruby. Questi metodi integrati sono sempre disponibili quando si creano programmi Ruby. È anche possibile definire i propri metodi.
Salva ed esci da nano
digitando i tasti CONTROL
e X
, e quando ti viene chiesto di salvare il file, premi y
e premi ENTER
.
Proviamo il tuo programma.
Passaggio 2 — Esecuzione di un Programma Ruby
Con il tuo programma “Ciao, mondo!” scritto, sei pronto per eseguire il programma. Utilizzerai il comando ruby
, seguito dal nome del file che hai appena creato.
- ruby hello.rb
Il programma verrà eseguito e visualizzerà questo output:
OutputHello, World!
Esploriamo cosa è effettivamente successo.
L’esecuzione del comando ruby
ha avviato l’interprete Ruby. L’interprete Ruby ha letto il file specificato ed ha valutato il suo contenuto. Ha eseguito la linea puts "Ciao, mondo!"
chiamando la funzione puts
. Il valore di stringa di Ciao, mondo!
è stato passato alla funzione.
In questo esempio, la stringa Ciao, mondo!
è anche chiamata un argomento poiché è un valore che viene passato a un metodo.
I citazioni che si trovano da entrambi i lati di Hello, World!
non sono state stampate a schermo perché vengono utilizzate per informare Ruby che contengono una stringa. Le virgolette delimitano dove inizia e finisce la stringa.
Il programma funziona, ma è possibile renderlo più interattivo. Esploriamo come.
Passaggio 3 — Richiesta di Input
Ogni volta che esegui il tuo programma, produce la stessa output. Chiediamo alla persona che esegue il tuo programma di inserire il suo nome. Puoi poi utilizzare quel nome nell’output.
invece di modificare il tuo programma esistente, crea un nuovo programma chiamato greeting.rb
nell’editor nano
:
- nano greeting.rb
Per prima cosa, aggiungi questa riga, che chiede all’utente di inserire il proprio nome:
puts "Please enter your name."
Ancora una volta, usa il metodo puts
per stampare del testo a schermo.
Ora aggiungi questa riga per catturare l’input dell’utente:
puts "Please enter your name."
name = gets
Questa riga successiva è un po’ più complessa. Analizziamola.
Il metodo gets
dice al computer di attendere l’input dalla tastiera. Questo mette in pausa il programma, consentendo all’utente di inserire qualsiasi testo desideri. Il programma continuerà quando l’utente preme il tasto ENTER
sulla tastiera. Tutti i tasti premuti, inclusi il tasto ENTER
, vengono quindi catturati e convertiti in una stringa di caratteri.
Vuoi utilizzare questi caratteri nel output del tuo programma, quindi salva questi caratteri assegnando la stringa a una variabile chiamata name
. Ruby memorizza quella stringa nella memoria del tuo computer fino a quando il programma finisce.
Infine, aggiungi questa linea per stampare l’output:
puts "Please enter your name."
name = gets
puts "Hi, #{name}! I'm Ruby!"
Usi nuovamente il metodo puts
, ma questa volta utilizzi una caratteristica di Ruby chiamata interpolazione di stringhe, che ti consente di prendere il valore assegnato a una variabile e inserirlo all’interno di una stringa. Invece della parola name
, otterrai il valore che hai salvato nella variabile name
, che dovrebbe essere il nome dell’utente.
Salva ed esci da nano
premendo CTRL+X
, e premi y
quando ti viene chiesto di salvare il file, quindi premi ENTER
.
Ora esegui il programma con questo comando:
- ruby greeting.rb
Ti verrà chiesto il tuo nome, quindi inseriscilo e premi ENTER
. L’output potrebbe non essere esattamente quello che ti aspetti:
OutputPlease enter your name.
Sammy
Hi, Sammy
! I'm Ruby!
Invece di Ciao, Sammy! Sono Ruby!
, c’è un’interruzione di riga subito dopo il nome.
Il programma ha catturato tutti i tuoi tasti premuti, compreso il tasto ENTER
che hai premuto per dire al programma di continuare. In una stringa, premere il tasto ENTER
crea un carattere speciale che inserisce una nuova riga. L’output del programma sta facendo esattamente ciò che gli hai detto di fare; sta visualizzando il testo che hai inserito, inclusa quella nuova riga. È solo che non è quello che volevi. Ma puoi risolverlo.
Apri il file greeting.rb
nel tuo editor:
- nano greeting.rb
Trova questa linea nel tuo programma:
name = gets
E modificalo in modo che sembri così:
name = gets.chop
Questo utilizza il metodo chop
di Ruby sulla stringa che abbiamo catturato con gets
. Il metodo chop
rimuove l’ultimo carattere da una stringa. In questo caso, rimuove il carattere di nuova riga alla fine della stringa creato quando abbiamo premuto INVIO
.
Salva ed esci da nano
. Premi CTRL+X
, quindi premi y
quando ti viene chiesto di salvare il file.
Esegui nuovamente il programma:
- ruby greeting.rb
Questa volta, dopo aver inserito il tuo nome e premuto INVIO
, ottieni l’output previsto:
OutputPlease enter your name.
Sammy
Hi, Sammy! I'm Ruby!
Ora hai un programma Ruby che prende l’input da un utente e lo stampa a schermo.
Conclusioni
Ora che sai come richiedere l’input, elaborare i risultati e visualizzare l’output, cerca di espandere ulteriormente il tuo programma. Ad esempio, chiedi il colore preferito dell’utente e fai dire al programma che il suo colore preferito è il rosso. Puoi persino provare a utilizzare la stessa tecnica per creare un semplice programma Mad-Lib.
Source:
https://www.digitalocean.com/community/tutorials/how-to-write-your-first-ruby-program