programación de aplicaciones visuales ii introducción a la plataforma.net

46
Programación de Programación de Aplicaciones Aplicaciones Visuales II Visuales II Introducción a la Introducción a la plataforma .NET. plataforma .NET.

Upload: velasco-grande

Post on 27-Jan-2015

22 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Programación de Programación de Aplicaciones Visuales Aplicaciones Visuales

IIII

Programación de Programación de Aplicaciones Visuales Aplicaciones Visuales

IIII

Introducción a la Introducción a la plataforma .NET.plataforma .NET.

Page 2: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

ObjetivoObjetivo

Presentar una introducción a la plataforma Presentar una introducción a la plataforma de desarrollo Microsoft .NET, describiendo de desarrollo Microsoft .NET, describiendo sus características elementales de sus características elementales de funcionamiento, su arquitectura de funcionamiento, su arquitectura de componentes y sus principales bibliotecas componentes y sus principales bibliotecas reutilizables.reutilizables.

Page 3: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

TemarioTemario

Introducción a Microsoft .NET.Introducción a Microsoft .NET.Componentes Fundamentales.Componentes Fundamentales.Funcionamiento Interno del CLR.Funcionamiento Interno del CLR.Bibliotecas Principales.Bibliotecas Principales.Ventajas de .NET.Ventajas de .NET.Herramientas de Desarrollo .NET.Herramientas de Desarrollo .NET.

Page 4: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

TemarioTemario

Introducción a Microsoft .NET.Introducción a Microsoft .NET. ¿Qué no es .NET?.¿Qué no es .NET?. ¿Qué es .NET?.¿Qué es .NET?. Características de .NET.Características de .NET.

Page 5: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

¿Qué NO es .NET?¿Qué NO es .NET?

.NET no es un Sistema Operativo..NET no es un Sistema Operativo.

.NET no es un Lenguaje de Programación..NET no es un Lenguaje de Programación.

.NET no es un Entorno de Desarrollo..NET no es un Entorno de Desarrollo.

.NET no es un Servidor de Aplicaciones..NET no es un Servidor de Aplicaciones.

.NET no es un producto empaquetado que .NET no es un producto empaquetado que se pueda comprar como tal.se pueda comprar como tal.

Page 6: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

¿Qué es el framework.net?¿Qué es el framework.net?

Plataforma de Desarrollo y Plataforma de Desarrollo y ejecución de aplicaciones ejecución de aplicaciones compuesta de:compuesta de:

Entorno de Ejecución (Runtime)Entorno de Ejecución (Runtime) Bibliotecas de Funcionalidad (Class Library)Bibliotecas de Funcionalidad (Class Library) Lenguajes de ProgramaciónLenguajes de Programación CompiladoresCompiladores Herramientas de Desarrollo (IDE & Tools)Herramientas de Desarrollo (IDE & Tools) Basada en el paradigma de orientación a Basada en el paradigma de orientación a

objetos.objetos. Permite el desarrollo de aplicaciones de nivel Permite el desarrollo de aplicaciones de nivel

empresarial a gran escalaempresarial a gran escala Se integra con tecnología COM.Se integra con tecnología COM.

Page 7: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Características de .NETCaracterísticas de .NET

Plataforma de ejecución intermedia.Plataforma de ejecución intermedia.

100% Orientada a Objetos.100% Orientada a Objetos.

Multilenguaje.Multilenguaje.

Modelo de Programación único para todo Modelo de Programación único para todo tipo de aplicaciones y dispositivos de tipo de aplicaciones y dispositivos de hardware.hardware.

Page 8: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Plataforma de Ejecución Plataforma de Ejecución IntermediaIntermedia

Entorno de

Desarrollo

Mic

rosoft

.N

ET

Librerías de Funcionalidad

Lenguajes de Programación

Entorno de Ejecución

Sistema Operativo (Familia Windows)

Aplicación .NET

Page 9: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

¿Qué es el .NET Framework?¿Qué es el .NET Framework?Paquete de software fundamental de la Paquete de software fundamental de la plataforma .NET. Incluye:plataforma .NET. Incluye: Entorno de Ejecución (Runtime).Entorno de Ejecución (Runtime). Bibliotecas de Funcionalidad (Class Bibliotecas de Funcionalidad (Class

Library).Library).

Se distribuye en forma libre y gratuita.Se distribuye en forma libre y gratuita.

Existen tres variantes principales:Existen tres variantes principales: .NET Framework Redistributable .NET Framework Redistributable

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

Page 10: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

.NET Compact Framework

*

*

AplicaciónMóvil

Aplicación de Consola

Aplicación Web

Aplicación de Escritorio

¿Dónde instalar el .NET ¿Dónde instalar el .NET Framework?Framework?

ServidorCliente

* Sólo si la aplicación es distribuída.* Sólo si la aplicación es distribuída.

Page 11: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

¿Qué problemas ¿Qué problemas soluciona .NET?soluciona .NET?

Con Internet, la mayoría de Con Internet, la mayoría de aplicaciones y dispositivos aplicaciones y dispositivos tienen problemas tienen problemas comunicándose entre sí.comunicándose entre sí.Los programadores terminan por Los programadores terminan por escribir infraestructura en lugar escribir infraestructura en lugar de aplicaciones (ej para enviar de aplicaciones (ej para enviar correo)correo)Los programadores han tenido Los programadores han tenido que limitar su alcance o que limitar su alcance o aprender continuamente nuevos aprender continuamente nuevos lenguajes para superar las lenguajes para superar las limitaciones de los lenguajeslimitaciones de los lenguajes

Page 12: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Versiones del frameworkVersiones del framework

Version 1.0 (año en 2002 para Version 1.0 (año en 2002 para VS2002)VS2002)Version 1.1 (liberada en 2003 para Version 1.1 (liberada en 2003 para VS2003) VS2003) Version 2.0 (liberada a fines 2006 Version 2.0 (liberada a fines 2006 para VS2005)para VS2005)Version 3.0 Version 3.0 Version 3.5Version 3.5

Page 13: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Versiones del frameworkVersiones del framework

.NET Framework Redistributable .NET Framework Redistributable PackagePackage Compuesto por:Compuesto por:

CLRCLR BCLBCL

.NET Framework SDK.NET Framework SDK Herramientas desde línea de comandos Herramientas desde línea de comandos

tales como compiladores, depuradores tales como compiladores, depuradores ademas de CLR y BCLademas de CLR y BCL

.NET Compact Framework.NET Compact Framework Versión reducida para dispositivos Versión reducida para dispositivos

móvilesmóviles

Page 14: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Temas a TratarTemas a Tratar

Introducción a Microsoft .NET.Introducción a Microsoft .NET.Componentes Fundamentales.Componentes Fundamentales. Arquitectura.Arquitectura. Common Language Runtime (CLR).Common Language Runtime (CLR). Microsoft Intermediate Language.Microsoft Intermediate Language. Assemblies.Assemblies. .NET Class Library..NET Class Library. Common Language Specification (CLS).Common Language Specification (CLS).

Page 15: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Windows COM+ Services

Common Language Runtime

Base Class Library

ADO.NET y XML

ASP.NET Windows Forms

Common Language Specification

VB C++ C# J# …

Arquitectura del .NET Arquitectura del .NET FrameworkFramework

.NE

T F

ram

ewor

k R

edis

trib

utab

le

.NE

T F

ram

ewo

rk S

DK

.NE

T F

ramew

ork

Class Library

Page 16: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Common Language Common Language Specification (CLS)Specification (CLS)

Especificación que estandariza una serie de características soportadas por el CLR.Contrato entre diseñadores de lenguajes de programación y autores de bibliotecas.Permite la interoperabilidad entre lenguajes.Microsoft provee implementaciones de 4 lenguajes, todos compatibles con CLS. Microsoft Visual Basic .NETMicrosoft Visual Basic .NET Microsoft Visual C# .NETMicrosoft Visual C# .NET Microsoft Visual J#.NETMicrosoft Visual J#.NET Microsoft Visual C++.NETMicrosoft Visual C++.NET

Page 17: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Common Language Common Language Specification (CLS)Specification (CLS)

El resto de la industria y el sector académico han desarrollado más de 20 lenguajes compatibles con la especificación CLS.

CobolCobol

EiffelEiffel

FortranFortran

PascalPascal

PerlPerl

C+C++.NE+.NETT

C#C#

HaskellHaskell

JavaJava JavaScriJavaScriptpt

Visual Visual Basic.NETBasic.NET

MercuryMercury

MLML

PHPPHP

Objective CamlObjective Caml

OberonOberon SmalltalkSmalltalk SchemeScheme

J#J#

RPGRPG

MondrianMondrian

APLAPL

DelphiDelphi PythonPython

LISPLISP PrologProlog

Page 18: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Temas a TratarTemas a Tratar

Introducción a Microsoft .NET.Introducción a Microsoft .NET.Componentes Fundamentales.Componentes Fundamentales.Funcionamiento Interno del CLRFuncionamiento Interno del CLR.. Modelo de Ejecución.Modelo de Ejecución. Common Type System.Common Type System.

Page 19: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

CLR – Common Language CLR – Common Language RuntimeRuntime

El CLR es el motor de ejecución (runtime) El CLR es el motor de ejecución (runtime) de .NET.de .NET.Características.Características. Compilación Just-In-Time (JIT).Compilación Just-In-Time (JIT). Gestión automática de memoria Gestión automática de memoria

(Garbage Collector).(Garbage Collector). Gestión de errores consistente Gestión de errores consistente

(Excepciones).(Excepciones). Ejecución basada en componentes Ejecución basada en componentes

(Assemblies).(Assemblies). Gestión de Seguridad.Gestión de Seguridad. Multithreading.Multithreading.

Page 20: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

CLR – Componentes InternosCLR – Componentes Internos

Class Loader

IL to NativeCompilers

CodeManager

GarbageCollector

Security Engine Debug Engine

Type Checker Exception Manager

Thread Support COM Marshaler

Base Class Library Support

Page 21: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

¿Qué es un “Assembly”?¿Qué es un “Assembly”?

Un Assembly es la unidad mínima de Un Assembly es la unidad mínima de ejecución, distribución, instalación y ejecución, distribución, instalación y versionado de aplicaciones .NET,versionado de aplicaciones .NET,

MetadataMetadata

Código CompiladoCódigo CompiladoMSILMSIL

RecursosRecursos

MiBiblioteca.DLLMiBiblioteca.DLL

Descripción de TiposDescripción de Tipos

ClasesClasesClases BaseClases BaseInterfaces ImplementadasInterfaces ImplementadasAtributos de las ClasesAtributos de las ClasesMétodos de las ClasesMétodos de las Clases

NombreNombreVersiónVersiónCulturaCultura

Manifiesto del AssemblyManifiesto del Assembly

Otros AssembliesOtros AssembliesPermisos de SeguridadPermisos de SeguridadTipos ExternosTipos Externos

Page 22: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Assemblies - Assemblies - Aplicaciones .NETAplicaciones .NET

Uno o más Assemblies.Uno o más Assemblies.Al ejecutar una aplicación, ¿cómo ubico los Al ejecutar una aplicación, ¿cómo ubico los assemblies necesarios?assemblies necesarios?

El Class Loader busca en el directorio El Class Loader busca en el directorio local (preferido).local (preferido).

Global Assembly Cache (GAC).Global Assembly Cache (GAC).Diferentes aplicaciones pueden usar Diferentes aplicaciones pueden usar diferentes versionesdiferentes versiones Actualizaciones más simples.Actualizaciones más simples. Desinstalación más simple.Desinstalación más simple.

Page 23: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

.NET Framework Class .NET Framework Class LibraryLibrary

Conjunto de Tipos básicos (clases, interfaces, etc.) que vienen incluídos en el .NET Framework.Los tipos están organizados en jerarquías lógicas de nombres, denominados NAMESPACES.Los tipos son INDEPENDIENTES del lenguaje de desarrollo.Es extensible y totalmente orientada a objetos.

Page 24: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

.NET .NET FrameworkFramework Class Class LibraryLibraryEl namespace raíz es SYSTEM

System

System.Data System.Xml

System.Web

GlobalizationGlobalization

DiagnosticsDiagnostics

ConfigurationConfiguration

CollectionsCollections

ResourcesResources

ReflectionReflection

NetNet

IOIO

ThreadingThreading

TextText

ServiceProcessServiceProcess

SecuritySecurity

CommonCommon

OleDbOleDb

SqlClientSqlClient

OdbcOdbc

XPathXPath

XSLTXSLT

RuntimeRuntime

InteropServicesInteropServices

RemotingRemoting

SerializationSerialization

SerializationSerialization

ConfigurationConfiguration SessionStateSessionState

CachingCaching SecuritySecurity

ServicesServices

DescriptionDescription

DiscoveryDiscovery

ProtocolsProtocols

UIUI

HtmlControlsHtmlControls

WebControlsWebControls

System.Drawing

ImagingImaging

Drawing2DDrawing2D

TextText

PrintingPrinting

System.Windows.FormsDesignDesign ComponentModelComponentModel

Page 25: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

CLS - Elección del lenguajeCLS - Elección del lenguaje

.NET posee un único runtime (el CLR) y .NET posee un único runtime (el CLR) y un único conjunto de bibliotecas para un único conjunto de bibliotecas para todos los lenguajes.todos los lenguajes.No hay diferencias notorias de No hay diferencias notorias de performance entre los lenguajes performance entre los lenguajes provistos por Microsoft.provistos por Microsoft.El lenguaje a utilizar, en gral., El lenguaje a utilizar, en gral., dependerá de la experiencia previa con dependerá de la experiencia previa con otros lenguajes o de gustos personales.otros lenguajes o de gustos personales.Los tipos de aplicaciones .NET son Los tipos de aplicaciones .NET son INDEPENDIENTES del lenguaje que elija.INDEPENDIENTES del lenguaje que elija.

Page 26: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Temas a TratarTemas a Tratar

Introducción a Microsoft .NET.Introducción a Microsoft .NET.Componentes Fundamentales.Componentes Fundamentales.Funcionamiento Interno del CLRFuncionamiento Interno del CLR.. Modelo de Ejecución.Modelo de Ejecución. Common Type System.Common Type System.

Page 27: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Código nativo

CompiladorJIT

CódigoMSIL

(Assembly).EXE/.DLL

Compilador.NET

Código Fuente

Código MSIL – Ejecución de una aplicación en .NET

Page 28: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

VB.NETVB.NETCódigoCódigoFuenteFuente

Compilador Compilador VB.NETVB.NET

C++.NETC++.NETC#C#

AssemblyAssemblyCódigo MSILCódigo MSIL

Sistema Operativo (Windows)Sistema Operativo (Windows)

Common Language RuntimeCommon Language Runtime

Compilador JITCompilador JIT

Código NativoCódigo Nativo

Código Código ManejadoManejado

ComponenteComponenteNo ManejadoNo Manejado

Modelo de Ejecución del CLRModelo de Ejecución del CLR

CompiladorCompiladorC#C#

CompiladorCompiladorC++ .NETC++ .NET

AssemblyAssemblyCódigo MSILCódigo MSIL

AssemblyAssemblyCódigo MSILCódigo MSIL

Page 29: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

CTS (Common Type System)CTS (Common Type System)Define un conjunto común de “tipos” de Define un conjunto común de “tipos” de datos orientados a objetos.datos orientados a objetos.

Todo lenguaje de programación .NET debe Todo lenguaje de programación .NET debe implementar los tipos definidos por el implementar los tipos definidos por el CTS.CTS.Todo tipo Todo tipo hereda directa o hereda directa o indirectamente indirectamente del tipo del tipo System.Object.System.Object.

Define Tipos de Define Tipos de VALOR y de VALOR y de REFERENCIA.REFERENCIA.

Todo tipo Todo tipo hereda directa o hereda directa o indirectamente indirectamente del tipo del tipo System.Object.System.Object.

Define Tipos de Define Tipos de VALOR y de VALOR y de REFERENCIA.REFERENCIA.

Page 30: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

La Memoria y los Tipos de La Memoria y los Tipos de DatosDatosEl CLR administra dos segmentos de El CLR administra dos segmentos de

memoria: memoria: Stack (Pila)Stack (Pila) y y Heap Heap (Montón).(Montón).

El El StackStack es liberado automáticamente y es liberado automáticamente y el el HeapHeap es administrado por el es administrado por el GCGC ((Garbage CollectorGarbage Collector).).Los tiposLos tipos VALOR VALOR se almacenan en se almacenan en el Stack.el Stack.

Los tipos Los tipos REFERENCIAREFERENCIA se se almacenan en el almacenan en el Heap.Heap.

Los tiposLos tipos VALOR VALOR se almacenan en se almacenan en el Stack.el Stack.

Los tipos Los tipos REFERENCIAREFERENCIA se se almacenan en el almacenan en el Heap.Heap.

Page 31: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Temas a TratarTemas a Tratar

Introducción a Microsoft .NET.Introducción a Microsoft .NET.Componentes Fundamentales.Componentes Fundamentales.Funcionamiento Interno del CLR.Funcionamiento Interno del CLR.Bibliotecas PrincipalesBibliotecas Principales.. Base Class Library (BCL).Base Class Library (BCL). ADO.NET.ADO.NET. Windows Forms.Windows Forms. ASP.NET.ASP.NET.

Page 32: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Base Class LibraryBase Class Library

System

Globalization

Diagnostics

Configuration

Collections

Resources

Reflection

Net

IO

Threading

Text

ServiceProcess

Security InteropServices

Remoting

Serialization

Page 33: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Acceso a Datos: ADO.NETAcceso a Datos: ADO.NET

System.Data

OleDb

SqlClient

OracleClient

Common

Odbc SqlTypes

System.Xml

Serialization

XPath

XSLT

Schema

Page 34: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Windows FormsWindows Forms

System.Drawing

Drawing2D

Imaging

Printing

Text

System.WinForms

Design ComponentModel

Page 35: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Aplicaciones Web: ASP.NETAplicaciones Web: ASP.NET

System.Web

Caching

Configuration

Services UI

SessionState

HtmlControls

WebControls

Description

Discovery

Security

Protocols

Page 36: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Temas a TratarTemas a Tratar

Introducción a Microsoft .NET.Introducción a Microsoft .NET.Componentes Fundamentales.Componentes Fundamentales.Funcionamiento Interno del CLR.Funcionamiento Interno del CLR.Bibliotecas Principales.Bibliotecas Principales.Ventajas de .NETVentajas de .NET..

Page 37: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Ventajas de .NETVentajas de .NET

Unifica los modelos de programación.Unifica los modelos de programación.Simplifica aún más el desarrollo.Simplifica aún más el desarrollo.Provee un Entorno de Ejecución robusto y Provee un Entorno de Ejecución robusto y seguro.seguro.Es independiente del lenguaje de Es independiente del lenguaje de programación.programación.Interoperabilidad con código existente.Interoperabilidad con código existente.Simplifica la instalación y administración Simplifica la instalación y administración de las aplicaciones.de las aplicaciones.Es Extensible.Es Extensible.

Page 38: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Unificando los ModelosUnificando los Modelos

Windows APIWindows API

.NET Framework.NET Framework

API consistente mas allá del lenguaje API consistente mas allá del lenguaje o del modelo de programacióno del modelo de programación

ASPASP

Basado en Basado en Servidor,Servidor,

UI Embebido en el UI Embebido en el códigocódigo

MFC/ATL (C++)MFC/ATL (C++)

OOP, OOP, Potencia,Potencia,

Acceso a bajo Acceso a bajo nivelnivel

Visual BasicVisual Basic

Desarrollo Desarrollo Rapido,Rapido,

Componentes,Componentes,Event DrivenEvent Driven

Page 39: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Desarrollo SimplificadoDesarrollo Simplificado

Alto nivel de abstracción.Alto nivel de abstracción. No mas accesos COM a bajo nivel.No mas accesos COM a bajo nivel. Orientado a Objetos desde el Núcleo.Orientado a Objetos desde el Núcleo.Sistema de tipos unificado (CTS).Sistema de tipos unificado (CTS). Todo es un objeto, no mas variants.Todo es un objeto, no mas variants.Componentes de Software.Componentes de Software. Propiedades, métodos, eventos, y Propiedades, métodos, eventos, y

atributos incluidos en la construcción de atributos incluidos en la construcción de clases.clases.

API organizada en forma Jerárquica.API organizada en forma Jerárquica.

Page 40: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Entorno de Ejecución Entorno de Ejecución Robusto y SeguroRobusto y Seguro

Gestión automática de la memoria.Gestión automática de la memoria. Todos los objetos son administrados por Todos los objetos son administrados por

el Garbage Collector.el Garbage Collector.Manejo de Excepciones.Manejo de Excepciones.Fuertemente tipado.Fuertemente tipado. Solo casteos seguros.Solo casteos seguros. Inicialización de variables obligatoria.Inicialización de variables obligatoria.Instalación con Cero Impacto.Instalación con Cero Impacto. No requiere registración en la Registry.No requiere registración en la Registry.

Page 41: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Independencia del lenguajeIndependencia del lenguaje

Libertad en la elección del lenguaje.Libertad en la elección del lenguaje. Todas las facilidades de la Todas las facilidades de la

plataforma .NET están disponibles a plataforma .NET están disponibles a todos los lenguajes de todos los lenguajes de programación .NET.programación .NET.

Los componentes de una Los componentes de una aplicación .NET pueden ser escritos en aplicación .NET pueden ser escritos en distintos lenguajes de alto nivel distintos lenguajes de alto nivel compatibles con la plataforma.compatibles con la plataforma.

Herramientas compartidas.Herramientas compartidas. Debuggers, profilers, analizadores de Debuggers, profilers, analizadores de

código, y otras trabajan para todos los código, y otras trabajan para todos los lenguajes.lenguajes.

Page 42: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Instalación y Administración Instalación y Administración más simplesmás simples

Unidades de Ensamblado (“Assemblies”).Unidades de Ensamblado (“Assemblies”). Mínima unidad de distribución, versionado Mínima unidad de distribución, versionado

y administración de seguridad de y administración de seguridad de aplicaciones .NET.aplicaciones .NET.

Auto-descriptas a través de un manifiesto Auto-descriptas a través de un manifiesto (“manifest”).(“manifest”).

Instalaciones Cero-impacto.Instalaciones Cero-impacto. Aplicaciones y componentes pueden ser Aplicaciones y componentes pueden ser

compartidas o privadas.compartidas o privadas.Versioning.Versioning. Múltiples versiones del mismo Múltiples versiones del mismo

componente pueden co-existir, aún en el componente pueden co-existir, aún en el mismo proceso.mismo proceso.

Page 43: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

ExtensibilidadExtensibilidad

El Framework no es una “caja negra”.El Framework no es una “caja negra”.Sus clases pueden ser extendidas a través Sus clases pueden ser extendidas a través del mecanismo de herencia.del mecanismo de herencia. A diferencia de COM, usamos y A diferencia de COM, usamos y

extendemos las clases en si mismas, no extendemos las clases en si mismas, no un “wrapper”.un “wrapper”.

Herencia entre distintos lenguajes.Herencia entre distintos lenguajes.

Page 44: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

InteroperabilidadInteroperabilidad

.NET Framework.NET FrameworkServicios Web XMLServicios Web XML

C#C#

C++C++ VBVB

Otros...Otros... .NET.NET

COMCOMCOM INTEROP

Page 45: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Temas a TratarTemas a Tratar

Introducción a Microsoft .NET.Introducción a Microsoft .NET.Componentes fundamentales.Componentes fundamentales.Funcionamiento interno.Funcionamiento interno.Bibliotecas Principales.Bibliotecas Principales.Ventajas de .NET.Ventajas de .NET.Herramientas de Desarrollo .NETHerramientas de Desarrollo .NET..

Page 46: Programación de Aplicaciones Visuales II Introducción a la plataforma.NET

Visual Studio 2005Visual Studio 2005