martes, octubre 14, 2008

Moneiba Framework

Cuando empecé a diseñar aplicaciones una de las primeras cosas que me di cuenta es que si había desarrollado un codigo para hacer algo después, ese mismo codigo me podía servir para desarrollar otro proyecto.

Esto se hace muy a menudo, siempre se aprovecha código de otros proyectos. El caso es que también se repite la misma historia en las librerias para acceder a la base de datos, interfaz gráfico para configurar la base de datos, pruebas a ver si todo funciona bien, etc. Pero lo que quería era hacerlo una sola vez en la vida y ya no más. Hacer esto además tiene una gran ventaja, puedes hacerlo una sola vez muy bien de tal forma que tienes la completa seguridad de que no vas a tener fallos y en resumen aumentarás la productividad.

Si además de gestionar la base de datos añadimos actualizaciones automáticas, informes, acceso al puerto serie, modbus, gestión de impresoras, etc, pues la cosa promete.

Simplificando bastante la arquitectura de la aplicación podemos decir que un proyecto esta formado por componentes a los que el framework les proporciona (a través de una api) todos los objetos que puedan necesitar (para acceder a la base de datos, por ejemplo).

A su vez los componentes pueden tener módulos (que sería la única parte que hay que programar) y que se apoya en el patrón MVC. También pueden tener búsquedas, por ejemplo, estamos creando un componente "artículos" que será quien gestione los productos de una tienda, en cualquier momento te puede interesar listar artículos que cumplan ciertas condiciones como "listar los artículos más recientes". Con los componentes las búsquedas se pueden definir en un XML sin tener que programar nada, el interfaz gráfico y el acceso a la base de datos ya se encargará el framework.



En resumen esto es lo que hace el proyecto Moneiba Framework, es LGPL, por lo que el código fuente esta disponible para que cualquier desarrollador lo pueda usar y modificar.

La próxima entrada será para enseñar paso por paso como crear un proyecto desde cero.

No hay comentarios: