## page was renamed from Programmazione/Ruby #language it #format wiki <> <> = 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 = {{{#!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]]. }}} [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://ruby|ruby]]. = Installazione tramite RVM = * Consultare la [[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 }}} == 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'''. <> = Gestore pacchetti RubyGem = '''Ruby''' ha internamente un suo gestore di pacchetti [[https://rubygems.org/|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 [[Programmazione/Ruby/Rvm|manager di versione]].<
> * '''!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.<
>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 }}} {{{#!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'''. 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.. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://rubocop|rubocop]]. {{{#!wiki tip Il pacchetto è installabile anche tramite [[#gem|RubyGem]]. }}} Per utilizzarlo, supponendo di aver creato il file `script.rb` nella propria '''Home''', digitare il comando: {{{ 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]] ---- CategoryProgrammazione