Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Programmazione/Ruby"
Differenze tra le versioni 21 e 28 (in 7 versioni)
Versione 21 del 28/04/2021 17.37.26
Dimensione: 7058
Autore: jeremie2
Commento:
Versione 28 del 24/10/2021 11.23.58
Dimensione: 5651
Autore: jeremie2
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 5: Linea 5:
<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=421926"; rilasci="20.04";)>> <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=421926"; rilasci="20.04 21.04 21.10";)>>
Linea 14: Linea 14:
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 ==
{{{#!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 21: Linea 20:
== Tramite RVM == = Installazione tramite RVM =
Linea 23: Linea 22:
 * Consultare il [[#rvm|seguente paragrafo]].  * Consultare il [[Programmazione/Ruby/Rvm|seguente guida]].
Linea 25: Linea 24:
= 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
}}}

== Metodo alternativo ==

 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 installare il pacchetto [[apt://pry|pry]] oppure il relativo pacchetto tramite [[#gem|RubyGem]].

 * 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'''.

<<Anchor(gem)>>
Linea 28: Linea 72:
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.
Tuttavia è bene fare un distinguo in base al caso si stia utilizzando la versione di '''Ruby''' resa disponibile da Ubuntu oppure tramite un [[Programmazione/Ruby/Rvm|manager di versione]].<<BR>>
 * '''!RubyGem''' sarà il gestore pacchetti di riferimento nel caso si stia utilizzando una versione di Ruby installata tramite [[Programmazione/Ruby/Rvm|manager di versione]].
 * Se invece 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 in molti casi non sarà necessario ricorrere a metodi alternativi per installarli.<<BR>>Tuttavia nel caso si optasse per l'utilizzo di '''!RubyGem''', sarà necessario impostare le variabili di ambiente aggiungendo nel file `.bashrc` (presente nella propria '''home''') le seguenti righe:{{{
## Ruby gem
export GEM_HOME="$HOME/.gem"
export PATH="$HOME/.gem/bin:$PATH"
}}}Andrà quindi riavviato il terminale se in utilizzo.

== Utilizzo ==
Linea 49: Linea 99:
= Esecuzione script = = Rubocop =
Linea 51: Linea 101:
Viene preso come esempio uno script che simula il lancio di un dado... con la speranza di fare 6 ;) '''[[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'''. Può rivelarsi uno strumento molto utile a migliorare il codice rilevando il cattivo utilizzo di:
 * indentazione
 * spazi vuoti
 * variabili inutilizzate
 * metodi (funzioni in Ruby) eccessivamente lunghe
 * altro..
Linea 53: Linea 108:
 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)
[[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://rubocop|rubocop]].
Linea 58: Linea 110:
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
{{{#!wiki tip
Il pacchetto è installabile anche tramite [[#gem|RubyGem]].
Linea 68: Linea 114:
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:{{{
Per utilizzarlo, supponendo di aver creato il file `script.rb` nella propria '''Home''', digitare il comando:
 {{{
Linea 102: Linea 118:

<<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'''.

== Impostare 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
}}}

== Installazione di RVM ==

 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 ||

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

Esecuzione script

Viene preso come esempio uno script che simula il lancio di un dado... con la speranza di fare 6 ;)

  1. 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}")
  2. 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

Metodo alternativo

  1. inserire all'inizio dello script la direttiva:

    #!/usr/bin/env ruby
  2. Rendere lo script eseguibile con il comando:

    chmod u+x dado.rb
  3. 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 oppure il relativo pacchetto tramite RubyGem.

  • 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.

  • RubyGem sarà il gestore pacchetti di riferimento nel caso si stia utilizzando una versione di Ruby installata tramite manager di versione.

  • Se invece 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 in molti casi non sarà necessario ricorrere a metodi alternativi per installarli.
    Tuttavia nel caso si optasse per l'utilizzo di RubyGem, sarà necessario impostare le variabili di ambiente aggiungendo nel file .bashrc (presente nella propria home) le seguenti righe:

    ## Ruby gem
    export GEM_HOME="$HOME/.gem"
    export PATH="$HOME/.gem/bin:$PATH"
    Andrà quindi riavviato il terminale se in utilizzo.

Utilizzo

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. Può rivelarsi uno strumento molto utile a migliorare il codice rilevando il cattivo utilizzo di:

  • indentazione
  • spazi vuoti
  • variabili inutilizzate
  • metodi (funzioni in Ruby) eccessivamente lunghe
  • altro..

Installare il pacchetto rubocop.

Il pacchetto è installabile anche tramite RubyGem.

Per utilizzarlo, supponendo di aver creato il file script.rb nella propria Home, digitare il comando:

  • rubocop script.rb

Guide per principianti

Ulteriori risorse


CategoryProgrammazione