traducido por I. A.
Ruby es un lenguaje de programación bien establecido desde hace muchos años y también puede recomendarse a los principiantes. Ruby sigue el paradigma orientado a objetos y contiene muchos conceptos que soportan bien la programación orientada a objetos. Además, el framework Ruby on Rails facilita mucho el desarrollo de aplicaciones web complejas.
El obstáculo más difícil de superar cuando se empieza con Ruby es la instalación de todo el entorno de desarrollo. Por esta razón, he escrito este breve tutorial sobre cómo empezar con Ruby. Así que vamos a empezar con la instalación de inmediato.
Mi sistema operativo es un Linux Debian 12 y Ruby se puede instalar muy fácilmente con el comando sudo apt-get install ruby-full
. Este procedimiento se puede aplicar a todas las distribuciones de Linux basadas en Debian, como Ubuntu. A continuación, puede utilizar ruby -v
para comprobar el éxito en el bash.
ruby -v
ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-linux-gnu]
BashSi ahora seguimos el tutorial de la página principal de Ruby on Rails y queremos instalar el framework Rails mediante gem rails
, ya nos encontramos con el primer problema. No se pueden instalar las librerías para Ruby porque faltan autorizaciones. Ahora se nos ocurre instalar las librerías como superusuario con sudo. Desafortunadamente, esta solución es sólo temporal e impide que las bibliotecas se encuentren correctamente más tarde en el entorno de desarrollo. Es mejor crear una carpeta para los GEMs en el directorio home del usuario y hacer que esté disponible a través de una variable de sistema.
export GEM_HOME=/home/<user>/.ruby-gems
export PATH=$PATH:/home/<user>/.ruby-gems
La línea anterior debe introducirse al final del archivo .bashrc para que los cambios permanezcan. Es importante que se sustituya <user> por el nombre de usuario correcto. El éxito de esta acción se puede comprobar a gem environment
y debe dar lugar a una salida similar a la siguiente.
ed@:~$ gem environment
RubyGems Environment:
- RUBYGEMS VERSION: 3.3.15
- RUBY VERSION: 3.1.2 (2022-04-12 patchlevel 20) [x86_64-linux-gnu]
- INSTALLATION DIRECTORY: /home/ed/.ruby-gems
- USER INSTALLATION DIRECTORY: /home/ed/.local/share/gem/ruby/3.1.0
- RUBY EXECUTABLE: /usr/bin/ruby3.1
- GIT EXECUTABLE: /usr/bin/git
- EXECUTABLE DIRECTORY: /home/ed/Programs/gem-repository/bin
- SPEC CACHE DIRECTORY: /home/ed/.local/share/gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /etc
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /home/ed/Programs/gem-repository
- /home/ed/.local/share/gem/ruby/3.1.0
- /var/lib/gems/3.1.0
- /usr/local/lib/ruby/gems/3.1.0
- /usr/lib/ruby/gems/3.1.0
- /usr/lib/x86_64-linux-gnu/ruby/gems/3.1.0
- /usr/share/rubygems-integration/3.1.0
- /usr/share/rubygems-integration/all
- /usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /home/ed/.local/bin
- /usr/local/bin
- /usr/bin
- /bin
- /usr/local/games
- /usr/games
- /snap/bin
- /home/ed/Programs/maven/bin
- /usr/share/openjfx/lib
- /home/ed/.local/bin
BashCon esta configuración, los GEM de Ruby ya se pueden instalar sin dificultad. Vamos a probarlo ahora mismo e instalar el framework Ruby on Rails, que nos ayuda en el desarrollo de aplicaciones web: gem install rails
. Esto debería ejecutarse sin mensajes de error y con el comando rails -v
podemos ver si hemos tenido éxito.
En el siguiente paso podemos crear un nuevo proyecto Rails. Aquí utilizo el ejemplo de la documentación de Ruby on Rails y escribo en bash: rails new blog
. Esto crea un directorio llamado blog con los archivos del proyecto. Después de haber cambiado al directorio, todavía tenemos que instalar todas las dependencias. Esto se hace mediante: bundle install
.
Aquí nos encontramos con otro problema. La instalación no puede completarse porque parece haber un problema con la biblioteca psych. El verdadero problema, sin embargo, es que no hay soporte para archivos YAML a nivel de sistema operativo. Esto se puede arreglar muy rápidamente instalando el paquete YAML.
sudo apt-get install libyaml-dev
El problema con psych
en Ruby on Rails ha existido durante un tiempo y se ha solucionado con la instalación de YAML, de modo que el comando bundle install ahora también se ejecuta correctamente. Ahora también podemos iniciar el servidor para la aplicación Rails: bin/rails server
.
ed@:~/blog$ bin/rails server
=> Booting Puma
=> Rails 7.1.3.3 application starting in development
=> Run `bin/rails server --help` for more startup options
Puma starting in single mode...
* Puma version: 6.4.2 (ruby 3.1.2-p20) ("The Eagle of Durango")
* Min threads: 5
* Max threads: 5
* Environment: development
* PID: 12316
* Listening on http://127.0.0.1:3000
* Listening on http://[::1]:3000
Use Ctrl-C to stop
BashSi ahora llamamos a la URL http://127.0.0.1:3000 en el navegador web, veremos nuestra aplicación web Rails.
Con estos pasos, ya hemos creado un entorno Ruby funcional en nuestro sistema. Ahora es el momento de decidir un entorno de desarrollo adecuado. Si sólo se adaptan ocasionalmente algunos scripts, VIM y Sublime Text son suficientes como editores. Para proyectos de software complejos, se debe utilizar un IDE completo, ya que simplifica el trabajo considerablemente. La mejor recomendación es el IDE de pago RubyMine de JetBrains. Si apoyas proyectos Ruby de código abierto como desarrollador, puedes solicitar una licencia gratuita.
Un IDE para Ruby disponible gratuitamente es VSCode de Microsoft. Sin embargo, primero hay que integrar algunos plugins y VSCode no es muy intuitivo para mi gusto. La integración de Ruby para los IDEs clásicos de Java, Eclipse y NetBeans, está bastante desfasada y sólo puede hacerse funcionar con mucho esfuerzo.
Con esto ya hemos tratado todos los puntos importantes que son necesarios para configurar un entorno Ruby que funcione en tu propio sistema. Espero que este pequeño taller haya reducido significativamente la barrera de entrada al aprendizaje de Ruby. Si te ha gustado este artículo, por favor, dale a me gusta y recomiéndalo a tus amigos.