miércoles, 3 de febrero de 2010

Frameworks de desarrollo vs DSLs

Absolutamente para todos los lenguajes de programación tenemos decenas de frameworks que realizan tal o cual tarea. En el mundo java, por ejemplo: Spring, Hibernate, iBatis, Struts, Webwork, Tapestry, JSF, GWT, Wicket...

En las ofertas de trabajo parece más importante el conocimiento de esta serie de software que la del propio lenguaje de programación sobre el que están implementados. No voy a negar que tienen su utilidad en según que situaciones.

Pero, ¿no sería mejor crear lenguajes de propósito específico (DSLs)?

Los framewoks tratan de proveer al lenguaje una abstracción para la realización de tareas complejas. Al tratarse de lenguajes de propósito general su implementación se convierte en una dura tarea, por eso los utilizamos. El precio que pagamos es una alta carga de configuración en forma de xml o anotaciones, que en ocasiones, francamente, los hace insufribles. Esto ocurre porque tratamos de modelar sobre un lenguaje de propósito general una serie de tareas para las que no ha sido concebido.



No hay comentarios:

Publicar un comentario