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 1 e 19 (in 18 versioni)
Versione 1 del 19/04/2009 10.56.33
Dimensione: 3851
Commento:
Versione 19 del 28/04/2021 16.12.45
Dimensione: 6599
Autore: jeremie2
Commento: tabella
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. 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 154:
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

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

  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

In alternativa:

  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.

  • 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

  1. Installare il pacchetto curl digitando nel terminale:

    sudo apt install curl
  2. Installare rvm:

    curl -L get.rvm.io | bash -s stable --auto
  3. Aggiornare il profilo bash:

    . ~/.bash_profile
  4. 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

Ulteriori risorse


CategoryProgrammazione