Platform Architecture Teamimage_thumb1

Acabamos de publicar (Microsoft DPE - Spain ) en MSDN-España y CODEPLEX nuestra nuevo Libro-Guía de 'Arquitectura N-Capas DDD .NET 4.0’ y Aplicación ejemplo (Libro electrónico disponible para download gratuito y el mismo libro impreso en papel para regalar en nuestros eventos), así como su Aplicación Ejemplo (publicada en CODEPLEX), todo ello basado en tendencias de Arquitectura y patrones DDD (Domain Driven Design) así como en la ola de .NET 4.0, Entity Framework 4.0, Unity, WCF, PEX (Moles & Stubs) para Unit Testing y mocking, etc.

El libro está todavía en estado preliminar/borrador, pues todavía hay aspectos que queremos perfeccionar y otros aspectos a añadir. Pero es una versión suficientemente buena como para ser revisada y dar feed-back de ello.

Lo mismo respecto a la aplicación ejemplo en CODEPLEX. Es todavía una versión beta, con bastantes cosas por perfeccionar, pero ya muestra una implementación N-Capas DDD extremo a extremo. Y seguirá creciendo!!… :-)

Hemos estado trabajando sobre ello un conjunto de Arquitectos, desarolladores y diseñadores UX tanto de Microsoft-Spain como de varios partners, durante varios meses. La verdad es que estamos muy contentos con los resultados iniciales. En España esté teniendo una gran acogida en los Eventos para Arquitectos que acabamos de hacer, así como en Internet (MSDN y CODEPLEX).

Diagrama de Arquitectura con Orientación al Dominio (DDD) y Cubierta e índice del libro

e-Book (gratis) – Versión preliminar (03/2010)
image_thumb3

Resumen del Libro-Guía y de la Aplicación ejemplo

Este libro muestra la mayoría de los aspectos arquitecturales y patrones definidos originalmente por Eric Evans así como también patrones de Martin Fowler, y principios de diseño ’SOLID’. Por lo tanto, exponemos primero a nivel teórico la arquitectura, capa a capa en DDD, y sus patrones (Entity, POCO/IPOCO Entities, Value-Object, Aggregates, Repository, Unit of Work, Specification pattern, etc.) y posteriormente, en la segunda parte de cada capitulo, exponemos como implementarlo en .NET 4.0, con tecnologías como ADO.NET Entity Framework 4.0 , Unity, Servicios WCF, and PEX (Stubs and Moles), WPF, Silverlight 4.0, AppFabric (‘Dublin’), AppFabric-Cache (‘Velocity’) etc.

Relativo a la aplicación ejemplo, se muestra con un ejemplo práctico con una implementación extremo a extremo de todo lo que explicamos en el libro. La versión actual posee todo el ‘core’ de DDD, con EF 4.0, Unity, Servicios WCF, PEX, etc., y estamos trabajando actualmente en una versión con un cliente SL4.0, AppFabric, cache, WF, etc.

Downloads gratuitos del Libro-Guía y Aplicación ejemplo en CODEPLEX:

Download - Libro-Guía de 'Arquitectura N-Capas DDD .NET 4.0’ - (e-Book en ESPAÑOL)

http://msdn.microsoft.com/es-es/architecture/default.aspx

Download – Aplicación ejemplo en CODEPLEX (Inglés, para proyección internacional)

http://microsoftnlayerapp.codeplex.com/

 

Objetivos

Este punto es muy importante. Es de destacar que DDD y po lo tanto nuestra guía de Arquitectura está especialmente diseñado para aplicaciones complejas con un volumen importante de lógica de negocio. Aplicaciones que tienen una vida larga y un mantenimiento y cambio de su lógica de negocio, donde se quiere aislar y proteger la Capa del Dominio/Negocio de la ‘contaminación’ de tecnologías concretas. Así pues, esta Arquitectura NO es para aplicaciones pequeñas o aplicaciones dirigidas simplemente por datos (CRUD, etc.). Si se quiere hacer este otro tipo de apps mas reducidas, recomendamos por el contrario, utilizar otra aproximación, como tecnologías RAD (Rappid Application Development) como WCF-RIA-Services, que son arquitecturas mucho mas sencillas y fáciles de implementar, mas productivas inicialmente, aunque mucho mas acopladas sus capas y no tan idóneas por otro lado para grandes aplicaciones con una vida larga de cambios.

Aplicación ejemplo en Codeplex (Se muestra el cliente WPF)

 

Software ‘de base’ requerido para la versión actual

- Microsoft Visual Studio 2010 - RC
- Microsoft SQL Server 2008 Express (or higher)
- Microsoft Unity 1.2 (We'll migrate to Unity 2.0 in the near future)
- Microsoft PEX 2010
- Microsoft WPF Toolkit

(Las versiones específicas y URLs de download están especificadas en CODEPLEX, junto al Download de la App)

 

 

¡Plan para siguientes versiones!!

Para las siguientes versiones y ‘sabores’ de aplicación, estamos trabajando actualmente en lo siguiente:

- Nuevos clientes de aplicación: Silverlight 4.0, ASP.NET MVC, OBA y Windows Phone 7!!

- Añadiendo otra versión con AppFabric-Cache (“Velocity”) y AppFabric Hosting para los servicios WCF.

- Añadir Seguridad con Orientación a Claims basada en WIF (Windows Identity Foundation)

- Unity 2.0 para desacoplamiento entre los componentes de las Capas de la Arquitectura DDD

- algunos building blocks de la siguiente versión de ENTLIB: Enterprise-Library 5.0

- ¡Mas ideas que nos queráis dar!! :-)

 

 

Equipo de trabajo

Este proyecto está localmente soportado en España por varios Arquitectos de Software y Desarrolladores tanto de Microsoft (DPE, MCS y Premier Support) como de varios partners. Le doy las gracias especialmente a los siguientes autores, colaboradores y reviewers:

- Unai Zorrilla (Plain-Concepts), Javier Calvarro, Miguel Angel Ramos (Microsoft), Rido Minguez (Microsoft), Pierre Millet (Microsoft), Israel García Mesa (Microsoft), Roberto Gonzalez (Renacimiento) y Juan Cid (Avanade), y otros Arquitectos y desarrolladores que añadiré aquí si he olvidado ponerlos... ;-)

¡Colaboración abierta a toda la comunidad!!

Nos encantará recibir noticias, sugerencias, feed-back de la versión actual del libro y de la aplicación ejemplo así como ideas a añadir para mejorar este proyecto que pensamos que esté ‘vivo’ durante muchos meses, creciendo en ideas de implementación de patrones así como en añadir nuevas tecnologías y ‘sabores’.

Así que, muchísimas gracias a todo el que nos dé feed-back. Por favor, hacedlo a través de las DISCUSIONES en nuestro site de CODEPLEX donde tenemos puesta la aplicación ejemplo, ok?

Cesar de la Torre

cesardl@microsoft.com

Architect Evangelist

Microsoft - España