Roo, el nuevo framework disponible de SpringSource estilo Rails

by Rodrigo Salinas in Frameworks de Desarrollo, Java EE

SpringSource ha lanzado recientemente su nuevo framework open source de desarrollo Web al estilo Rails llamado Roo (se pronuncia Ru). SpringSource ya cuenta con otro framework de este tipo llamado Grails, el que particularmente me agrada bastante y utilizo mucho. El único inconveniente de Grails en algunas circunstancias, IMHO, es el uso del lenguaje Groovy. No es que el lenguaje sea malo. Todo lo contrario. Es un magnífico lenguaje dinámicamente tipeado que corre sobre la máquina virtual Java. Pero no en todas partes están dispuestos a aceptarlo.

De ahí que encuentre su espacio en la industria este nuevo framework Roo. Al igual que Grails o cualquier otro Rails (Ruby On Rails, MonoRail, TurboGears), Roo también privilegia Convención por sobre Configuración. También hace uso de proyectos open-source exitosos para resolver las problemáticas comunes a todo proyecto: JUnit + Selenium para los Tests Unitarios automatizados, Log4J para el logging, Hibernate para la persistencia (entre otras implementaciones de JPA), Spring como fábrica de objetos y contenedor IoC, ActiveMQ para la mensajería (JMS), Acegi para la seguridad, Maven para el deployment, Apache Tiles + JSP como implementación de MVC, Dojo como framework JavaScript del lado de la vista entre otros proyectos.

Pero a diferencia de Grails o Ruby On Rails, Roo no se vale de un lenguaje dinámico como Groovy o Ruby: genera código 100% Java. Y el dinamismo requerido para esta clase de framework lo logra mediante Aspectos, haciendo uso de AspectJ. Estoy recién realizando pruebas con esto y los primeros ejercicios se ven interesantes. Se nota que la productividad de proyectos web Java se verá altamente beneficiada de un framework como este. Claro que recién está partiendo. Veamos cómo lo recibe la industria.

Si te dedicas principalmente al desarrollo Java, te recomiendo a que conozcas y pruebes esta plataforma gratuita en conjunto con el IDE de SpringSource basado en Eclipse: STS. Sitio oficial: http://www.springsource.org/roo

La Revolución RAILS

by Rodrigo Salinas in .Net, Frameworks de Persistencia, Industria de Software, Java EE, OOP, Patrones, Universidad

Charla en la Universidad de Las Américas

Frameworks para el Desarrollo Ágil de Aplicaciones Web (Ruby On Rails, Grails, TurboGears, MonoRail, ASP.NET MVC)

Durante los últimos 5 años, la comunidad internacional de desarrollo de software empresarial ha hablado mucho acerca de un framework que ya es considerado legendario, como lo que le sucedió a Java en los 90’s: Ruby On Rails también conocido como RoR.

Debido a su éxito, nacieron otros proyectos Open Source intentando reproducir la belleza de este framework de desarrollo web ágil para otros ambientes. Entre estos se han destacado: Grails, TurboGears, MonoRail y más recientemente ASP.NET MVC y SubSonic.

Lo que principalmente caracteriza a estos frameworks es:

- El Patrón Convención por sobre Configuración

- El Patrón MVC (Model-View-Controller)

- El Patrón Dependency Inyection con el uso de Contenedores de Inversion of Control

- El uso de un ORM (Object Relational Mapper) para la capa de acceso a datos

- Generadores de esqueletos de código

- Y finalmente (a excepción de MonoRail y de ASP.NET MVC) la utilización de un lenguaje orientado a objetos dinámicamente tipeado (como Ruby, JRubyGroovy o Python) en contraste con los lenguajes fuertemente tipeados (como Java o C#).

¿Qué significa todo esto en la práctica? ¿Qué beneficios puede traer el uso de estos frameworks a las empresas o a la universidad? ¿Qué beneficios aportan ellos a la formación de un profesional de desarrollo de software?

De esto se trata la charla que estaré dando en la Universidad de Las Américas (Sede La Florida) este próximo sábado 24 de Octubre a las 10:30. Esta charla la podrán solicitar todas las Universidades que deseen mediante este mismo medio.

La semana que viene espero escribir un artículo acerca de lo mismo.

Charla en Universidad Central

by Rodrigo Salinas in Industria de Software, OOP, Patrones, Universidad

Charla de Arquitectura de Software

De vuelta otra vez!!!

by Rodrigo Salinas in General

Yo

Aquí estamos de nuevo. El sitio estuvo abajo por algunos meses pero estamos arriba nuevamente. Espero poder escribir más seguido ahora.

Continuaré contestando preguntas que estén relacionadas con la arquitectura de software empresarial sin mostrar preferencia por ninguna tecnología en particular. Siempre tratando de buscar la mejor solución a cada problema en particular, ya sea que esto signifique implementar .NET, Java EE, Ruby On Rails, PHP, Python, Perl, Cobol, Delphi, C++, cada uno por separado o todos mezclados a la vez. Tanto alternativas comerciales como Open Source.

Insistiré en los patrones de diseño y de arquitectura como la mejor manera actual de describir soluciones a problemas recurrentes en la ingeniería de software, sea cual sea el nivel de abstracción. Y en base a estos patrones de diseño, analizaremos cualquier nueva tecnología que los implemente y que parezca válida de consideración.

También dedicaré más tiempo a discutir acerca de los mejores approaches (IMHO) a los diversos, y sin embargo comunes, problemas corporativos: Business Intelligence, Data Mining, Datawarehousing, MOM (Messaging-Oriented Middleware), BPM (Business Process Modeling), SOA (Services-Oriented Architecture), ESB (Enterprise Service Bus), EDB (Enterprise Data Bus), EDA (Event-Driven Architecture), CEP (Complex Event Processing), entre otros.

Hablaremos de buenas prácticas en la programación, de organización y estructuración de capas en el diseño de software, de Refactoring de código y de datos, de Static Analysis, Complejidad Ciclomática, Unit Testing, Metodologías Ágiles, Cruise Control, etc.

Ojalá sean ustedes mismos, mis estimados visitantes, los que consulten acerca de estos temas y podamos juntos discutir diferentes opiniones.

Muchos saludos a todos los que ya nos conocemos y estado juntos ya sea en proyectos, seminarios, cursos o clases en la universidad. Y sean bienvenidos los nuevos que por primera vez nos encontremos aquí en este sitio.

Curso de Frameworks de Persistencia

by Rodrigo Salinas in .Net, Frameworks de Persistencia, OOP, Patrones, Visual Studio 2008, Workshops

Muchos saludos a mis amigos de Creasys quienes estuvieron en un curso intensivo conmigo de desarrollo avanzado con .NET e iBatis, organizado por D&T Systems. Espero que algo les sirva en sus próximos proyectos.

Creasys
 
Creasys
 
Creasys
 

Debilidades en los programas académicos de Ingeniería Informática

by Rodrigo Salinas in OOP, Patrones, Universidad

Hace un par de meses discutíamos con unos amigos, de quienes respeto mucho su opinión, acerca de las debilidades que notábamos en los programas académicos chilenos de las carreras relacionadas con las tecnologías de información. Alejandro Pacheco, Juan Pablo García, Juan Pablo Schmiede y yo estábamos todos de acuerdo en que las universidades no están proporcionando la base necesaria para aquellos profesionales que han de ingresar al mercado a dar soluciones de software a problemas de negocio de las empresas. (Leer más…)