Jaime bien et recommande d'apprendre la programmation en Ruby, pour plusieurs raison, c'est une alternative au Python, mais également pour le web development et le fameux framework "Ruby On Rails" et surtout en tant que hacker pour créer des modules sur Metasploit qui est codé en Ruby. C'est donc incontournable. Comme premier langage de scripting je recommande Ruby.
Qu'es-ce que l'on peut faire avec Ruby?
- DevOps
- Web servers
- Data processing
- Web crawling
Ruby est un excellent langage pour les SysAdmin comme scripting et automatiser les tâches. Les logiciels Puppet et Chef sont écrit en Ruby. Vous pouvez même faire de l'intelligence articielle en Ruby. Avec la gem "ruby-fann" pour Fast Artificial Neural Network.
On va donc configurer un environnement basic pour la programmation en Ruby qui utilise:
- RVM packet manager
- Neovim et auto-completion
- Interpréteur avancé REPL Pry
- Debugger
A. Nous devons installer les pré-requis. Sous GNU/Linux dans un terminal:
$ sudo pacman -S base-devel tar gzip diffutils curl
En utilisant un packet manager en Ruby RVM
$ gpg --keyserver hkp://keys.gnupg.net --recv-keys \
409B6B1796C275462A1703113804BB82D39DC0E3 \
7D2BAF1CF37B13E2069D6956105BD0E739499BDB
$ \curl -sSL https://get.rvm.io | bash -s stable --auto-dotfiles
$ source ~/.rvm/scripts/rvm
$ rvm pkg install openssl
$ rvm install ruby --with-openssl-dir=$HOME/.rvm/usr
$ ruby -v
Modifier zshrc
pour ajouter le PATH des gems en fonction de votre version ruby
export PATH=$PATH':/home/trivial/.local/share/gem/ruby/3.0.0/bin'
source ~/.rvm/scripts/rvm
B. Installer pry et debugger
$ gem install pry pry-byebug
Pour utiliser Pry
$ pry
help
C. Configurer Neovim
$ gem install solargraph
Une fois que vous avez installé Neovim, configurer le gestionnaire de plugin avec Coc
:CocInstall coc-solargraph coc-json
Configuration recommandé
:CocConfig
Editer le fichier
{
"codeLens.enable": true,
"solargraph.useBundler": false
}
Et vous devriez avoir la gestion et support en Ruby, tel que l'auto-completion.
D. Mon premier programme en Ruby
D'abord on configure l'environnement de travail, dossier root de nos fichiers sources en .rb
.
$ mkdir src-rb
$ cd src-rb
Puis on initialise solargraph dans notre dossier de travail
solargraph config
Qui va générer un fichier de configuration dans notre projet .solargraph.yml
hello world
nvim hello.rb
#!/usr/bin/ruby
puts "Hello World"
Pour lancer le script
$ ruby hello.rb
ou alors
$ sudo chmod +x hello.rb
$ ./hello.rb
Les meilleurs livres pour apprendre Ruby gratuitement (anglais) : https://www.linuxlinks.com/recommended-free-books-learn-ruby/
Un introduction à Ruby - Zeste du Savoir: https://zestedesavoir.com/tutoriels/634/une-introduction-a-ruby/