3851
Commento:
|
5119
spostato capitolo RVM su pagina Programmazione/Ruby/Rvm
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 2: | Linea 2: |
#language it | |
Linea 3: | Linea 4: |
#language it | <<Indice(depth=1)>> <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=421926"; rilasci="20.04";)>> |
Linea 5: | Linea 8: |
'''Ruby''' è un [http://it.wikipedia.org/wiki/Linguaggio_di_programmazione linguaggio] di [http://it.wikipedia.org/wiki/Scripting scripting] completamente a [http://it.wikipedia.org/wiki/Programmazione_orientata_agli_oggetti oggetti]. Nato nel [http://it.wikipedia.org/wiki/1993 1993] come progetto personale del [http://it.wikipedia.org/wiki/Giappone giapponese] [http://it.wikipedia.org/wiki/Yukihiro_Matsumoto Yukihiro Matsumoto] (spesso chiamato semplicemente ''Matz''), Ruby è stato il primo linguaggio di programmazione sviluppato in Oriente a guadagnare abbastanza popolarità da superare la barriera linguistica che separa l'[http://it.wikipedia.org/wiki/Informatica informatica] nipponica da quella internazionale e ad essere usato anche in Occidente in progetti di rilievo. | |
Linea 7: | Linea 9: |
Il linguaggio che ha maggiormente ispirato l'autore è lo [http://it.wikipedia.org/wiki/Smalltalk Smalltalk]^[[http://it.wikipedia.org/wiki/Wikipedia:Cita_le_fonti senza fonte]]^, da cui Ruby ha tratto la maggior parte delle sue caratteristiche. A seguire ci sono il [http://it.wikipedia.org/wiki/Lisp Lisp] (ed in generale i [http://it.wikipedia.org/wiki/Programmazione_funzionale linguaggi funzionali]), da cui provengono le [http://it.wikipedia.org/wiki/Chiusura_(informatica) chiusure] (blocchi o ''proc'', in Ruby), e il [http://it.wikipedia.org/wiki/Perl Perl], per la [http://it.wikipedia.org/wiki/Sintassi sintassi] e l'espressività. Nell'implementazione corrente, Ruby è un linguaggio interpretato. L'[http://it.wikipedia.org/wiki/Interprete_(informatica) interprete], scritto in [http://it.wikipedia.org/wiki/C_(linguaggio) C], è rilasciato con una doppia [http://it.wikipedia.org/wiki/Licenza_(informatica) licenza], [http://it.wikipedia.org/wiki/Licenza_GPL GPL] oppure "Licenza Ruby", in stile [http://it.wikipedia.org/wiki/Licenza_BSD BSD], e si trova attualmente alla versione 1.9.1. Negli ultimi anni la popolarità di Ruby ha subito una forte impennata, dovuta alla comparsa di framework di successo per lo sviluppo di applicazioni web, come [http://it.wikipedia.org/w/index.php?title=Nitro_(software)&action=edit&redlink=1 Nitro] e [http://it.wikipedia.org/wiki/Ruby_on_Rails Ruby On Rails], nonché del [http://it.wikipedia.org/w/index.php?title=Metasploit_Framework&action=edit&redlink=1 Metasploit Framework], ambiente per la creazione e l’esecuzione facilitata di [http://it.wikipedia.org/wiki/Exploit exploit]. (Da Wikipedia) |
'''Ruby''' è un linguaggio di programmazione a oggetti particolarmente utilizzato in ambito web.<<BR>> Viene qui mostrato come installare i pacchetti base disponibili direttamente in Ubuntu oppure utilizzando strumenti più adatti in ambiente di sviluppo ('''RVM''', '''!RubyGems'''). |
Linea 14: | Linea 13: |
Per installare l'interprete ruby è sufficiente scegliere il pacchetto ''ruby'' utilizzando ["AmministrazioneSistema/Synaptic"] o da riga di comando: | |
Linea 16: | Linea 14: |
{{{ sudo apt-get install ruby irb |
{{{#!wiki tip Se si avesse la necessità di installare una versione di '''Ruby''' differente da quella presente nei [[Repository|repository]] o comunque avere a disposizionie più versioni in ambiente di sviluppo, è consigliabile seguire la guida su [[Programmazione/Ruby/Rvm|RVM]]. |
Linea 20: | Linea 18: |
== Ruby 1.8.x o Ruby 1.9.x == Attualmente il pacchetto ruby si riferisce a '''ruby 1.8''', la versione stabile e più usata. Nel repository è disponibile anche ruby 1.9 che offre prestazioni, ma il supporto di librerie di terze parti non è ancora completo. '''Ruby 1.9''' è supportato da versioni di Ruby on Rails 2.3 e superiori. |
[[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://ruby|ruby]]. |
Linea 23: | Linea 20: |
= Iniziare ad usare Ruby = Normalmente i sorgenti ruby hanno estensione .rb e per avviarli si digita: ruby ''sorgente''.rb Per prendere un po' di famigliarità si può usare '''irb''' che è una console interattiva |
= Installazione tramite RVM = |
Linea 26: | Linea 22: |
{{{ $ irb # aprite un terminale e digitate irb irb(main):001:0> puts 'ciao mondo' ciao mondo => nil irb(main):002:0> 4.times{ puts Time.now } Sat Apr 18 19:57:49 +0200 2009 Sat Apr 18 19:57:49 +0200 2009 Sat Apr 18 19:57:49 +0200 2009 Sat Apr 18 19:57:49 +0200 2009 |
* Consultare il [[Programmazione/Ruby/Rvm|seguente guida]]. = Esecuzione script = Viene preso come esempio uno script che simula il lancio di un dado... con la speranza di fare 6 ;) 0. Salvare nella propria '''Home''' un file di testo col nome `dado.rb` contenente le seguenti stringhe:{{{ print 'Premi invio per tirare il dado ' gets risultato = rand(1..6) risultato == 6 ? puts('Wow! Hai fatto 6 :)') : puts("Hai fatto #{risultato}") }}} 0. Digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{ ruby dado.rb }}}Se tutto è stato eseguito nel modo corretto si avvia un semplice gioco interattivo in cui viene lanciato un dado e si visualizzerà un risultato di questo tipo:{{{ Premi invio per tirare il dado Hai fatto 3 |
Linea 38: | Linea 43: |
= Altre risorse = Ruby Italia: http://ruby-it.org |
In alternativa: 0. inserire all'inizio dello script la direttiva:{{{ #!/usr/bin/env ruby #!/usr/bin/env ruby }}} 0. Rendere lo script eseguibile con il comando:{{{ chmod u+x dado.rb }}} 0. Sarà ora possibile avviare lo script con il comando:{{{ ./dado.rb }}} |
Linea 41: | Linea 55: |
= Shell interattiva = | |
Linea 42: | Linea 57: |
Sito ufficialeRuby: http://www.ruby-lang.org/it | '''Ruby''' è provvisto di una shell interattiva chiamata '''irb'''. Tuttavia viene spesso preferita '''[[https://pry.github.io/|pry]]''' in quanto più performante e con funzionalità aggiuntive in particolare per il debug. In tal caso [[AmministrazioneSistema/InstallareProgrammi|installare]] il pacchetto [[apt://pry|pry]]. |
Linea 44: | Linea 59: |
* Per invocare la shell interattiva sarà, a seconda dei casi, sufficiente digitare il comando:{{{ irb }}}oppure:{{{ pry }}} |
|
Linea 45: | Linea 65: |
Un video che realizza una piccola applicazione in Ruby e Gtk: http://grigio.org/linuxcast_14_programmare_linux | * Per uscire dalla shell interattiva, digitare:{{{ exit }}} oppure la combinazione di tasti '''Ctrl+Z'''. = Gestore pacchetti RubyGem = '''Ruby''' ha internamente un suo gestore di pacchetti [[https://rubygems.org/|RubyGem]] per aggiungere funzionalità al linguaggio.<<BR>> Tuttavia è bene fare un distinguo in base al caso si stia utilizzando la versione di '''Ruby''' resa disponibile da Ubuntu oppure tramite un [[#rvm|manager di versione]].<<BR>> * Se si sta utilizzando la versione fornita da Ubuntu, è bene sapere che una vasta gamma di pacchetti aggiuntivi sono già presenti all'interno dei repository di Ubuntu. Pertanto non sarà necessario ricorrere a metodi alternativi per installarli. * Se invece si sta utilizzando una versione di Ruby installata tramite '''manager di versione''' è opportuno affidarsi a '''!RubyGem''' per installare pacchetti aggiuntivi. Il generico comando per installare un pacchetto è del tipo: {{{ gem install NOME_PACCHETTO }}} Ad esempio, per installare il pacchetto ''rubocop'', il comando diviene: {{{ gem install rubocop }}} Per installare una versione specifica, ad es. la '''0.86.0''', il comando diviene: {{{ gem install rubocop --version 0.86.0 }}} {{{#!wiki tip Per ulteriori comandi consultare la [[https://guides.rubygems.org/rubygems-basics/|guida ufficiale]]. }}} = Rubocop = '''[[https://rubocop.org/|RuboCop]]''' è un analizzatore di codice in grado di rilevare eventuali divergenze dalle [[https://github.com/rubocop/ruby-style-guide/blob/master/README.adoc|linee guida]] stilistiche riguardanti la sintassi di '''Ruby'''.<<BR>> [[AmministrazioneSistema/InstallareProgrammi|Installabile]] tramite il pacchetto [[apt://rubocop|rubocop]], può rivelarsi uno strumento molto utile a migliorare il codice rilevando il cattivo utilizzo di indentazione, spazi bianchi, variabili non utilizzate, metodi (funzioni in Ruby) eccessivamente lunghe, ecc.. Supponendo di aver creato il file `script.rb` nella propria '''Home''', per verificarne il codice digitare nel terminale:{{{ rubocop script.rb }}} = Guide per principianti = * [[https://launchschool.com/books/|Sito launchschool.com]] * [[http://rubymonstas.org/|Sito rubymonstas.org]] * [[https://www.rubyguides.com|Sito rubyguides.com]] = Ulteriori risorse = * [[http://www.ruby-lang.org/it|Sito ufficiale del progetto]] * [[https://ruby-doc.com/|Documentazione ufficiale]] * [[https://rvm.io/|Sito ufficiale di RVM]] * [[https://rubygems.org/|Sito ufficiale di RubyGems]] * [[Programmazione/RubyOnRails|Guida per Ruby on Rails]] |
Linea 47: | Linea 117: |
CategoryNuoviDocumenti | CategoryProgrammazione |
Guida verificata con Ubuntu: 20.04
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
Ruby è un linguaggio di programmazione a oggetti particolarmente utilizzato in ambito web.
Viene qui mostrato come installare i pacchetti base disponibili direttamente in Ubuntu oppure utilizzando strumenti più adatti in ambiente di sviluppo (RVM, RubyGems).
Installazione
Se si avesse la necessità di installare una versione di Ruby differente da quella presente nei repository o comunque avere a disposizionie più versioni in ambiente di sviluppo, è consigliabile seguire la guida su RVM.
Installare il pacchetto ruby.
Installazione tramite RVM
Consultare il seguente guida.
Esecuzione script
Viene preso come esempio uno script che simula il lancio di un dado... con la speranza di fare 6
Salvare nella propria Home un file di testo col nome dado.rb contenente le seguenti stringhe:
print 'Premi invio per tirare il dado ' gets risultato = rand(1..6) risultato == 6 ? puts('Wow! Hai fatto 6 :)') : puts("Hai fatto #{risultato}")
Digitare nel terminale:
ruby dado.rb
Se tutto è stato eseguito nel modo corretto si avvia un semplice gioco interattivo in cui viene lanciato un dado e si visualizzerà un risultato di questo tipo:
Premi invio per tirare il dado Hai fatto 3
In alternativa:
inserire all'inizio dello script la direttiva:
#!/usr/bin/env ruby
Rendere lo script eseguibile con il comando:
chmod u+x dado.rb
Sarà ora possibile avviare lo script con il comando:
./dado.rb
Shell interattiva
Ruby è provvisto di una shell interattiva chiamata irb. Tuttavia viene spesso preferita pry in quanto più performante e con funzionalità aggiuntive in particolare per il debug. In tal caso installare il pacchetto pry.
Per invocare la shell interattiva sarà, a seconda dei casi, sufficiente digitare il comando:
irb
oppure:
pry
Per uscire dalla shell interattiva, digitare:
exit
oppure la combinazione di tasti Ctrl+Z.
Gestore pacchetti RubyGem
Ruby ha internamente un suo gestore di pacchetti RubyGem per aggiungere funzionalità al linguaggio.
Tuttavia è bene fare un distinguo in base al caso si stia utilizzando la versione di Ruby resa disponibile da Ubuntu oppure tramite un manager di versione.
- Se si sta utilizzando la versione fornita da Ubuntu, è bene sapere che una vasta gamma di pacchetti aggiuntivi sono già presenti all'interno dei repository di Ubuntu. Pertanto non sarà necessario ricorrere a metodi alternativi per installarli.
Se invece si sta utilizzando una versione di Ruby installata tramite manager di versione è opportuno affidarsi a RubyGem per installare pacchetti aggiuntivi.
Il generico comando per installare un pacchetto è del tipo:
gem install NOME_PACCHETTO
Ad esempio, per installare il pacchetto rubocop, il comando diviene:
gem install rubocop
Per installare una versione specifica, ad es. la 0.86.0, il comando diviene:
gem install rubocop --version 0.86.0
Per ulteriori comandi consultare la guida ufficiale.
Rubocop
RuboCop è un analizzatore di codice in grado di rilevare eventuali divergenze dalle linee guida stilistiche riguardanti la sintassi di Ruby.
Installabile tramite il pacchetto rubocop, può rivelarsi uno strumento molto utile a migliorare il codice rilevando il cattivo utilizzo di indentazione, spazi bianchi, variabili non utilizzate, metodi (funzioni in Ruby) eccessivamente lunghe, ecc..
Supponendo di aver creato il file script.rb nella propria Home, per verificarne il codice digitare nel terminale:
rubocop script.rb
Guide per principianti