CSLA

CSLA es un framework para el desarrollo de aplicaciones de negocio. Ha sido desarrollado por Rockford Lhotka (www.lhotka.net) , MVP de Microsoft y consultor de Magenic (www.magenic.com ), un “Worldwide Partner” de Microsoft.

FRAMEWORKS
¿Por qué programar utilizando un framework? Cierto que comenzar a colocar líneas de programa debajo de un botón3 es muy fácil y, como todo en la vida, tiene su lugar. Pequeñas aplicaciones con funcionalidad muy concreta y que difícilmente se puedan reutilizar, son susceptibles de crearse sin utilizar frameworks, pues estos son más complejos de implementar.

Ahora bien, digamos que por las prisas de costumbre, comenzamos a producir a fin de tener en pocos días un resultado. Perfecto, todos contentos. Ahora, tras varios meses haciendo programas con esta filosofía resulta que hay que cambiar algo en alguno de ellos. ¡Un momento! Hay que corregir todos los programas. Y además, en cada uno de ellos hay múltiples lugares donde se utiliza la misma funcionalidad a modificar. Tenemos un caso típico de “spaghetti code”. Ahora, todo lo que nos habíamos ahorrado es pagado con creces.

Si tenemos un framework de programación, quiere decir que partimos de una superestructura común. Comparemos un edificio alto al proceso de desarrollo de software. Cada vivienda resultaría ser un programa distinto. El conjunto de vigas, pilares, paredes maestras y demás elementos comunes son el framework. Digamos que, por cambio de normativa legal, hay que cambiar el contador de la luz a cada vivienda. En lugar de ir piso a piso buscando donde cada residente quiso colocar dicho contador, iríamos al cuarto de contadores, y allí están, todos juntos listos para un cambio rápido.

El sencillo ejemplo anterior muestra una de las enormes ventajas de utilizar frameworks en la programación: la mantenibilidad del código. Cada programa descansa en los mismos métodos, los cuales están siempre en el mismo sitio. Muchas veces, solo hay que cambiar un en solo lugar para que todos los programas respondan a la nueva funcionalidad.

Bueno, seguir hablando de frameworks llevaría a producir un libro. Pero en Flash Data llevamos años utilizándolos y, francamente, recomendamos su implementación en la mayoría de los escenarios.

csla Framework
¿Por qué este en concreto? Por muchas razones. Algunas serían:

  • El autor suministra el código fuente, tanto en C# como en VB
  • El autor suministra el código fuente, tanto en C# como en VB
  • Separación de la lógica del negocio, el acceso a datos y la presentación
  • Incorpora las mejores “prácticas reconocidas” de arquitectura de software
  • Capacidad de deshacer ilimitada, cuando un usuario decide cancelar la edición
  • Enlace a datos directo entre el interfaz de usuario y las clases de negocio
  • Enlace a datos de objetos complejos, como colecciones
  • Comunidad de usuarios activa y dispuesta a colaborar
  • Licencia de libre utilización (menos para fabricar otros frameworks)
  • Implementación de las reglas de negocio en la arquitectura
  • Mapeo entre el repositorio de los datos y las clases de negocio
  • Escalabilidad debido al uso de fábrica de objetos “no anclados”
  • Seguridad basada en diversos patrones concurrentes y aditivos.

Flash Data y CSLA En Flash Data llevamos trabajando con dicho framework desde los días previos a .NET. Y hemos implementado adaptaciones del mismo en entornos como el Hospital de Sant Pau o el Patronat de l’Habitatge, ambos de Barcelona.

Share this post