Corsi on-line
Chiudi
Newsletter:
  • Seguici su Facebook
  • Seguici su Twitter
  • Seguici su Google+
  • Seguici via RSS
  • Seguici col tuo Smartphone

Come Ruby vede le stringhe

Nell'immagine riportata nel capitolo precedente è stata mostrata una schermata della shell di Fxri; questo programma è estremamente semplice da utilizzare: sulla sinistra è possibile richiamare comandi e costrutti con un pratico motore di ricerca (oltre 13 mila voci); sulla destra in alto avremo una descrizione della voce che abbiamo cercato; sulla destra in basso abbiamo invece la vera e propria Shell in cui digitare le istruzioni in Ruby.

Ora portiamo il puntatore del mouse sulla Shell e digitiamo la semplice istruzione:

puts 'Hello, world!'
Con un semplice invio avremo in output la stringa:
Hello, world!
"Smontiamo" il nostro primo scriptino in Ruby: Ruby, come PHP, accetta sia gli apici singoli ('...') che quelli doppi ("..."). Queste due tipologie di definizione delle stringhe non sono totalmente intercambiabili perchè generano comportamenti diversi a seconda dei casi.

Una stringa contenuta tra doppi apici consente di utilizzare i caratteri di escape preceduti da un backslash ("\") e l'interpretazione di espressioni in cui è presente il costrutto #{} per l'interpolazione che vedremo a breve.
Una stringa tra apici singoli non genera interpretazioni quindi la stringa verrà stampata esattamente nella forma in cui viene passata all'esecutore.

"puts" non è l'unica istruzione per la stampa di Ruby; analogamente, ma con alcune caratteristiche distintive, possono essere utilizzati anche p e print.
"print" viene considerato un "puts di basso livello" (senza accezioni qualitative); "p" permette il dump delle variabili e il loro quoting.

All'interno di un listato in Ruby è possibile inserire dei commenti, cioè "annotazioni" dello sviluppatore che non sono destinate a partecipare all'esecuzione del programma nè ad essere stampate.
Per introdurre dei commenti nel codice è possibile utilizzare due metodi: porre il simbolo dell'asterisco all'inizio di un commento (per i commenti su riga singola) o scrivere più righe di commento all'interno dei deilimitatori =begin e =end:

# puts aggiunge \n se necessario:
puts 'Hello World!'
puts 'Come va?'

=begin
print non inserisce newline nelle stringhe di output
questo deve essere indicato dallo sviluppatore
ad esempio:
=end
print "Hello World\n"
print "Ciao"
Utilizzando Fxri per stampare la vostra prima stringa avrete sicuramente notato nella Shell la presenza di due voci: irb(main) e nil.
IRB (Interactive Ruby) è un REPL (Read-Eval-Print Loop), cioè un interprete che lavora in modalità interattiva consentendo di tenere traccia dei risultati delle proprie istruzioni; un REPL prevede 4 fasi:
  1. read (lettura di un'istruzione)
  2. eval (esecuzione)
  3. print (stampa del risultato)
  4. loop (iterazione)
Per velocizzare le fasi di sviluppo l'interprete si occupa di definire una classe automaticamente, main, che sarà anche il nome del modulo corrente; nil è invece un valore speciale (come null in Java) dato dal fatto che "puts" non necessita di restituire un valore utile e di conseguenza restituisce "nil".

Corsi
Corso Ruby e Ruby On RailsCorso Ruby e Ruby On Rails
Creare software ed applicazioni Web con Ruby e ROR. A partire da 49 €.
Sommario
Annunci

Mr.Webmaster

Pubblicità
Chi Siamo
Contattaci
Collabora
Note Legali
© 2003 - 2012 Mr.Webmaster - Il portale dei Webmaster Italiani - Tutti i diritti riservati | Powered by IKIweb Internet Media S.r.l. - PIVA 02848390122