Preguntas Frecuentes
¿Es Cooperator Framework un ORM?
Depende desde el punto de vista desde donde se lo mire. Podríamos decir
que si, cuando pensamos que nuestros objetos del dominio pueden
persistirse y recuperarse en una base de datos. Pero a diferencia de los
ORM tradicionales, todas las operaciones sobre las base de datos se
realizan utilizando Stored Procedures, esto significa que no se ejecutan
sentencias SQL para las operaciones sobre la base de datos.
Por otro lado, Cooperator Framework utiliza generación de código para
crear las clases del dominio. Esas clases son generadas de un modelo de
objetos que se basa inicialmente en el esquema de la base de datos, pero
que debe editarse para definir el modelo buscado, antes de generar
dichas clases.
¿Qué motores de bases de datos soporta Cooperator?
Inicialmente soporta Microsoft SQL Server 7.0, 2000 y 2005 incluyendo
SQL 2005 Express, pero está desarrollado de una forma que fácilmente
puede soportar cualquier motor. Nuestra meta es soportar los motores de
bases de datos mas utilizados en las siguientes versiones.
¿Qué lenguaje de programacion soporta Cooperator?
Cooperator Framework está escrito en C# 2.0, y los templates que
entregamos, generan código tanto en C# 2.0 y Visual Basic 2005.
Como la generación es basada en templates, modificando las mismas se
puede generar código para cualquier lenguaje .Net
¿Qué tipo de aplicaciones puedo desarrollar con Cooperator
Framework?
Cualquier tipo de aplicación. Windows, Web, de Consola, Servicio, etc.
Cooperator es solo una libreria de clases que permite a usted expresar
su lógica de negocio a nivel de objetos.
¿Soporta Cooperator .Net Framework 1.x?
No, Cooperator fue escrito desde cero utilizando C# 2.0, aprovechando
nuevas características como generics y clases parciales, que lo hacen
incompatible con versiones anteriores a .Net 2.0
¿Cómo se representan las entidades en mis reglas de negocio?
Las entidades se representan usando objetos. No se utilizan ni DataSets
ni DataTables, solo objetos, estos objetos no tienen propiedades ni
métodos que no tengan que ver con la responsabilidad del objeto en si
que es representar una entidad. Esto quiere decir que en esos objetos no
hay propiedades ni métodos de persistencia de datos, ni nada que no
tenga que ver con el dominio. Para la persistencia y recuperación de
estas entidades proveemos unos artefactos denominados Mappers.
¿Puedo utilizar libremente Cooperator en mis aplicaciones?
Si, Cooperator framework puede descargarse y usarse tanto en sus
ejecutables como en su código fuente de forma libre y gratuita, usando
la
Licencia BSD. (Que es casi dominio publico)
Usted podrá utilizarlo, modificarlo, copiarlo, eliminarlo, incluirlo en
sus aplicaciones, sin ninguna restricción.
¿Cooperator Framework seguirá siendo libre y gratuito para
siempre?
Si, todo el código fuente ya esta publicado bajo la Licencia BSD y las
próximas versiones seguirán usando la misma licencia.
¿Puedo utilizar Cooperator Framework si poseo las versiones
Express de Visual Studio 2005 y SQL 2005?
Si, no hay ningún problema con ello, Cooperator utiliza 3 ensambles en
tiempo de ejecución, solo se debe hacer referencia a esos ensambles y
ya.
Por otro lado, se dispone de un generador tanto de procedimientos
almacenados como de código en C# o Visual Basic 2005. Este código
autogenerado es el que debemos agregar y compilar en nuestra aplicación.
¿Cooperator Framework tiene una versión estable, o está en
beta?
Existe la versión 1.3.0.1133, que está en producción y ya hay varios
sistemas desarrollados utilizándola.
¿Como puedo hacer para descargar Cooperator?
Cooperator Framework esta publicado en el sitio de Microsoft para
proyectos open source, Code plex.
La dirección de Cooperator es:
www.codeplex.com/cooperator
¿Estoy interesado en el proyecto LINQ, como afecta esto a
Cooperator?
El proyecto LINQ de Microsoft, es una extensión a los lenguajes .Net de
próxima generación, que permitirá entre otras cosas, consultar a los
objetos en memoria utilizando .Net Integrated Query, logrando reducir
significativamente la cantidad de código necesario para hacer algunas
operaciones.
Usted podrá aplicar toda la potencia de LINQ sobre las colecciones de
objetos brindados por Cooperator, incluyendo agregaciones,
ordenamientos, etc, utilizando la sintaxis de consulta de LINQ.