jueves, 10 de abril de 2014

Revisión de ADO .NET



En esta parte daremos una revisión sobre el nuevo modelo de programación de datos propuesto por Microsoft en .NET llamado ADO .NET. Primero veremos las características de ADO .NET, luego describiremos los objetivos para los cuales fue creado y finalmente revisaremos su arquitectura, es decir los componentes que forman ADO .NET, todo según la visión de Microsoft.

  • Características de ADO .NET 
A medida que la programación de aplicaciones ha evolucionado, las nuevas aplicaciones se han convertido en aplicaciones de correspondencia imprecisa basadas en el modelo de aplicación Web. Las aplicaciones de hoy en día utilizan cada vez más XML para codificar datos que se van a pasar a través de conexiones de red. Las aplicaciones Web usan HITP para las comunicaciones entre niveles y, por tanto, deben controlar expresamente el mantenimiento del estado de una solicitud a otra. Este nuevo modelo es muy diferente del estilo de programación con conexión y de correspondencia precisa que caracterizaba la época cliente-servidor, en la que una conexión permanecía abierta durante toda la vida del programa y no hacía falta controlar el estado. 

A la hora de diseñar herramientas y tecnologías para satisfacer las necesidades del programador de hoy en día, Microsoft se dió cuenta de que hacía falta un modelo de programación totalmente nuevo para el acceso a datos, un modelo basado en .NET Framework. Tomar .NET Framework como base garantizaba que la tecnología de acceso a datos sería uniforme: los componentes compartirían un sistema de tipos, unos modelos de diseño y unas convenciones de nomenclatura. 

ADO .NET se diseñó con el propósito de satisfacer las necesidades de este nuevo modelo de programación: arquitectura de datos sin mantener una conexión abierta, estrecha integración con XML, representación común de datos con la posibilidad de combinar datos procedentes de múltiples y variados orígenes, y servicios optimizados para interactuar con una base de datos, todo ello nativo de .NET Framework.

  • Objetivos de ADO .NET 
A la hora de crear ADO .NET, Microsoft se propuso los siguientes 3 grandes objetivos de diseño: 

    • Aprovechar los conocimientos actuales de ADO 
El diseño de ADO .NET satisface muchos de los requisitos del modelo de desarrollo de aplicaciones de hoy en día. Al mismo tiempo, el modelo de programación sigue siendo lo más parecido posible a ADO, de manera que los programadores actuales de ADO no tienen que empezar a aprender desde cero una tecnología de acceso a datos totalmente nueva. ADO .NET forma parte intrínseca de .NET Framework sin que al programador de ADO le parezca completamente extraña. 

ADO .NET coexiste con ADO. Aunque la mayoría de las nuevas aplicaciones basadas en .NET se escribirán mediante ADO .NET, ADO sigue estando disponible para el programador de .NET a través de los servicios de interoperabilidad COM de .NET. 

    • Admitir el modelo de programación N-Capas 
ADO .NET proporciona compatibilidad de primera clase con el entorno de programación N-Capas sin mantener una conexión abierta para el que están escritas muchas aplicaciones nuevas. La idea de trabajar con un conjunto de datos sin mantener una conexión abierta se ha convertido en un objetivo del modelo de programación. La solución de ADO .NET para la programación N-Capas es el DataSet.

Modelo de programación N-Capas en .NET


  • Integrar la compatibilidad con XML 
XML y el acceso a datos están estrechamente relacionados: XML consiste en codificar datos y el acceso a datos consiste cada vez más en XML. .NET Framework no sólo admite los estándares Web, sino que está basado totalmente en ellos.

La compatibilidad con XML está integrada en los cimientos de ADO .NET. Las clases de XML incluidas en .NET Framework y ADO.NET forman parte de la misma arquitectura: están integradas en muchos niveles. Ya no es necesario elegir entre el conjunto de servicios de acceso a datos y los correspondientes servicios de XML; la capacidad para cruzar de uno a otro es inherente al diseño de ambos.

Integración de XML en ADO .NET
  • Arquitectura de ADO .NET
Los componentes deADO.NET están diseñados para separar el acceso a datos de la manipulación de datos. ADO.NET tiene dos componentes principales que cumplen esta función: el DataSet y el proveedor de datos de .NET Framework, que es un conjunto de componentes entre los que se incluyen los objetos Connection, Command, DataReader y DataAdapter. 

El DataSet de ADO .NET es el componente central de la arquitectura sin conexión de ADO .NET. El DataSet está expresamente diseñado para el acceso a datos independientemente del origen de datos. Como resultado, se puede utilizar con múltiples y distintos orígenes de datos, con datos XML o para administrar datos locales de la aplicación. El DataSet contiene una colección de uno o más objetos DataTable formados por filas y columnas de datos, así como información sobre claves principales, claves externas, restricciones y relaciones relativa a los datos incluidos en los objetos DataTable. 

El otro elemento central de la arquitectura de ADO.NET es el proveedor de datos de .NET Framework, cuyos componentes están diseñados expresamente para la manipulación de datos y para el acceso rápido a datos de avance de sólo lectura. El objeto Connection proporciona conectividad con un origen de datos. El objeto Command permite tener acceso a comandos de base de datos para devolver datos, modificar datos, ejecutar procedimientos almacenados y enviar o recuperar información sobre parámetros. El objeto DataReader proporciona una secuencia de datos de alto rendimiento desde el origen de datos. Por último, el objeto DataAdapter proporciona el puente entre el objeto DataSet y el origen de datos. El DataAdapter utiliza objetos Command para ejecutar comandos SQL en el origen de datos tanto para cargar el DataSet con datos como para actualizar en el origen de datos los cambios hechos a los datos incluidos en el DataSet. 

Es posible escribir proveedores de datos de .NET Framework para cualquier origen de datos. 
.NET Framework incluye dos proveedores de datos: el proveedor de datos de .NET Framework para OLE DB y el proveedor de datos de .NET Framework para SQL Server. 

En el siguiente diagrama se ilustran los componentes de la arquitectura de ADO .NET: 

Arquitectura de ADO .NET



Espero haber ayudado en algo. Hasta la próxima oportunidad!




No hay comentarios:

Publicar un comentario en la entrada