Cooperator framework

19/06/2006 - 18:25 por Daniel A. Calvin | Informe spam
Amigos, les cuento que hace unos meses empezamos a trabajar con un grupo de
amigos en un proyecto para crear un framework que saque provecho de las
ventajas de .Net 2.0
La idea original fue de Eugenio Serrano y me invito a trabajar junto a el y
otros amigos.
El proyecto es un framewok de desarrollo, seguramente estarán pensando: otro
más :-)
Nos decidimos a hacer este nuevo con la idea principal de que sea bien facil
de usar y de acercar los objetos a mas gente de una forma facil.

Hemos trabajado con mucha energía estos últimos meses y hemos logrado armar
algo muy interesante según nuestra opinion.

Los objetivos que nos planteamos fueron:

- 100% Orientado a objetos
- Aplanar la curva de aprendizaje y facilitar el camino de quienes aún están
condicionados por el modelo relacional.
- No usar datasets
- No usamos reflection.
- Modelo totalmente tipado, esto significa que las clases de persistencia y
recuperacion de objetos devuelven un tipo especifico y no un tipo object.
- Debido a la potencia de VS2005 se pueden bindear estos objetos a los
controles sin escribir una linea de codigo, y aporvechar las venjas de
edicion de VS2005
- No depende de la estructura relacional, soporta cualquier tipo de
estructura de base de datos.
- No hay que modificar la Primary Key o crear un campo unique en las tablas.
- Usa stored procedures.
- Soporta concurrencia
- Las condiciones de busqueda se expresan mediante objetos específicos
tipados y extendibles por el programador que terminan ejecutando un Stored
Procedure en forma transparente.
- En la capa de negocio todo se expresa en términos del dominio, incluido
los filtros y busquedas.
- Genera código en base a scripts escritos en el lenguaje que prefiera el
programador. Por defecto estan en c#, pero puedo escribir un script en c#,
para generar código SQL, o puedo escribir un script en vb.net para generar
código c#.
- Hay un modelo propuesto de las clases que se generaran que se basa en el
modelo de datos, pero el programador, antes de generar las clases edita
dicho modelo en una herramienta muy facil de usar y define como sera el
modelo que desea crear.
- Si las opciones de modelado que provee la herramienta no alcanzan, el
programador puede editar los templates y generar su propio modelo.
- La herramienta de generacion, genera 2 archivos por cada clase usando
clases parciales pensado para que el programador solo modifique una de las
2.
Si mas tarde se agrega un nuevo campo a una tabla, se puede volver a generar
el otro archivo de manera de no "pisar" cualquier codigo que el programador
ya haya escrito en esa clase.
- Soporta transacciones desconectadas.
- Licencia tipo open source, aún no hemos optado por cual, pero será de
código abierto.

Todo esto lo logramos de forma poco invasiva, implementando interfaces y
valiendonos de las nuevas características del net framework 2.0, sobre todo
Generics y clases parciales.

El framework será publicado en un término no mayor a 60 días.

Nos gustaría mucho contar con algún retorno por parte de la comunidad,
principalmente que cosas les molesta de otras herraminetas de este tipo,
incluso que les gustaría tener y aún no han encontrado en otros frameworks.

Desde ya muchas gracias

Daniel Calvin

Preguntas similare

Leer las respuestas

#141 Misael Monterroca
24/06/2006 - 03:36 | Informe spam
Aunque lo tienes planeado publicar en los próximos 26 dias, tendran ya
algunos bit's que pueda probar? No importa que compilen, me interesa ver
el modelo conceptual ya implementado.

{
this.Saludo = Saludos!
this.Nombre = Misael Monterroca | Microsoft MVP C#;
this.Blog = http://www.neo-mx.com/blogs/neo-mx
}


"Daniel A. Calvin" wrote in message
news:%
Amigos, les cuento que hace unos meses empezamos a trabajar con un grupo
de
amigos en un proyecto para crear un framework que saque provecho de las
ventajas de .Net 2.0
La idea original fue de Eugenio Serrano y me invito a trabajar junto a el
y
otros amigos.
El proyecto es un framewok de desarrollo, seguramente estarán pensando:
otro
más :-)
Nos decidimos a hacer este nuevo con la idea principal de que sea bien
facil
de usar y de acercar los objetos a mas gente de una forma facil.

Hemos trabajado con mucha energía estos últimos meses y hemos logrado
armar
algo muy interesante según nuestra opinion.

Los objetivos que nos planteamos fueron:

- 100% Orientado a objetos
- Aplanar la curva de aprendizaje y facilitar el camino de quienes aún
están
condicionados por el modelo relacional.
- No usar datasets
- No usamos reflection.
- Modelo totalmente tipado, esto significa que las clases de persistencia
y
recuperacion de objetos devuelven un tipo especifico y no un tipo object.
- Debido a la potencia de VS2005 se pueden bindear estos objetos a los
controles sin escribir una linea de codigo, y aporvechar las venjas de
edicion de VS2005
- No depende de la estructura relacional, soporta cualquier tipo de
estructura de base de datos.
- No hay que modificar la Primary Key o crear un campo unique en las
tablas.
- Usa stored procedures.
- Soporta concurrencia
- Las condiciones de busqueda se expresan mediante objetos específicos
tipados y extendibles por el programador que terminan ejecutando un Stored
Procedure en forma transparente.
- En la capa de negocio todo se expresa en términos del dominio, incluido
los filtros y busquedas.
- Genera código en base a scripts escritos en el lenguaje que prefiera el
programador. Por defecto estan en c#, pero puedo escribir un script en c#,
para generar código SQL, o puedo escribir un script en vb.net para generar
código c#.
- Hay un modelo propuesto de las clases que se generaran que se basa en el
modelo de datos, pero el programador, antes de generar las clases edita
dicho modelo en una herramienta muy facil de usar y define como sera el
modelo que desea crear.
- Si las opciones de modelado que provee la herramienta no alcanzan, el
programador puede editar los templates y generar su propio modelo.
- La herramienta de generacion, genera 2 archivos por cada clase usando
clases parciales pensado para que el programador solo modifique una de las
2.
Si mas tarde se agrega un nuevo campo a una tabla, se puede volver a
generar
el otro archivo de manera de no "pisar" cualquier codigo que el
programador
ya haya escrito en esa clase.
- Soporta transacciones desconectadas.
- Licencia tipo open source, aún no hemos optado por cual, pero será de
código abierto.

Todo esto lo logramos de forma poco invasiva, implementando interfaces y
valiendonos de las nuevas características del net framework 2.0, sobre
todo
Generics y clases parciales.

El framework será publicado en un término no mayor a 60 días.

Nos gustaría mucho contar con algún retorno por parte de la comunidad,
principalmente que cosas les molesta de otras herraminetas de este tipo,
incluso que les gustaría tener y aún no han encontrado en otros
frameworks.

Desde ya muchas gracias

Daniel Calvin

Respuesta Responder a este mensaje
#142 Misael Monterroca
24/06/2006 - 04:19 | Informe spam
IDEM!

Neto no lo invoquen

{
this.Saludo = Saludos!
this.Nombre = Misael Monterroca | Microsoft MVP C#;
this.Blog = http://www.neo-mx.com/blogs/neo-mx
}


"Eduardo A. Morcillo [MS MVP VB]" <emorcillo .AT. mvps.org> wrote in message
news:
Me late que el tal Alfredo es el mismo DJ MIAU de hace algunos meses.



No lo llamen!!! No lo llamen!!! ;)

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C

Respuesta Responder a este mensaje
#143 Misael Monterroca
24/06/2006 - 04:33 | Informe spam
¿Que ventaja tiene con respecto a aplicar estas operaciones
algebraicas directamente sobre el SGBD?



Alfredo.

Creo que hay una confusión entre la arquitectura propuesta por Microsoft
(http://msdn.microsoft.com/practices...istapp.asp)
y la utilización de un SGBD. EL framework que estan propiendo (por lo que
entendi) está basado en la implementación de esa arquitectura.

{
this.Saludo = Saludos!
this.Nombre = Misael Monterroca | Microsoft MVP C#;
this.Blog = http://www.neo-mx.com/blogs/neo-mx
}
Respuesta Responder a este mensaje
#144 Alfredo Novoa
24/06/2006 - 09:05 | Informe spam
Hola Misael,

On Fri, 23 Jun 2006 21:33:16 -0500, "Misael Monterroca"
wrote:

Creo que hay una confusión entre la arquitectura propuesta por Microsoft
(http://msdn.microsoft.com/practices...istapp.asp)
y la utilización de un SGBD. EL framework que estan propiendo (por lo que
entendi) está basado en la implementación de esa arquitectura.



El artículo está completamente confundido, ese no es el significado
habitual de "arquitectura de tres capas" sino este:

http://en.wikipedia.org/wiki/Three-...mputing%29
http://www.sei.cmu.edu/str/descript..._body.html


Saludos
Alfredo
Respuesta Responder a este mensaje
#145 Misael Monterroca
24/06/2006 - 15:20 | Informe spam
Hola de nuevo :D


El artículo está completamente confundido, ese no es el significado
habitual de "arquitectura de tres capas" sino este:

http://en.wikipedia.org/wiki/Three-...mputing%29
http://www.sei.cmu.edu/str/descript..._body.html




Siendo estrictamente teoricos y apegandote completamente a esa arquitectura
posiblemente si, sin embargo, cabe resaltar que la arquitectura de 3 capas
habla exclusivamente de capas logicas más no fisicas, las cuales te da un
amplio margen de implementación.

Ahora bien, si quisieramos buscar algo más apegado a las 3 capas
tradicionales, existia Windows DNA
(http://www.microsoft.com/latam/tech...efault.asp)
que en su momento, fue la propuesta de Microsoft para construir aplicaciones
distribuidas BASADA en una arquitectura de 3 capas.

En lo personal, no considero que la propuesta de microsoft este incorrecta,
ya que no esta hablando de una arquitectura de 3 capas, si no de la
evolución de ésta obviamente en la visión y herramientas Microsoft.


Saludos
Alfredo




{
this.Saludo = Saludos!
this.Nombre = Misael Monterroca | Microsoft MVP C#;
this.Blog = http://www.neo-mx.com/blogs/neo-mx
}
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida