Introduccion a visual studio.Net Part 2

Embed Size (px)

DESCRIPTION

Introduccion a visual studio.Net Part 2

Citation preview

  • 1. PrerrequisitosPoseer los conocimientos proporcionadospor la Estrella 0 del programaHaber aprobado el examencorrespondiente a la Estrella 0 delprogramaConocimientos fundamentales de basesde datos relacionales, incluyendo Modelo Relacional Protocolos de Acceso (ODBC/OLEDB) Lenguaje SQL Lic. Marvin Romero, UGB, San Miguel

2. Temas a TratarIntroduccin a Microsoft .NETComponentes FundamentalesFuncionamiento Interno del CLRBibliotecas PrincipalesVentajas de .NETHerramientas de Desarrollo .NETNovedades en .NET 2.0 Lic. Marvin Romero, UGB, San Miguel 3. Temas a TratarIntroduccin a Microsoft .NET Qu no es .NET? Qu es .NET? .NET Como evolucin de COM Lic. Marvin Romero, UGB, San Miguel 4. Paradigmas de Programacin Funcionalidad Windows 3.0 MFCCOMWin16 Win32 198019902000 Lic. Marvin Romero, UGB, San Miguel 5. 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 .NET no es un producto empaquetado que se pueda comprar como tal Lic. Marvin Romero, UGB, San Miguel 6. 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 COMLic. Marvin Romero, UGB, San Miguel 7. Caractersticas de .NET (1/2)Plataforma de ejecucin intermedia100% Orientada a ObjetosMultilenguajePlataforma Empresarial de Misin Crtica Lic. Marvin Romero, UGB, San Miguel 8. Caractersticas de .NET (2/2)Modelo de Programacin nico para todo tipode aplicaciones y dispositivos de hardwareSe integra fcilmente con aplicacionesexistentes desarrolladas en plataformasMicrosoftSe integra fcilmente con aplicacionesdesarrolladas en otras plataformasLic. Marvin Romero, UGB, San Miguel 9. Plataforma de Ejecucin IntermediaAplicacin .NET Lenguajes de Programacin Microsoft .NET Entorno deLibreras de Funcionalidad DesarrolloEntorno de Ejecucin Sistema Operativo (Familia Windows) Lic. Marvin Romero, UGB, San Miguel 10. .NET como evolucin de COMEntorno de Ejecucin (Runtime) COM: Windows .NET: Common Language RuntimeLibreras de Funcionalidad COM: Algunas (ADO, FSO, etc.) .NET: Muy extensa (.NET Framework Class Library)Lenguajes de Programacin COM: VB, C++, VFP, ASP, J++ .NET: Common Language SpecificationEntorno de Desarrollo (IDE)COM: Uno para cada lenguaje Lic. Marvin .NET: Uno independiente del lenguaje (VS.NET) Romero, UGB, San Miguel 11. 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 FrameworkEst instalado por defecto en Windows2003 Server o superior Lic. Marvin Romero, UGB, San Miguel 12. Dnde instalar el .NET Framework?Cliente ServidorAplicacin de Escritorio* Aplicacin WebAplicacin deConsola*Aplicacin .NET Compact FrameworkMvil* Slo si la aplicacin es distribuda Lic. Marvin Romero, UGB, San Miguel 13. Lnea del tiempo de .NET Visual Studio 6.0 Visual Basic VBA Visual FoxPro Visual Studio .NET 2003Visual Studio Orcas VBScript .NET Framework 1.1 .NET Framework Orcas C++ .NET Compact Framework .NET Compact Framework Orcas J++ J# JScript ASP2000 2001 2002 20032004 2005 2006 y msVisual Studio .NET 2002 Visual Studio 2005 (Whidbey).NET Framework 1.0.NET Framework 2.0 (Whidbey)Visual Basic .NET .NET Compact Framework 2.0 (Whidbey)C#Lic. Marvin Romero, UGB, San Miguel 14. Temas a TratarIntroduccin a Microsoft .NETComponentes Fundamentales Arquitectura Common Language Runtime (CLR) Microsoft Intermediate Language Assemblies .NET Class Library Common Language Specification (CLS) Lic. Marvin Romero, UGB, San Miguel 15. Arquitectura del .NET Framework VB C++ C#J# .NET Framework SDKCommon Language SpecificationClass Library.NET Framework ASP.NETWindows Forms.NET FrameworkRedistributable ADO.NET y XMLBase Class Library Common Language RuntimeWindowsCOM+ ServicesLic. Marvin Romero, UGB, San Miguel 16. CLR - Arquitecturas de Ejecucin deAplicaciones Lic. Marvin Romero, UGB, San Miguel 17. CLR Common Language RuntimeEl CLR es el motor de ejecucin (runtime) de .NET Caractersticas Compilacin Just-In-Time (JIT)Just-In- Gestin automtica de memoria (Garbage Collector) Gestin de errores consistente (Excepciones) Ejecucin basada en componentes (Assemblies) Gestin de SeguridadLic. Marvin Multithreading Romero, UGB, San Miguel 18. CLR Componentes Internos Base Class Library Support Thread SupportCOM MarshalerType CheckerException Manager Security Engine Debug Engine IL to NativeCode GarbageCompilers Manager Collector Class LoaderLic. Marvin Romero, UGB, San Miguel 19. CLR Proceso de CompilacinCdigo Assembly Fuente(MSIL) Compilador CualquierBibliotecalenguaje .NET o Ejecutable Lic. Marvin Romero, UGB, San Miguel 20. CLR - MSIL Lic. Marvin Romero, UGB, San Miguel 21. Qu es un Assembly? Un Assembly es la unidad mnima de ejecucin, distribucin, instalacin y versionado de aplicaciones .NET Descripcin de Tipos Clases MiBiblioteca.DLLClases Base Interfaces ImplementadasMetadata Atributos de las Clases Mtodos de las ClasesRecursos Manifiesto del Assembly Nombre Cdigo CompiladoVersin MSILCulturaOtros AssembliesPermisos de SeguridadTipos Externos Lic. Marvin Romero, UGB, San Miguel 22. Assemblies - Aplicaciones .NETUno o ms Assemblies Al ejecutar una aplicacin, cmo ubico los assemblies necesarios? El Class Loader busca en el directorio local (preferido) Global Assembly Cache (GAC) Diferentes aplicaciones pueden usar diferentes versiones Actualizaciones ms simples Desinstalacin ms simple Lic. Marvin Romero, UGB, San Miguel 23. .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 Lic. Marvin Romero, UGB, San Miguel 24. .NET Framework Class Library El namespace raz es SYSTEMSystem.WebSystem.Windows.Forms Services UIDesignComponentModelDescriptionHtmlControlsDiscoveryWebControlsProtocolsSystem.Drawing CachingSecurityDrawing2D Printing ConfigurationSessionStateImaging Text System.Data System.Xml OleDbOdbcXSLTSerialization Common SqlClient XPath System Collections IOSecurity Runtime Configuration Net ServiceProcessInteropServicesDiagnostics ReflectionText RemotingGlobalization Resources ThreadingSerialization Lic. Marvin Romero, UGB, San Miguel 25. 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 Lic. Marvin Romero, UGB, San Miguel 26. Common Language Specification (CLS) El resto de la industria y el sector acadmico han desarrollado ms de 20 lenguajes compatibles con la especificacin CLSC++.NETVisual Basic.NETC# J# DelphiJavaPHPPerlPythonJavaScript Pascal HaskellLISPPrologRPG Oberon Mondrian SmalltalkEiffelML Scheme Cobol FortranAPLObjective CamlMercury Lic. Marvin Romero, UGB, San Miguel 27. CLS - Eleccin del lenguaje.NET posee un nico runtime (el CLR) y unnico conjunto de bibliotecas para todos loslenguajesNo hay diferencias notorias de performanceentre los lenguajes provistos por MicrosoftEl lenguaje a utilizar, en gral., depender desu experiencia previa con otros lenguajes ode gustos personales Si conoce Java, Delphi, C++, etc. C# Si conoce Visual Basic o VBScript VB.NETLos tipos de aplicaciones .NET son Lic. Marvin Romero, UGB, San Miguel del lenguaje que elijaINDEPENDIENTES 28. Temas a TratarIntroduccin a Microsoft .NETComponentes FundamentalesFuncionamiento Interno del CLR Especificacin CLI Modelo de Ejecucin Application Domains Common Type SystemLic. Marvin Romero, UGB, San Miguel 29. Infraestructura de Lenguaje Comn (CLI) Especificacin patrocinada por Microsoft, Intel, HP y estandarizada por ECMA (2001) e ISO (2003) que describe: Entorno de Ejecucin de Aplicaciones Conjunto de Libreras Bsicas (BCL) Tipos de Datos Comunes (CTS) El .NET Framework y el .NET Compact Framework son implementaciones de la especificacin CLILic. Marvin Romero, UGB, San Miguel 30. Sub- Sub-Especificaciones de CLILenguajes de Alto Nivel se ajustan a las reglas de laCLS (Common Language Specification) y utilizan las clases de la BCL (Base Class Library)cuyos tipos bsicos forman el CTS (Common Type System) y se ejecutan bajo el control de y usan los servicios del CLR (Common Language Runtime) que est acoplado al y utiliza los servicios del Sistema Operativo Lic. Marvin Romero, UGB, San Miguel 31. Modelo de Ejecucin del CLR CdigoVB.NET C#C++.NETFuente CompiladorCompiladorCompiladorComponente VB.NET C#C++ .NET No ManejadoCdigo AssemblyAssemblyAssembly ManejadoCdigo MSIL Cdigo MSIL Cdigo MSIL Common Language Runtime Compilador JIT Cdigo Nativo Sistema Operativo (Windows) Lic. Marvin Romero, UGB, San Miguel 32. Modelo de Ejecucin del CLR Desarrollo Instalacin Assembly enInstalacin la mquinaAssemblydestino Policy DocumentNavigatorXmlTextWriterXmlDocumentXmlReader XmlTextReaderUGB,XmlValidatingReader Lic. Marvin Romero, San Miguel XmlNodeReader 50. Windows FormsSystem.WinForms DesignComponentModelSystem.Drawing Drawing2D Printing Imaging TextLic. Marvin Romero, UGB, San Miguel 51. Aplicaciones Web: ASP.NETSystem.Web ServicesUIDescriptionHtmlControlsDiscoveryWebControlsProtocols Caching Security Configuration SessionStateLic. Marvin Romero, UGB, San Miguel