Está en la página 1de 35

Introduccin a Microsoft .

NET

Paradigmas de Programacin

Funcionalidad

Windows 3.0

MFC Win16
1980 1990

COM Win32
2000

Qu NO es .NET?
.NET no es un Sistema Operativo

.NET no es un Lenguaje de Programacin .NET no es un Entorno de Desarrollo .NET no es un Servidor de Aplicaciones

Qu es .NET?
Plataforma de Desarrollo compuesta de

Entorno de Ejecucin (Runtime) Bibliotecas de Funcionalidad (Class Library) Lenguajes de Programacin Compiladores Herramientas de Desarrollo (IDE & Tools) Guas de Arquitectura

La evolucin de la plataforma COM

Caractersticas de .NET (1/2)


Plataforma de ejecucin intermedia 100% Orientada a Objetos

Multilenguaje Plataforma Empresarial de Misin Crtica

Caractersticas de .NET (2/2)


Modelo de Programacin nico para todo tipo de aplicaciones y dispositivos de hardware

Se integra fcilmente con aplicaciones existentes desarrolladas en plataformas Microsoft Se integra fcilmente con aplicaciones desarrolladas en otras plataformas

Plataforma de Ejecucin Intermedia

Aplicacin .NET
Microsoft .NET

Lenguajes de Programacin Libreras de Funcionalidad Entorno de Ejecucin Entorno de Desarrollo

Sistema Operativo (Familia Windows)

.NET como evolucin de COM


Entorno de Ejecucin (Runtime)

COM: Windows .NET: Common Language Runtime CLR

Libreras de Funcionalidad

COM: Algunas (ADO, FSO, etc.) .NET: Muy extensa (.NET Framework Class Library) COM: VB, C++, VFP, ASP, J++ .NET: Common Language Specification CLS COM: Uno para cada lenguaje .NET: Uno independiente del lenguaje (VS.NET)

Lenguajes de Programacin

Entorno de Desarrollo (IDE)

Qu es el .NET Framework?
Paquete de software fundamental de la plataforma .NET. Incluye:

Entorno de Ejecucin (Runtime) Bibliotecas de Funcionalidad (Class Library)

Se distribuye en forma libre y gratuita Existen tres variantes principales:


.NET Framework Redistributable Package .NET Framework SDK .NET Compact Framework

Est instalado por defecto en Windows 2003 Server o superior

Dnde instalar el .NET Framework?


Cliente
Aplicacin de Escritorio
Aplicacin Web Aplicacin de Consola Aplicacin Mvil

Servidor

.NET Compact Framework

* Slo si la aplicacin es distribuda

Lnea del tiempo de .NET


Visual Studio 6.0 Visual Basic VBA Visual FoxPro VBScript C++ J++ JScript ASP Visual Studio .NET 2003 .NET Framework 1.1 .NET Compact Framework J# Visual Studio Orcas .NET Framework Orcas .NET Compact Framework Orcas

2000

2001

2002

2003

2004

2005

2006 y ms

Visual Studio .NET 2002 .NET Framework 1.0 Visual Basic .NET C#

Visual Studio 2005 (Whidbey) .NET Framework 2.0 (Whidbey) .NET Compact Framework 2.0 (Whidbey)

Arquitectura del .NET Framework


.NET Framework SDK

VB

C++

C#

J#

Common Language Specification


Class Library .NET Framework

ASP.NET
.NET Framework Redistributable

Windows Forms

ADO.NET y XML

Base Class Library Common Language Runtime Windows COM+ Services

CLR Common Language Runtime


El CLR es el motor de ejecucin (runtime) de .NET Caractersticas

Compilacin Just-In-Time (JIT) Just-InGestin automtica de memoria (Garbage Collector) Gestin de errores consistente (Excepciones) Ejecucin basada en componentes (Assemblies) Gestin de Seguridad Multithreading

.NET Framework Class Library


Conjunto de Tipos bsicos (clases, interfaces, etc.) que vienen includos en el .NET Framework Los tipos estn organizados en jerarquas lgicas de nombres, denominados NAMESPACES Los tipos son INDEPENDIENTES del lenguaje de desarrollo Es extensible y totalmente orientada a objetos

Common Language Specification (CLS)


Especificacin que estandariza una serie de caractersticas soportadas por el CLR Contrato entre diseadores de lenguajes de programacin y autores de bibliotecas Permite la interoperabilidad entre lenguajes Microsoft provee implementaciones de 4 lenguajes, todos compatibles con CLS

Microsoft Visual Basic .NET Microsoft Visual C# .NET Microsoft Visual J#.NET Microsoft Visual C++.NET

CLS - Eleccin del lenguaje


.NET posee un nico runtime (el CLR) y un nico conjunto de bibliotecas para todos los lenguajes No hay diferencias notorias de performance entre los lenguajes provistos por Microsoft El lenguaje a utilizar, en gral., depender de su experiencia previa con otros lenguajes o de gustos personales

Si conoce Java, Delphi, C++, etc. C# Si conoce Visual Basic o VBScript VB.NET

Los tipos de aplicaciones .NET son INDEPENDIENTES del lenguaje que elija

Modelo de Ejecucin del CLR


Cdigo Fuente
VB.NET C# C++.NET

Compilador VB.NET
Assembly Cdigo MSIL

Compilador C#
Assembly Cdigo MSIL

Compilador C++ .NET


Assembly Cdigo MSIL

Componente No Manejado

Cdigo Manejado

Common Language Runtime


Compilador JIT
Cdigo Nativo

Sistema Operativo (Windows)

Base Class Library


System
Collections Configuration Diagnostics Globalization IO Net Reflection Resources Security ServiceProcess Text Threading InteropServices Remoting Serialization

Acceso a Datos: ADO.NET


System.Data Common OracleClient Odbc SqlClient OleDb SqlTypes

System.Xml

XSLT XPath

Serialization Schema

Acceso a Bases de Datos Relacionales Escenario Conectado


Un entorno conectado es uno en el cual los usuarios estn constantemente conectados a la fuente de datos Ventajas:

Mayor seguridad Mejor control de concurrencia Los datos se mantienen actualizados Se requiere una conexin constante (consume recursos del servidor) Escalabilidad

Desventajas:

Acceso a Bases de Datos Relacionales Escenario Desconectado


En un entorno desconectado, una parte de los datos del repositorio central se copia y modifica en forma local, para luego sincronizarse con ste. Ventajas

Se puede trabajar en forma independiente Mayor escalabilidad y performance Los datos no estn sinconizados Resolucin manual de conflictos

Desventajas

ADO.NET - Arquitectura

ADO.NETADO.NET- Proveedores de Acceso a Datos


SQL Server/Access (System.Data.SqlClient) OLE DB (System.Data.OleDb) ODBC (System.Data.Odbc) Oracle (System.Data.OracleClient) Otros provistos por terceros (MySQL, PostgreSQL, DB2, etc..)

ADO.NETADO.NET- Clases ms comunes


Base de Datos Maneja la coneccin a una base de datos Ejecuta comandos contra una base de datos XxxConnection

XxxCommand

Intercambia datos entre un dataset y una base de datos


Copia local de datos relacionales

XxxDataAdapter DataSet

Provee acceso a datos read-only, Forward-only XxxDataReader

XxxConnection: XxxConnection: representa una conexin.

Almacena, entre otras cosas, el string de conexin (connection string), y permite (connection string), conectarse y desconectarse con una base de datos.

XxxCommand: XxxCommand: permite almacenar y ejecutar una instruccin SQL contra una base de datos

enviando parmetros de entrada y recibiendo parmetros de salida.

Ambas clases se utilizan escenarios conectados como desconectados.

XxxDataReader: XxxDataReader: permite acceder a los resultados de la ejecucin de un comando contra la base de datos de manera readreadonly (slo lectura), forward-only (slo hacia forwardadelante). Esta clase se utiliza en escenarios conectados, ya que no es posible operar sobre los registros de un DataReader estando desconectado de la fuente de datos.

XxxDataAdapter y DataSet: en conjunto, DataSet: estas clases constituyen el corazn del soporte a escenarios desconectados de ADO.NET. El DataSet es una representacin en memoria de una base de datos relacional, que permite almacenar un conjunto de datos obtenidos mediante un DataAdapter. DataAdapter.

El DataAdapter acta como intermediario entre la base de datos y el DataSet local desconectado. Una vez que el DataSet se encuentra lleno con los datos que se necesitan para trabajar, la conexin con la base de datos puede cerrarse sin problemas y los datos pueden ser modificados localmente.

el DataAdapter provee un mecanismo para sincronizar los cambios locales contra el servidor de base de datos. la clase System.Data.DataSet no tiene el prefijo Xxx, ya que es independiente del Xxx, proveedor de acceso a datos utilizado.

ADO.NETADO.NET- DataSet
DataSet

DataTable DataColumn

DataTable

DataRow

Relaciones Esquema XML


Restricciones

DataSet es una representacin residente en memoria de datos relacionales Un DataSet, al igual que una base de datos, DataSet, est compuesto por un conjunto de tablas (coleccin de clases DataTable), DataTable), DataTable est compuesta a su vez por un conjunto de filas (coleccin de clases DataRow) y columnas (coleccin de DataRow) clases DataColumn). DataColumn).

ADO.NET vs. ADO

ADO.NET Accediendo a datos Conectado


En un escenario conectado, los recursos se mantienen en el servidor hasta que la conexin se cierra 1) Abrir Conexin 2) Ejecutar Comando 3) Procesar Filas en DataReader 4) Cerrar Reader 5) Cerrar Conexin

ADO.NET Accediendo a datos Desconectado


En un escenario desconectado, los recursos no se mantienen en el servidor mientras los datos se procesan 1) Abrir Conexin 2) Llenar DataSet mediante DataAdapter 3) Cerrar Conexin 4) Procesar DataSet 5) Abrir Conexin 6) Actualizar fuente de datos mediante DataAdapter 7) Cerrar Conexin

Ventajas de .NET
Unifica los modelos de programacin Simplifica an ms el desarrollo Provee un Entorno de Ejecucin robusto y seguro Es independiente del lenguaje de programacin Interoperabilidad con cdigo existente Simplifica la instalacin y administracin de las aplicaciones Es Extensible

También podría gustarte