diff options
Diffstat (limited to 'it-it/ruby-it.html.markdown')
| -rw-r--r-- | it-it/ruby-it.html.markdown | 49 | 
1 files changed, 29 insertions, 20 deletions
diff --git a/it-it/ruby-it.html.markdown b/it-it/ruby-it.html.markdown index c082a987..cba636f5 100644 --- a/it-it/ruby-it.html.markdown +++ b/it-it/ruby-it.html.markdown @@ -80,8 +80,8 @@ false.class #=> FalseClass  2 <= 2 #=> true  2 >= 2 #=> true -# Operatori di confronto combinati (ritorna '1' quando il primo argomento è più grande, -# '-1' quando il secondo argomento è più grande, altrimenti '0') +# Operatori di confronto combinati (ritorna '1' quando il primo argomento è più +# grande, '-1' quando il secondo argomento è più grande, altrimenti '0')  1 <=> 10 #=> -1  10 <=> 1 #=> 1  1 <=> 1 #=> 0 @@ -218,7 +218,8 @@ hash['numero'] #=> 5  # Accedere all'hash con una chiave che non esiste ritorna nil:  hash['nothing here'] #=> nil -# Quando si usano simboli come chiavi di un hash, si possono utilizzare queste sintassi: +# Quando si usano simboli come chiavi di un hash, si possono utilizzare +# queste sintassi:  hash = { :defcon => 3, :action => true }  hash.keys #=> [:defcon, :action] @@ -245,8 +246,8 @@ else  end  #Cicli -# In Ruby, i tradizionali cicli `for` non sono molto comuni. Questi semplici cicli, invece, -# sono implementati con un enumerable, usando `each`: +# In Ruby, i tradizionali cicli `for` non sono molto comuni. Questi semplici +# cicli, invece, sono implementati con un enumerable, usando `each`:  (1..5).each do |contatore|    puts "iterazione #{contatore}"  end @@ -297,8 +298,8 @@ end  # Esistono in Ruby ulteriori funzioni per fare i cicli,  # come per esempio 'map', 'reduce', 'inject' e altri. -# Nel caso di 'map', esso prende l'array sul quale si sta iterando, -# esegue le istruzioni definite nel blocco, e ritorna un array completamente nuovo. +# Nel caso di 'map', esso prende l'array sul quale si sta iterando, esegue +# le istruzioni definite nel blocco, e ritorna un array completamente nuovo.  array = [1,2,3,4,5]  doubled = array.map do |elemento|    elemento * 2 @@ -396,40 +397,43 @@ surround { puts 'hello world' }  # e gli permette di essere passato ad un altro metodo, legato ad uno scope  # differente o modificato. Questo è molto comune nella lista parametri del  # metodo, dove è frequente vedere il parametro '&block' in coda. Esso accetta -# il blocco, se ne è stato passato uno, e lo converte in un 'Proc'. Qui la denominazione -# è una convenzione; funzionerebbe anche con '&ananas'. +# il blocco, se ne è stato passato uno, e lo converte in un 'Proc'. +# Qui la denominazione è una convenzione; funzionerebbe anche con '&ananas'.  def guests(&block)    block.class #=> Proc    block.call(4)  end -# Il metodo 'call' del Proc è simile chiamare 'yield' quando è presente un blocco. +# Il metodo 'call' del Proc è simile allo 'yield' quando è presente un blocco.  # Gli argomenti passati a 'call' sono inoltrati al blocco come argomenti:  guests { |n| "You have #{n} guests." }  # => "You have 4 guests." -# L'operatore splat ("*") consente di convertire una lista di argomenti in un array +# L'operatore splat ("*") converte una lista di argomenti in un array  def guests(*array)    array.each { |guest| puts guest }  end  # Destrutturazione -# Ruby destruttura automaticamente gli array in assegnamento a variabili multiple: +# Ruby destruttura automaticamente gli array in assegnamento +# a variabili multiple:  a, b, c = [1, 2, 3]  a #=> 1  b #=> 2  c #=> 3 -# In alcuni casi si usa l'operatore splat ("*") per destrutturare un array in una lista. +# In alcuni casi si usa l'operatore splat ("*") per destrutturare +# un array in una lista.  classifica_concorrenti = ["John", "Sally", "Dingus", "Moe", "Marcy"]  def migliore(primo, secondo, terzo)    puts "I vincitori sono #{primo}, #{secondo}, e #{terzo}."  end -migliore *classifica_concorrenti.first(3) #=> I vincitori sono John, Sally, e Dingus. +migliore *classifica_concorrenti.first(3) +#=> I vincitori sono John, Sally, e Dingus.  # The splat operator can also be used in parameters:  def migliore(primo, secondo, terzo, *altri) @@ -441,7 +445,8 @@ migliore *classifica_concorrenti  #=> I vincitori sono John, Sally, e Dingus.  #=> C'erano altri 2 partecipanti. -# Per convenzione, tutti i metodi che ritornano un booleano terminano con un punto interrogativo +# Per convenzione, tutti i metodi che ritornano un booleano terminano +# con un punto interrogativo  5.even? #=> false  5.odd? #=> true @@ -468,7 +473,8 @@ class Umano    def initialize(nome, eta = 0)      # Assegna il valore dell'argomento alla variabile dell'istanza "nome"      @nome = nome -    # Se l'età non è fornita, verrà assegnato il valore di default indicato nella lista degli argomenti +    # Se l'età non è fornita, verrà assegnato il valore di default indicato +    # nella lista degli argomenti      @eta = eta    end @@ -482,7 +488,8 @@ class Umano      @nome    end -  # Le funzionalità di cui sopra posso essere incapsulate usando il metodo attr_accessor come segue +  # Le funzionalità di cui sopra posso essere incapsulate usando +  # il metodo attr_accessor come segue    attr_accessor :nome    # Getter/setter possono anche essere creati individualmente @@ -517,7 +524,8 @@ dwight.nome #=> "Dwight K. Schrute"  # Chiamare un metodo della classe  Umano.say('Ciao') #=> "Ciao" -# La visibilità della variabile (variable's scope) è determinata dal modo in cui le viene assegnato il nome +# La visibilità della variabile (variable's scope) è determinata dal modo +# in cui le viene assegnato il nome.  # Variabili che iniziano con $ hanno uno scope globale  $var = "Sono una variabile globale"  defined? $var #=> "global-variable" @@ -534,8 +542,9 @@ defined? @@var #=> "class variable"  Var = "Sono una costante"  defined? Var #=> "constant" -# Anche una classe è un oggetto in ruby. Quindi la classe può avere una variabile dell'istanza. -# Le variabili della classe sono condivise fra la classe e tutti i suoi discendenti. +# Anche una classe è un oggetto in ruby. Quindi la classe può avere +# una variabile dell'istanza. Le variabili della classe sono condivise +# fra la classe e tutti i suoi discendenti.  # Classe base  class Umano  | 
