3851
Commento:
|
7078
|
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 |
Ubuntu mette a disposizione nei suoi [[Repository|Repository]] ufficiali i pacchetti relativi a una determinata versione di '''Ruby'''.<<BR>> Questo può essere un limite qualora si abbia la necessità di fare riferimento a una versione differente o più specifiche versioni. In tal caso è preferibile affidarsi a un manager di versione come '''RVM'''. == Da repository Ubuntu == [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://ruby|ruby]]. == Tramite RVM == * Consultare il [[#rvm|seguente paragrafo]]. = 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 |
Linea 20: | Linea 45: |
== 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. = 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 {{{ $ 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 |
{{{#!wiki tip Per ulteriori comandi consultare la [[https://guides.rubygems.org/rubygems-basics/|guida ufficiale]]. |
Linea 38: | Linea 49: |
= Altre risorse = Ruby Italia: http://ruby-it.org |
= Esecuzione script = |
Linea 41: | Linea 51: |
Viene preso come esempio uno script che simula il lancio di un dado... con la speranza di fare 6 ;) | |
Linea 42: | Linea 53: |
Sito ufficialeRuby: http://www.ruby-lang.org/it | 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) |
Linea 44: | Linea 58: |
risultato == 6 ? puts('Wow! Hai fatto 6 :)') : puts("Hai fatto #{risultato}") | |
Linea 45: | Linea 60: |
Un video che realizza una piccola applicazione in Ruby e Gtk: http://grigio.org/linuxcast_14_programmare_linux | }}} 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 }}} 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 }}} = Shell interattiva = '''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]]. * 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'''. = 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 }}} <<Anchor(rvm)>> = RVM = Attraverso '''RVM''' ([[https://rvm.io/|Ruby Version Manager]]) sarà possibile in modo molto pratico: * installare più versioni di '''Ruby'''; * impostare la versione predefinita; * passare rapidamente da una versione all'altra. Seguono i passi per l'installazione e utilizzo base di '''RVM'''. Il tutto verrà installato in un ambiente ''sandboxed'' nella propria '''Home'''. == Installazione di RVM == 0. Impostare il terminale come shell di login: * '''Terminale GNOME''': 0. Dal menù selezionare '''Preferenze''' e quindi il proprio profilo. 0. Selezionare il tab '''Comando''' e mettere una spunta alla voce '''Eseguire il comando come una shell di login'''. * '''Terminale KDE''' 0. Dal menù selezionare '''''Impostazioni → Modifica profilo → Generale'''''. 0. Alla voce comando modificare il testo in modo che risulti:{{{ /bin/bash --login }}} 0. Installare il pacchetto ''curl'' digitando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{ sudo apt install curl }}} 0. Installare ''rvm'':{{{ curl -L get.rvm.io | bash -s stable --auto }}} 0. Aggiornare il profilo ''bash'':{{{ . ~/.bash_profile }}} 0. Installare eventuali dipendenze:{{{ rvm requirements }}} == Installazione di Ruby e utilizzo == Il numero di versione viene qui generalizzato in '''x.x.x'''. Avere cura di sostituirlo con la versione interessata ('''2.7.2''', '''3.0.0''', ecc..). ||<:-2 #cccccc> '''Comandi''' || || `rvm list known` || Lista versioni disponibili || || `rvm install ruby` || Installare ultima versione || || `rvm install ruby-x.x.x ` || Installare versione specifica || || `rvm --default use ruby-x.x.x` || Rendere versione predefinita || || `rvm use ruby-x.x.x ` || Seleziona versione da usare || = 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 163: |
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
Ubuntu mette a disposizione nei suoi Repository ufficiali i pacchetti relativi a una determinata versione di Ruby.
Questo può essere un limite qualora si abbia la necessità di fare riferimento a una versione differente o più specifiche versioni. In tal caso è preferibile affidarsi a un manager di versione come RVM.
Da repository Ubuntu
Installare il pacchetto ruby.
Tramite RVM
Consultare il seguente paragrafo.
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.
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.
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
RVM
Attraverso RVM (Ruby Version Manager) sarà possibile in modo molto pratico:
installare più versioni di Ruby;
- impostare la versione predefinita;
- passare rapidamente da una versione all'altra.
Seguono i passi per l'installazione e utilizzo base di RVM. Il tutto verrà installato in un ambiente sandboxed nella propria Home.
Installazione di RVM
- Impostare il terminale come shell di login:
Terminale GNOME:
Dal menù selezionare Preferenze e quindi il proprio profilo.
Selezionare il tab Comando e mettere una spunta alla voce Eseguire il comando come una shell di login.
Terminale KDE
Dal menù selezionare Impostazioni → Modifica profilo → Generale.
Alla voce comando modificare il testo in modo che risulti:
/bin/bash --login
Installare il pacchetto curl digitando nel terminale:
sudo apt install curl
Installare rvm:
curl -L get.rvm.io | bash -s stable --auto
Aggiornare il profilo bash:
. ~/.bash_profile
Installare eventuali dipendenze:
rvm requirements
Installazione di Ruby e utilizzo
Il numero di versione viene qui generalizzato in x.x.x. Avere cura di sostituirlo con la versione interessata (2.7.2, 3.0.0, ecc..).
Comandi |
|
rvm list known |
Lista versioni disponibili |
rvm install ruby |
Installare ultima versione |
rvm install ruby-x.x.x |
Installare versione specifica |
rvm --default use ruby-x.x.x |
Rendere versione predefinita |
rvm use ruby-x.x.x |
Seleziona versione da usare |
Guide per principianti