
Me encuentro desarrollando un proyecto de Bolsa de Trabajo para la comunidad de Rock Developer. Alex Gomez y yo hemos tenido algunas charlas sobre que lenguaje y framework utilizar para el desarrollo de proyectos comunes. El se inclina por PHP y ZendFramework, yo… Prefiero estar alejado de PHP. Así pues empece ayer a estudiar Ruby y Rails, y decidí hacer la beta 1 de la bolsa de trabajo de Rock Developer en Rails.
Hasta ahora. Ruby parece ser mas poderoso que Rails y creo que tiene muchos años de futuro en el desarrollo de software, es pues algo que llego para quedarse.
El desarrollo de software ha venido creciendo a pasos agigantados, hay muchos esfuerzos de millones de personas por desarrollar las mejores tecnologías que provean no solo infraestructuras robustas, sino también agilidad en el desarrollo. RAD (Rapid Application Development) o Desarrollo Rapido de Aplicaciones, ha sido una de las áreas de mayor atención.
Pero, ¿Que determina la capacidad de hacer RAD?
Basicamente la capacidad de apoyarse en Frameworks para lenguajes de programación dinamicos como Ruby y Rails.
Ruby: Es un lenguaje de programación dinámico (Un lenguaje de programacíon dinámico es aquel lenguaje que te permite extender funcionalidad en tiempo de ejecución. Hablaremos mas sobre lenguajes dinamicos en otro artículo) creado en Japón, donde es muy usado y tiene una base de admiradores bastante grande. Algo sorprendente y grato es que la comunidad detras de Ruby es mas colaborativa y menos segmentada que en otros lenguajes. Quiza debido a que su popularización vino con Rails. Un Framework para habilitar RAD en ruby.
Rails, nos brinda una serie de scripts que nos permiten generar codigo para las tareas mas comunes de nuestras aplicaciones. Despues de instalar Ruby y Rails en tu equipo, usando NetBeans puedes virtualmente desarrollar una aplicación para administración de catalogos en una forma muy sencilla. Mucha gente con un marco teorico de Clipper y DataBase Driven Development puede creer que ha encontrado el lugar perfecto, sinembargo hay algunas desventajas en el modelo de Rails. Aunque la integración del ORM (Active Record) y su generador de codigo (Scaffold) estan hechas en una forma muy compacta, Rails presenta detalles complejos a la hora de relacionar entidades.
Es cierto. Si leemos los manuales de Ruby, nos encontraremos con documentación que dice que Ruby esta orientado a permitir a los desarrolladores de software usar un solo lenguaje y olvidarse de pensar en bases de datos y archivos de configuración XML. Esto es pues, estan concientes de sus limitaciones.
Claro esta, que Ruby y Rails son extendibles y modificables debido a que son Open Source, ademas el manejo de rutas y la capacidad de diseñar basado en templates hacen de Ruby on Rails una gran herramienta. Eso sin contar la gran comunidad afuera, soportando y apoyando el desarrollo, la penetración que tiene en el mercado de IDE’s es también considerable.
Ruby on Rails hace un trabajo decente para apoyarnos en RAD. Sin embargo, para poder realmente sentir un nivel de poder de desarrollo maximo deberemos invertir muchas horas en el framework.
Es, excelente para desarrollar aplicaciones de nivel medio. Applicaciones de tipo empresarial o con requerimientos mas especificos en la DB, pueden pues pasarlo por alto. A menos claro que deseen desarrollar todo su front en Ruby on Rails y sus prcoesos criticos en Java o algo igual de robusto.
RAD no es solo un gran lenguaje como Ruby y un buen Framework como Rails. Pero es una gran promesa, si la gente detras de Rails puede desarrollar una versión que entre otras cosas cumpla las demandas del Sr. Joel Spolski (Joel Spolski, en 2006 se encontro usando Ruby on Rails para desarrollar un sistema de seguimiento de fallas. Y tiene una opiniones que si bien pueden parecer duras, estan fundamentadas) podemos decir que su base de desarrolladores creceria mucho más, y más rapido.
Iaax Page
Particularmente no soy fan de Ruby On Rails, pero lo que si hay que reconocer es que se han esforzado mucho por hacer las cosas mas simples, que es como creo que deberian de ser. Desarrollar una aplicacion web orientada a datos deberia ser la cosa mas simple del mundo y ahi han logrado que otros lenguajes y frameworks apliquen esos mismos principios en ellos, lo vemos en el nuevo framework de mvc de asp.net, en nuevas versiones de spring, en groovy on grails y supongo que en muchos otros mas.
muy buena explicacion de RAD, deberian de hacer un post (o varios) de cuales son para ustedes las mejores opciones para desarrollar de una manera eficiente y rapida(ya se que han posteado acerca de varias tecnologias)pero me gustaria ver sus opiniones enfrentadas; porque al parecer iaxx y reyes estan en desacuerdo. creo que cesar puedo profundizar mas su comentario de porque no le gusta ruby. ¿Podrian poner en la pagina una encuesta a ver que prefieren los usuarios de tecnologias? .