Ruby
De MasFoxPro Wiki
[editar] Ruby
La mejor alternativa creo que es Ruby y su producto estrella Ruby on Rails, explico:
Ventajas:
- Es un programa Open Source, con Licencia GPL
- Es totalmente orientado a objetos, dicen que es el mas orientado a objetos de todos
- Tiene la curva de aprendizaje mas corta de todos los lenguajes que he conocido, y eso lo expresan todos los que lo conocen.
- Tiene un grupo de apoyo gigante
- Se pueden desarrollar tanto aplicaciones de escritorio, como para el web
- Es multiplataforma, se encuentra tanto para mac, linux, windows (todos los sabores), dos, freeBSD, etc.
- Presenta el compilador YARV, o se puede generar código ejecutable nativo con varias utilidades
- Es quizá el lenguaje que economiza mas líneas de código.
- Presenta una gigantesca colección de librerías, para BD, redes, manejo de archivos, para creación de interfaces visuales (ventanas, comboboxes, text areas, text boxes, cambas, grids, ect.), ole, manejo de imágenes, gráficos, tcp/ip, miltihilo (incluso en dos), archivos de sonido, y un largo etcetera.
- Es un lenguaje que parece la unión de lo mejor de PHP, con lo mejor de Python, con lo mejor de Java, con lo mejor de perl
- Genera pdf, tambien
- Presenta enorme facilidad para creación de paginas web
- En este lenguaje fué creado el famosísimo Ruby on Rails, que generó una nueva tendencia en la creación de proyectos multicapas y hoy día emulado por decenas de frameworks en otros lenguajes (Php, python, java)
- Según el índice Tiobe, fué considerado el lenguaje del año en el 2006.
- Ruby On Rails facilita enormemente el trabajo a través de las metodologías ágiles (pues viene con conexión a BD de prueba, de producción y desarrollo), viene con todo un andamiaje para hacer prueba facilmente automatizables, se presta a la internacionalización, tiene el sistema de plugins y engines, usa el esquema MVC (Modelo, vista, controlador), existe una gran cantidad de proyectos, manuales, libros, grupos para su aprendizaje.
Desventajas:
- Por ser totalmente orientado a objetos es un poco lento, pero se puede subsanar con YARV y otros compiladores para Ruby.
En Ruby on Rails solo hay que definir este archivo de configuración para conectarse a diversas bases de datos:
development: adapter: mysql database: database_dev username: root password: host: localhost test: adapter: mysql database: database_test username: root password: host: localhost production: adapter: mysql database: employsof_prod username: root password: host: localhost
Ejemplos de código:
Este ejemplo solo muestra las características del lenguaje, no se pretende hacer algo inteligente
class Numeric
def sumar(x)
self.+(x)
end
end
y = 5.sumar 6
# ahora y vale 11
Un ejemplo de como los números son objetos en si:
5.times { print "Nos *encanta* Ruby -- ¡es fuera de serie!" }
- El uso de bloques:
motores_de_busqueda =
%w[Google Yahoo MSN].map do |motor|
"http://www." + motor.downcase + ".com"
end
- Hay herencia múltiple a través del mixin:
class MiArray include Enumerable end
Enlaces relacionados:
