if element == nil then
puts 'Youppppy!'
end
in Ruby posso utilizzare il metodo nil? implementato in ogni oggetto ed eliminare il then che non è obbligatorio. Quindi il nostro codice diventerà:
if element.nil?
puts 'Youppppy!'
end
per sintetizzare ancora, posso utilizzare lo stile condiviso con Perl, ovvero posso mettere la condizione dopo l'espressione da eseguire:
puts 'Youppppy!' if element == nil
che può essere ancora più accorciato in
puts 'Youppppy!' unless element
Un altro esempio che possiamo fare di come ruby sia molto compatto è con le iterazioni.
se volessi iterare l'array
pagine_interessanti = [1,2,5,7,19,45,99,167,98]
in uno linguaggio come il C dovrei fare
int pagine_interessanti[] = {1,2,5,7,19,45,99,167,98}
for (count = 1; count <= sizeof(pagine_interessanti), count++){
printf("Ho trovato interessante la pagina %dn",pagine_interessanti[count]);
}
in Ruby tutto diventa più semplice!
pagine_interessanti = [1,2,5,7,19,45,99,167,98]
for pagina in pagine_interessanti do
puts "Ho trovato interessante la pagina #{pagina}n"
end
il ciclo può diventare
pagine_interessanti = [1,2,5,7,19,45,99,167,98]
pagine_interessanti.each |pagina|
puts "Ho trovato interessante la pagina #{pagina}n"
end
...accorciando...
pagine_interessanti = [1,2,5,7,19,45,99,167,98]
pagine_interessanti.each{|pagina| puts "Ho trovato interessante la pagina #{pagina}n"}
oppure
[1,2,5,7,19,45,99,167,98].each{|pagina| puts "Ho trovato interessante la pagina #{pagina}n"}
come direbbe il buon Zio Ben di SpiderMan "Un grande potere impone grandi responsabilità”...
quindi anche se abbiamo a disposizione una sintassi molto compatta e malleabile bisogna fare attenzione a scrivere codice che sia comprensibile agli altri componenti del nostro team.
Nessun commento:
Posta un commento