Conjunto de herramientas y bibliotecas de programación para Microsoft .NET Framework
Microsoft Enterprise Library es un conjunto de herramientas y bibliotecas de programación para Microsoft .NET Framework . Proporciona API para facilitar prácticas comprobadas en áreas centrales de programación, como acceso a datos, registro, manejo de excepciones y otras. Enterprise Library se proporciona como binarios y código fuente conectables , que los desarrolladores pueden usar y personalizar libremente para sus propios fines. También se entrega con casos de prueba y guías de inicio rápido.
Beneficios
- Productividad mejorada: cada uno de los bloques de aplicación proporciona varias interfaces destinadas a satisfacer las preocupaciones comunes de la aplicación.
- Diseño basado en la configuración: muchas decisiones técnicas sobre el comportamiento de la aplicación pueden demorarse hasta el momento de la configuración de la aplicación. Por ejemplo, si una aplicación no maneja correctamente una excepción, en lugar de agregar otro controlador de excepciones al código, un administrador puede configurar una política de manejo de excepciones adicional.
- Capacidad de prueba mejorada: muchas áreas de aplicación se pueden reconfigurar para mejorar las pruebas de la aplicación de forma aislada.
- Reduce la carga de trabajo del desarrollador.
Bloques de aplicación
Cada bloque de aplicación aborda un problema transversal específico y ofrece funciones altamente configurables, lo que genera una mayor productividad del desarrollador. Los bloques de aplicación de Enterprise Library están diseñados para ser lo más independientes posible de la arquitectura de la aplicación; por ejemplo, el bloque de aplicación de registro se puede utilizar igualmente en una aplicación web, de cliente inteligente o orientada a servicios .
Microsoft ha producido una serie de otros productos que aprovechan los bloques de aplicaciones de la biblioteca empresarial, [1] incluidos Web Service Software Factory y Smart Client Software Factory. [ cita requerida ]
Utilidades
Además de los bloques de aplicación, la distribución estándar de Microsoft de Enterprise Library incluye:
- Consola de configuración: para agregar visualmente un bloque de aplicación a la configuración de una aplicación.
- Servicio fuera de proceso para registro de producción.
Historial de versiones
Han existido varias versiones de Microsoft Enterprise Library:
- Enterprise Library 6.0 (abril de 2013) - Actualidad
- Paquete de integración de Windows Azure para Enterprise Library 5.0 (diciembre de 2011) - Actualidad
- Actualización opcional 1 de Enterprise Library 5.0 (mayo de 2011) - Actual
- Paquete de integración Silverlight de Enterprise Library 5.0 (mayo de 2011) - Activo
- Enterprise Library 5.0 (abril de 2010) - Activo
- Enterprise Library 4.1 (octubre de 2008): obsoleto
- Enterprise Library 4.0 (mayo de 2008): obsoleta
- Enterprise Library 3.1 (mayo de 2007): obsoleto
- Enterprise Library 3.0 (abril de 2007): obsoleta
- Enterprise Library 2.0 (enero de 2006) - Activa/Retirada
- Enterprise Library 1.1 (junio de 2005): obsoleto
- Enterprise Library 1.0 (enero de 2005): obsoleta
Vista previa de la biblioteca de clases portátil de Unity 3.5
Unity es el componente de inyección de dependencias de Microsoft Enterprise Library, que surgió del Bloque de aplicaciones de inyección de dependencias. Más tarde se convirtió en una biblioteca independiente [2] y la comunidad continúa manteniéndola. [3] La versión 3.5, lanzada en abril de 2014, [4] agrega compatibilidad con Xamarin . [5]
Versión 6.0
Microsoft Enterprise Library 6 se lanzó en abril de 2013. [6]
Las nuevas características incluyen:
- Bloque de aplicación de registro semántico (SLAB)
- Simplificando la biblioteca en todos sus aspectos
- Bloque de aplicación de manejo de fallas transitorias generalizado y actualizado ("Topaz") para ayudar a aumentar la resiliencia ante errores
- Registro por convención y otras mejoras en Unity
- Compatibilidad con aplicaciones de la Tienda Windows (Unity, Topaz)
- Compatibilidad con el registro asincrónico en el bloque de aplicación de registro
- Configuración programática optimizada de todos los bloques para facilitar el inicio rápido y la experimentación/uso.
- Integración con otras tecnologías (ASP.NET MVC y ASP.NET Web API)
Esta versión también ha retirado los siguientes 3 bloques:
- Bloque de aplicación de almacenamiento en caché
- Bloque de aplicación de criptografía
- Bloque de aplicación de seguridad
Versión 5.0
Microsoft Enterprise Library 5.0 se lanzó en abril de 2010, anunciado por Grigori Melnik. [7]
Las nuevas características incluyen:
- Refactorización arquitectónica que soporta completamente la inyección de dependencia
- Simplificación del código base
- Independencia del contenedor (viene con Unity pero puedes elegir usar otros contenedores DI)
- Compatibilidad con bases de datos asincrónicas
- Accededores de datos
- Soporte de interfaz de configuración fluida
- Esquemas de configuración para habilitar IntelliSense
- Nueva herramienta de configuración
- Registro de mayor rendimiento
- Soporte para fusión de configuraciones jerárquicas y redirecciones
- Respetar los atributos de validación entre VAB y
System.ComponentModel.DataAnnotations
- Validación WPF
- Mensajes de error más claros en todo momento
- Soporte lado a lado
- Instalador a la carta
- Compatibilidad con Visual Studio 2008 y Visual Studio 2010
- Corrección de errores
- Compatibilidad con versiones anteriores de la versión 4.1
Paquete de integración de Silverlight versión 5.0
Una versión de Microsoft Enterprise Library 5.0 para Silverlight . Lanzada en mayo de 2011, [8] incluye los siguientes bloques:
- Bloque de aplicación de almacenamiento en caché
- Bloque de aplicación de validación
- Bloque de aplicación de registro
- Bloque de aplicación de manejo de excepciones
- Bloque de aplicación de Unity
- Bloque de aplicación de inyección de políticas
Paquete de integración de Windows Azure versión 5.0
Lanzado en diciembre de 2011 [9]
Unidad 3.0
Lanzado en abril de 2013. [10]
Unidad 2.1
Originalmente publicado en mayo de 2011, con una actualización en agosto de 2012. [11]
Versión 4.1
Esta versión de Enterprise Library de octubre de 2008 [12] es una versión de servicio que incluye lo siguiente: [13]
- Mecanismo de intercepción de Unity e integración del bloque de aplicación de inyección de políticas con el bloque de aplicación de Unity
- Se agregó soporte para genéricos en el bloque de aplicación de Unity
- Se agregó soporte para matrices en el bloque de aplicación de Unity
- Mejoras de rendimiento
- Mejoras de usabilidad en la herramienta de configuración
- Compatibilidad con Visual Studio 2008 Service Pack 1
- Corrección de errores
La Application Block Software Factory y el paquete Strong Naming Guidance Package no están incluidos en esta versión, pero están disponibles como descarga independiente. Por lo tanto, ya no existe una dependencia de Guidance Automation Extensions (GAX).
Versión 4.0
Esta versión de Enterprise Library de mayo de 2008 [14] incluye lo siguiente:
- Integración con el bloque de aplicaciones de Unity
- Compatibilidad con Instrumental de administración de Windows (WMI) 2.0 e instrumentación mejorada
- Mejoras de rendimiento (en particular, en el bloque de aplicación de registro)
- Gestores de caché conectables
- Compatibilidad con Visual Studio 2008
- Corrección de errores
Versión 3.1
En mayo de 2007, se lanzó Enterprise Library 3.1 con pequeñas mejoras en los bloques de aplicación de validación e inyección de políticas.
Versión 3.0
En abril de 2007 se publicó Enterprise Library 3.0. Contiene nuevos bloques de aplicación, una nueva fábrica de software de bloques de aplicación diseñada para simplificar el desarrollo de nuevos bloques de aplicación y extensiones, y nuevas funciones que proporcionan una mejor integración con .NET Framework 3.0. La versión 3.0 de Enterprise Library contiene los siguientes bloques de aplicación:
- Almacenamiento en caché
- Acceso a datos
- Criptografía
- Manejo de excepciones
- Explotación florestal
- Inyección de políticas (nueva)
- Seguridad
- Validación
Versión 2.0
En enero de 2006, se publicó una nueva versión de Enterprise Library destinada a .NET Framework 2.0. El cambio más significativo de esta versión fue que se eliminó el bloque de aplicación de configuración y se actualizaron los bloques para utilizar las capacidades mejoradas de System.Configuration de .NET . Esta versión también incluyó mejoras significativas en el bloque de aplicación de registro y se eliminó gran parte del bloque de aplicación de seguridad debido a capacidades similares proporcionadas en .NET Framework 2.0. La versión .NET 2.0 de Enterprise Library contenía los siguientes bloques de aplicación:
- Almacenamiento en caché
- Acceso a datos
- Criptografía
- Manejo de excepciones
- Explotación florestal
- Seguridad
Versión 1.1
Se lanzaron dos versiones de Enterprise Library para .NET Framework 1.1. La primera se lanzó en enero de 2005, seguida de una versión de mantenimiento menor en junio de 2005. Las versiones .NET 1.1 de Enterprise Library contenían los siguientes bloques de aplicación:
- Almacenamiento en caché
- Configuración
- Criptografía
- Acceso a datos
- Manejo de excepciones
- Registro e instrumentación
- Seguridad
Versión 1.0
Futuro
Ron Jacobs, un evangelista de Microsoft, describió el propósito de Enterprise Library como "llenar los vacíos" del desarrollo de .NET entre las versiones del marco. A medida que el marco continúa avanzando, los desarrolladores exigen bibliotecas de desarrollo más productivas.
Al mismo tiempo, las plataformas de Microsoft evolucionan y ciertos escenarios, inicialmente abordados por Enterprise Library, ahora son compatibles con las propias plataformas. En este caso, el equipo de patrones y prácticas utiliza el proceso de retiro elegante para descontinuar algunas partes. [15]
Microsoft continúa promocionando Enterprise Library para el desarrollo de empresas y líneas de negocio, e incluso muchos productos de Microsoft, así como proyectos dentro de Microsoft IT, lo utilizan ampliamente.
A partir de noviembre de 2013, Microsoft ha abierto por completo el código fuente de Enterprise Library y todos sus bloques de aplicación. [16] Ahora aceptan contribuciones de la comunidad. Las últimas versiones de SLAB1.1 y Unity 3.5 se desarrollan en estrecha colaboración con la comunidad.
En agosto de 2015, Microsoft publicó que estaban entregando la inyección de dependencias de Unity a nuevos propietarios (Pablo Cibraro y Pedro Wood) en un nuevo repositorio de GitHub. [3] Al mismo tiempo, el sitio web principal de patrones y prácticas - Enterprise Library en CodePlex, [17] anunció que el resto de los bloques de la aplicación ya no se desarrollarían. Sin embargo, el código fuente seguirá estando disponible.
Véase también
Referencias
- ^ "Patrones y prácticas de Microsoft". GitHub . Microsoft . Consultado el 27 de noviembre de 2020 .
- ^ Tavares, Chris (5 de noviembre de 2013). "Reenviar a la Guía del desarrollador para la inyección de dependencias con Unity". microsoft.com . Microsoft Patterns & Practices . Consultado el 27 de noviembre de 2020 .
- ^ ab "El futuro de Unity". blogs.msdn.microsoft.com . 21 de agosto de 2015 . Consultado el 7 de mayo de 2016 .
- ^ Melnik, Grigori (21 de abril de 2014). «Unity 3.5 RTW: ahora con más paz, amor y rock and roll». Blog de Microsoft . Consultado el 27 de noviembre de 2020 .
- ^ "Simplificación del desarrollo multiplataforma: versión preliminar de la biblioteca de clases portátil de Unity 3.5". Blog de MSDN . Microsoft. Archivado desde el original el 26 de noviembre de 2015.
- ^ "Recién publicado: Microsoft Enterprise Library 6". microsoft.com . 25 de abril de 2013 . Consultado el 27 de noviembre de 2020 .
- ^ Melnik, Grigori (20 de abril de 2010). "¡Se lanzó Microsoft Enterprise Library 5.0!". Blog de Microsoft . Consultado el 27 de noviembre de 2020 .
- ^ Melnik, Gregori (11 de mayo de 2011). "¡Ya se lanzó el paquete de integración de Silverlight para Microsoft Enterprise Library 5.0!". Blog de Microsoft .
- ^ Melnik, Grigori (2 de diciembre de 2011). "Anuncio del paquete de integración de bibliotecas empresariales para Windows Azure con escalado automático, manejo de errores transitorios y más". Blog de Microsoft . Consultado el 27 de noviembre de 2020 .
- ^ "Unity 3". Microsoft. 14 de marzo de 2014.
- ^ "Unity 2.1". Microsoft. 14 de marzo de 2014.
- ^ Melnik, Grigori (28 de octubre de 2008). "Recién publicado: Microsoft Enterprise Library 4.1 y Unity 1.2". Microsoft Patterns & Practices . Consultado el 27 de noviembre de 2020 .
- ^ "Acerca de esta versión de Enterprise Library". microsoft.com . 21 de diciembre de 2010 . Consultado el 27 de noviembre de 2020 .
- ^ "Microsoft Enterprise Library 4.0 – Mayo de 2008". Microsoft Patterns & Practices. 6 de diciembre de 2013. Consultado el 27 de noviembre de 2020 .
- ^ Melnik, Grigori (8 de abril de 2011). "On deprecation". Blog de Microsoft . Consultado el 27 de noviembre de 2020 .
- ^ Melnik, Grigori (21 de noviembre de 2013). "Microsoft Enterprise Library: modelo de desarrollo abierto". Blog de Microsoft .
- ^ "patrones y prácticas – Enterprise Library". CodePlex . Archivado desde el original el 16 de enero de 2018 . Consultado el 7 de mayo de 2016 .
Lectura adicional
- Betts, Dominic; Dominguez, Julian; Homer, Alex; de Lahitte, Hernan; Melnik, Grigori; Simonazzi, Fernando; Subramanian, Mani (2013). Guía del desarrollador de Microsoft Enterprise Library . Patrones y prácticas de Microsoft. ISBN 978-1621140344.
- Joshi, Sachin (2010). Microsoft Enterprise Library 5.0 . Packt Publishing. ISBN 978-1849680905.
- Newton, Keenan (2007). La guía definitiva de Microsoft Enterprise Library . Versión en inglés. ISBN 978-1590596555.
- Fenster, Len (2006). Uso eficaz de Microsoft Enterprise Library: elementos básicos para crear aplicaciones y servicios empresariales . Addison-Wesley Longman. ISBN 978-0321334213.
Enlaces externos
- Guía para desarrolladores de Enterprise Library, 2.ª edición, de Microsoft Patterns & Practices, 2013
- Guía de inyección de dependencias con Unity de Microsoft Patterns & Practices, 2013
- Biblioteca empresarial en CodePlex
- Biblioteca empresarial en MSDN
- Biblioteca empresarial de Microsoft 5.0 de Packt Publishing