Sesion 2 . tecnologia microsoft-net-marvin romero

2,131 views

Published on

Sesion 2 . tecnologia microsoft-net-marvin romero

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,131
On SlideShare
0
From Embeds
0
Number of Embeds
570
Actions
Shares
0
Downloads
146
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Sesion 2 . tecnologia microsoft-net-marvin romero

  1. 1. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com om et an R .n igu ero fo vin in Tecnología Microsoft.Net el GB ar em U M ic c. .m M Lic. Marvin Antonio Romero Flores Li w ww ,SEscrito y Recopilado por Lic. Marvin Romero San Miguel, El Salvador
  2. 2. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com om et an R .n igu ero fo vin in el GB ar em Tecnología Microsoft .NET U M ic c. .m M Li w ww ,SEscrito y Recopilado por Lic. Marvin Romero San Miguel, El Salvador
  3. 3. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Objetivo om et an R .n• Presentar una introducción a la plataforma de igu ero fo desarrollo Microsoft .NET, describiendo sus vin in el GB ar em principios básicos de funcionamiento, su U M ic arquitectura de componentes y sus principales c. .m M bibliotecas reutilizables, mostrando además las Li w novedades introducidas en la última versión de ww la misma. ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 3 San Miguel
  4. 4. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Paradigmas de Programación om et an R .n igu ero fo vin in el GB ar emFuncionalidad U M ic c. .m M Windows 3.0 Li w MFC ww ,S COM Win16 Win32 1980 1990 2000 21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 4 San Miguel
  5. 5. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Tecnología .Net om et an R .n igu ero .NET no es un Sistema Operativo fo vin in .NET no es un Lenguaje de Programación el GB ar em U M ic .NET no es un Entorno de Desarrollo c. .m M .NET no es un Servidor de Aplicaciones Li w ww ,S .NET no es un producto empaquetado que se pueda comprar como tal21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 5 San Miguel
  6. 6. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com¿Qué es .NET? om et• Plataforma de Desarrollo compuesta de an R .n igu ero fo – Entorno de Ejecución (Runtime) vin in – Bibliotecas de Funcionalidad (Class Library) el GB ar em – Lenguajes de Programación – Compiladores – U M ic c. .m Herramientas de Desarrollo (IDE & Tools) M • Visual Studio 2005. Li w – Guías de Arquitectura ww ,S• La evolución de la plataforma COM21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 6 San Miguel
  7. 7. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.comCaracterísticas de .NET om et an R .n• Plataforma de ejecución intermedia igu ero fo• 100% Orientada a Objetos vin in• Multilenguaje el GB ar em• Plataforma Empresarial de Misión Crítica• U M ic Modelo de Programación único para todo tipo de c. .m M aplicaciones y dispositivos de hardware Li w• Se integra fácilmente con aplicaciones existentes ww desarrolladas en plataformas Microsoft ,S• Se integra fácilmente con aplicaciones desarrolladas en otras plataformas21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 7 San Miguel
  8. 8. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Arquitectura .Net om et an R .n igu ero fo Aplicación .NET vin in el GB ar em Lenguajes de Programación U M icMicrosoft .NET Entorno de c. .m M Librerías de Funcionalidad Desarrollo Li w Entorno de Ejecución ww ,S Sistema Operativo (Familia Windows) 21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 8 San Miguel
  9. 9. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com.NET como evolución de COM om et an R .n• Entorno de Ejecución (Runtime) igu ero – COM: Windows fo – .NET: Common Language Runtime vin in• Librerías de Funcionalidad el GB ar em – COM: Algunas (ADO, FSO, etc.) U M ic – .NET: Muy extensa (.NET Framework Class Library) c. .m M• Lenguajes de Programación – COM: VB, C++, VFP, ASP, J++ Li w – .NET: Common Language Specification ww• Entorno de Desarrollo (IDE) ,S – COM: Uno para cada lenguaje – .NET: Uno independiente del lenguaje (VS.NET)21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 9 San Miguel
  10. 10. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com om et an R .n igu ero fo vin in el GB ar em U M ic c. .m Net Framework M Li w ww ,SEscrito y Recopilado por Lic. Marvin Romero San Miguel, El Salvador
  11. 11. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.comNet Framework om et an R .n• Paquete de software fundamental de la plataforma .NET. igu ero fo Incluye: vin in – Entorno de Ejecución (Runtime) el GB ar em – Bibliotecas de Funcionalidad (Class Library)• Se distribuye en forma libre y gratuita U M ic c. .m• Existen tres variantes principales: M Li w – .NET Framework Redistributable Package ww – .NET Framework SDK,S – .NET Compact Framework• Está instalado por defecto en Windows 2003 Server o superior21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 11 San Miguel
  12. 12. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com ¿Dónde instalar el .NET Framework? om et an R .n Cliente Servidor igu ero fo Aplicación de  * vin in Escritorio el GB ar em Aplicación Web  U M ic c. .m M Aplicación de Li w Consola  * ww Aplicación ,S .NET Compact Framework Móvil * Sólo si la aplicación es distribuida21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 12 San Miguel
  13. 13. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.comVisual Studio 6.0 Línea del tiempo de .NET om etVisual Basic an R .nVBAVisual FoxPro igu ero Visual Studio “Orcas” fo Visual Studio .NET 2003VBScript .NET Framework 1.1 .NET Framework “Orcas” vin inC++ .NET Compact Framework .NET Compact Framework “Orcas”J++ J# el GB ar emJScriptASP U M ic c. .m M2000 2001 2002 2003 2004 2005 2006 y más Li w ww Visual Studio .NET 2002 ,S Visual Studio 2005 (“Whidbey”) .NET Framework 1.0 .NET Framework 2.0 (“Whidbey”) Visual Basic .NET .NET Compact Framework 2.0 (“Whidbey”) C# 21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 13 San Miguel
  14. 14. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Arquitectura del .NET Framework om et an R .n VB C++ C# J# … igu ero fo.NET Framework SDK vin in Common Language Specification el GB ar em Class Library .NET Framework ASP.NET Windows Forms U M ic .NET Framework c. .m M Redistributable ADO.NET y XML Li w Base Class Library ww ,S Common Language Runtime Windows COM+ Services 21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 14 San Miguel
  15. 15. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com om et an R .n igu ero fo vin in el GB ar em Common Language Runtime U M ic c. .m M Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 15 San Miguel
  16. 16. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com CLR – Common Languaje Runtime Arquitecturas de Ejecución de Aplicaciones om et an R .n igu ero fo vin in el GB ar em U M ic c. .m M Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 16 San Miguel
  17. 17. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com CLR – Common Language Runtime om et• El CLR es el motor de ejecución (runtime) de .NET an R .n igu ero fo• Características vin in – Compilación Just-In-Time (JIT) el GB ar em – Gestión automática de memoria (Garbage Collector) – U M ic Gestión de errores consistente (Excepciones) c. .m M – Ejecución basada en componentes (Assemblies) Li w – ww Gestión de Seguridad – Multithreading ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 17 San Miguel
  18. 18. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com CLR – Componentes Internos om et an R .n igu ero fo vin in el GB ar em U M ic c. .m M Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 18 San Miguel
  19. 19. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com CLR – Proceso de Compilación om et an R .n igu ero fo vin in el GB ar em Código U M ic Assembly c. .m M Fuente (MSIL) Compilador Li w ww Cualquier ,S Biblioteca lenguaje .NET o Ejecutable21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 19 San Miguel
  20. 20. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.comMicrosoft Intermediately Language om et an R .n igu ero fo .method private hidebysig static void Main(string[] args) cil managed { vin in .entrypoint el GB ar em maxstack 8 L_0000: ldstr "Hola Mundo" U M ic L_0005: call void [mscorlib]System.Console::WriteLine(string) c. .m M L_000a: ret Li w } ww ,S Lic. Marvin Antonio Romero Flores, UGB21/07/2011 y Recopilado por Lic. Marvin Romero Escrito San Miguel, El Salvador 20 San Miguel
  21. 21. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Assembly om et Descripción de Tipos an R .n igu ero fo Clases MiBiblioteca.DLL Clases Base vin in Interfaces Implementadas Metadata el Atributos de las Clases GB ar em Métodos de las Clases Recursos U M ic Manifiesto del Assembly c. .m M Nombre Li w Código Compilado Versión Cultura ww MSIL ,S Otros Assemblies Permisos de Seguridad Tipos Externos21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 21 San Miguel
  22. 22. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Assemblies - Aplicaciones .NET om et• Uno o más Assemblies an R .n• igu ero Al ejecutar una aplicación, ¿cómo ubico los fo vin in assemblies necesarios? el GB ar em • El Class Loader busca en el directorio local (preferido) • U M ic Global Assembly Cache (GAC) c. .m M• Diferentes aplicaciones pueden usar diferentes Li w versiones ww ,S – Actualizaciones más simples – Desinstalación más simple21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 22 San Miguel
  23. 23. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com .NET Framework Class Library om et an R .n• Conjunto de Tipos básicos (clases, interfaces, etc.) que igu ero fo vin in vienen incluídos en el .NET Framework el GB ar em• Los tipos están organizados en jerarquías lógicas de U M ic nombres, denominados NAMESPACES c. .m M• Los tipos son INDEPENDIENTES del lenguaje de Li w desarrollo ww ,S• Es extensible y totalmente orientada a objetos21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 23 San Miguel
  24. 24. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com .NET Framework Class Library om etSystem.Web System.Windows.Forms an R .n Services UI Design ComponentModel igu ero Description HtmlControls fo Discovery WebControls vin in Protocols System.Drawing el GB ar em Caching Security Drawing2D Printing Configuration SessionState Imaging Text U M icSystem.Data c. .m System.Xml M OleDb Odbc XSLT Serialization Li w Common SqlClient XPath wwSystem ,S Collections IO Security Runtime Configuration Net ServiceProcess InteropServices Diagnostics Reflection Text Remoting Globalization Resources Threading Serialization 21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 24 San Miguel
  25. 25. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Common Language Specification (CLS) • Especificación que estandariza una serie de om et an R .n características soportadas por el CLR igu ero fo • Contrato entre diseñadores de lenguajes de vin in programación y autores de bibliotecas el GB ar em • Permite la interoperabilidad entre lenguajes U M ic c. .m • Microsoft provee implementaciones de 4 M Li w lenguajes, todos compatibles con CLS ww – Microsoft Visual Basic .NET ,S – Microsoft Visual C# .NET – Microsoft Visual J#.NET – Microsoft Visual C++.NET21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 25 San Miguel
  26. 26. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Common Language Specification (CLS) om et El resto de la industria y el sector académico han desarrollado an R .n más de 20 lenguajes compatibles con la especificación CLS igu ero fo vin in el GB ar em U M ic c. .m M Li w ww ,S APL21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 26 San Miguel
  27. 27. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.comCLS - Elección del lenguaje om et• .NET posee un único runtime (el CLR) y un único an R .n igu ero conjunto de bibliotecas para todos los lenguajes fo• No hay diferencias notorias de performance entre los vin in lenguajes provistos por Microsoft el GB ar em• El lenguaje a utilizar, en gral., dependerá de su U M ic experiencia previa con otros lenguajes o de gustos c. .m M personales Li w – Si conoce Java, Delphi, C++, etc.  C# ww – Si conoce Visual Basic o VBScript  VB.NET ,S• Los tipos de aplicaciones .NET son INDEPENDIENTES del lenguaje que elija21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 27 San Miguel
  28. 28. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.comInfraestructura de Lenguaje Común (CLI) om et an R .n• Especificación patrocinada por Microsoft, Intel, HP y igu ero fo estandarizada por ECMA (2001) e ISO (2003) que vin in describe: el GB ar em – Entorno de Ejecución de Aplicaciones U M ic – Conjunto de Librerías Básicas (BCL) c. .m M – Tipos de Datos Comunes (CTS) Li w• El .NET Framework y el .NET Compact Framework son ww ,S implementaciones de la especificación CLI21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 28 San Miguel
  29. 29. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Sub-Especificaciones de CLI om et Lenguajes de Alto Nivel an R .n igu ero se ajustan a las reglas de la… fo CLS (Common Language Specification) vin in el GB ar em y utilizan las clases de la… BCL (Base Class Library) U M ic c. .m cuyos tipos básicos forman el… M CTS (Common Type System) Li w ww y se ejecutan bajo el control de y usan los servicios del… ,S CLR (Common Language Runtime) que está acoplado al y utiliza los servicios del … Sistema Operativo21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 29 San Miguel
  30. 30. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Modelo de Ejecución del CLR om etCódigo VB.NET C# C++.NET an R .nFuente igu ero Componente fo Compilador Compilador Compilador No Manejado VB.NET C# C++ .NET vin inCódigo el GB ar em Assembly Assembly AssemblyManejado Código MSIL Código MSIL Código MSIL U M ic c. .m M Common Language Runtime Li w ww Compilador JIT ,S Código Nativo Sistema Operativo (Windows) 21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 30 San Miguel
  31. 31. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Desarrollo Instalación Assembly en om et Instalación la máquina Assembly Policy an R .n destino <?xml version="1.0" encoding="utf-8" ?> <configuration> <mscorlib> <security> <policy> igu ero <PolicyLevel version="1"> <CodeGroup class="UnionCodeGroup" fo version="1" PermissionSetName="Nothing" Name="All_Code" Description="Code group grants no permissio ns and forms the root of the code group tree."> <IMembershipCondition clas s="AllMembershipCondition" version="1"/> <CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="FullTrust" vin inEjecución Modelo de Ejecución del CLR el GB ar em Class Compilador JIT U M ic Loader Seguridad Assembly Loader c. .m M Li w Garbage Collector ww .exe Nativo ,S Code Manejador Excepciones + Manager Tabla GC Soporte MultiThread COM Interop Debug Engine 21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 31 San Miguel
  32. 32. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.comApplication Domains om et an R .n• Procesos virtuales dentro del CLR igu ero fo – Se ejecutan dentro de un proceso del Sistema Operativo vin in – Un proceso del sistema operativo puede contener varios el GB ar em AppDomains U M ic – Más eficiente que múltiples procesos del sistema operativo c. .m M – Más eficiente en el intercambio de contexto de ejecución• Un Assembly y sus tipos son siempre cargados dentro Li w ww de un AppDomain ,S• Provee una frontera para: Fallos, Tipos, Seguridad21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 32 San Miguel
  33. 33. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Application Domains - CLR Host om et an R .n igu ero fo CLR Host vin in CLR el GB ar em AppDomain 1 AppDomain N U M ic c. .m M Código Manejado Código Manejado Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 33 San Miguel
  34. 34. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com CTS (Common Type System) om et• Define un conjunto común de “tipos” de datos orientados a objetos an R .n igu ero fo• Todo lenguaje de programación .NET debe implementar los tipos definidos vin in por el CTS el GB ar em• Todo tipo hereda directa o indirectamente del tipo System.Object U M ic c. .m M Define Tipos de VALOR y de Li w• REFERENCIA ww ,S 21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 34 San Miguel
  35. 35. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com La Memoria y los Tipos de Datos om et• El CLR administra dos segmentos de memoria: Stack (Pila) y Heap (Montón) an R .n• El Stack es liberado automáticamente y el Heap es administrado por el GC igu ero fo (Garbage Collector) vin in el GB ar em• Los tipos VALOR se almacenan en el Stack U M ic c. .m M• Los tipos REFERENCIA se Li w almacenan en el Heap ww ,S Lic. Marvin Antonio Romero Flores, UGB 21/07/2011 y Recopilado por Lic. Marvin Romero Escrito San Miguel, El Salvador 35 San Miguel
  36. 36. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Ventajas de .NET om et • an R .n Unifica los modelos de programación igu ero fo • Simplifica aún más el desarrollo vin in • Provee un Entorno de Ejecución robusto y seguro el GB ar em • Es independiente del lenguaje de programación U M ic c. .m M • Interoperabilidad con código existente Li w • Simplifica la instalación y administración de las ww aplicaciones ,S • Es Extensible21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 36 San Miguel
  37. 37. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Unificando los Modelos API consistente mas allá del lenguaje om et o del modelo de programación an R .n igu ero .NET Framework fo vin inDesarrollo Rapido, OOP, Basado en Servidor, el GB ar em Componentes, Potencia, UI Embebido en el Event Driven Acceso a bajo nivel código U M ic c. .m MVisual Basic MFC/ATL (C++) ASP Li w ww ,S Windows API21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 37 San Miguel
  38. 38. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Desarrollo Simplificado om et• Alto nivel de abstracción an R .n igu ero fo – No mas accesos COM a bajo nivel vin in – Orientado a Objetos desde el Núcleo el GB ar em• Sistema de tipos unificado (CTS) U M ic – Todo es un objeto, no mas variants c. .m M Li w• Componentes de Software ww – Propiedades, métodos, eventos, y atributos ,S incluidos en la construcción de clases• API organizada en forma Jerárquica21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 38 San Miguel
  39. 39. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.comEntorno de Ejecución Robusto y Seguro om et• Gestión automática de la memoria an R .n igu ero fo – Todos los objetos son administrados por el Garbage vin in Collector el GB ar em• Manejo de Excepciones• Fuertemente tipado U M ic c. .m M – Solo casteos seguros Li w ww – Inicialización de variables obligatoria ,S• Instalación con Cero Impacto – No requiere registración en la Registry21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 39 San Miguel
  40. 40. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Independencia del lenguaje om et• Libertad en la elección del lenguaje an R .n igu ero fo – Todas las facilidades de la plataforma .NET están vin in disponibles a todos los lenguajes de programación el GB ar em .NET U M ic – Los componentes de una aplicación .NET pueden c. .m M ser escritos en distintos lenguajes de alto nivel Li w compatibles con la plataforma ww• Herramientas compartidas ,S – Debuggers, profilers, analizadores de código, y otras trabajan para todos los lenguajes21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 40 San Miguel
  41. 41. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Instalación y Administración más simples om et• Unidades de Ensamblado (“Assemblies”) an R .n – Mínima unidad de distribución, versionado y igu ero fo administración de seguridad de aplicaciones .NET vin in – Auto-descriptas a través de un manifiesto el GB ar em (“manifest”) U M ic• Instalaciones Cero-impacto c. .m M – Aplicaciones y componentes pueden ser Li w compartidas o privadas ww• Versioning ,S – Múltiples versiones del mismo componente pueden co-existir, aún en el mismo proceso21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 41 San Miguel
  42. 42. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Extensibilidad om et• El Framework no es una “caja negra” an R .n igu ero fo• Sus clases pueden ser extendidas a través del vin in mecanismo de herencia el GB ar em – A diferencia de COM, usamos y extendemos las U M ic clases en si mismas, no un “wrapper” c. .m M• Herencia entre distintos lenguajes Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 42 San Miguel
  43. 43. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Interoperabilidad om et an R .n igu ero fo vin in.NET Framework Servicios Web XML el GB ar em U M ic C# c. .m M COM INTEROP COM Li w C++ VB ww ,S Otros... .NET21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 43 San Miguel
  44. 44. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Programación Orientada a Objetos om et an R .n igu ero fo vin in el GB ar em U M ic c. .m M Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 44 San Miguel
  45. 45. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com El mundo color de Objetos• Todo el mundo está compuesto de entidades om et an R .n que se relacionan e interactúan entre si igu ero fo vin in• ¿Qué es un Objeto? el GB ar em – Todo es un Objeto ¡¿~?! U M ic c. .m M• ¿Es lo mismo de siempre con otro nombre? Li w ww – Pensar en Objetos …. ,S• No es el último grito de la moda (1980s)21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 45 San Miguel
  46. 46. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com El mundo color de Objetos om et• ¿Por qué Orientación a Objetos (OO)? an R .n igu ero fo – Se parece más al mundo real vin in – Permite representar modelos complejos el GB ar em – Muy apropiada para aplicaciones de negocios U M ic c. .m M – Las empresas ahora sí aceptan la OO Li w – Las nuevas plataformas de desarrollo la han ww ,S adoptado (Java / .NET)21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 46 San Miguel
  47. 47. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com ¿Qué es un Objeto? om et• Informalmente, un objeto representa una an R .n igu ero fo entidad del mundo real vin in• Entidades Físicas el GB ar em • (Ej.: Vehículo, Casa, Producto) U M ic• Entidades Conceptuales c. .m M – (Ej.: Proceso Químico, Transacción Bancaria) Li w ww• Entidades de Software ,S – (Ej.: Lista Enlazada, Interfaz Gráfica)21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 47 San Miguel
  48. 48. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com ¿Qué es un Objeto? om et• Definición Formal : an R .n igu ero fo – “Un objeto es un concepto, abstracción o cosa con vin in un significado y límites claros en el problema en el GB ar em cuestión”• Un objeto posee : U M ic c. .m M – Propiedades Li w – Comportamiento ww – Identidad ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 48 San Miguel
  49. 49. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Un objeto posee Propiedades om et• Lo que el objeto sabe an R .n igu ero fo• Las propiedades de un objeto es una de las vin in el GB ar em posibles condiciones en que el objeto puede existir U M ic c. .m M• Las propiedades normalmente cambia en el Li w transcurso del tiempo ww ,S• Las propiedades de un objeto es implementado por un conjunto de atributos, además de las conexiones que puede tener con otros objetos21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 49 San Miguel
  50. 50. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Un objeto posee Comportamiento om et• Lo que el objeto puede hacer an R .n igu ero fo• El comportamiento de un objeto determina vin in cómo éste actúa y reacciona frente a las el GB ar em peticiones de otros objetos U M ic• Es modelado por un conjunto de mensajes a los c. .m M que el objeto puede responder (operaciones Li w ww que puede realizar) ,S• Se implementa mediante métodos21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 50 San Miguel
  51. 51. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Un objeto posee Identidad om et an R .n• Cada objeto tiene una identidad única, incluso igu ero fo si su estado es idéntico al de otro objeto vin in el GB ar em U M ic c. .m M Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 51 San Miguel
  52. 52. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com ¿Qué es una Clase? om et• Una clase es una descripción de un grupo de an R .n objetos con: igu ero fo – Propiedades en común (atributos) vin in – Comportamiento similar (operaciones) el GB ar em – La misma forma de relacionarse con otros objetos (relaciones) U M ic c. .m M – Una semántica en común (significan lo mismo) Li w• Una clase es una abstracción que: ww – Enfatiza las características relevantes ,S – Suprime otras características (simplificación)• Un objeto es una instancia de una clase21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 52 San Miguel
  53. 53. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Objetos y Clases om et• Una clase es una definición abstracta de un objeto an R .n – Define la estructura y el comportamiento compartidos por los objetos igu ero fo – Sirve como modelo para la creación de objetos vin in• Los objetos pueden ser agrupados en clases el GB ar em U M ic c. .m M Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 53 San Miguel
  54. 54. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Ejemplo de una Clase om et• Clase: Curso an R .n• Estado (Atributos) igu ero fo – Nombre vin in – Ubicación el GB ar em – Días Ofrecidos – U M ic Horario de Inicio c. .m – M Horario de Término• Comportamiento (Métodos) Li w ww – Agregar un Alumno ,S – Borrar un Alumno – Entregar un Listado del Curso – Determinar si está Completo21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 54 San Miguel
  55. 55. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Modificadores de Acceso om et• Permiten definir el nivel de acceso (visibilidad) an R .n igu ero fo de los miembros (atributos o métodos) de una vin in clase el GB ar em – Publico: Cualquier clase puede “ver” los miembros U M ic públicos de otra clase c. .m M – Privado: Sólo la clase puede ver sus propios Li w miembros privados ww• Existen otros dos modificadores para ,S propósitos específicos (Paquete, Protegido)21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 55 San Miguel
  56. 56. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Pilares de la Orientación a Objetos om et an R .n igu ero fo vin in el GB ar em Abstracción Relaciones U M ic c. .m M Li w ww ,S Herencia Encapsulamiento21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 56 San Miguel
  57. 57. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Abstracción om et• Ignorancia Selectiva an R .n igu ero fo – La abstracción nos ayuda a trabajar con cosas vin in complejas el GB ar em – Se enfoca en lo importante U M ic – Ignora lo que no es importante (simplifica) c. .m M• Una clase es una abstracción en la que: Li w • Se enfatizan las características relevantes ww • Se suprimen otras características ,S• Una clase debe capturar una y solo una abstracción clave21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 57 San Miguel
  58. 58. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Encapsulamiento om et• Principio que establece que los atributos propios de an R .n igu ero un objeto no deben ser visibles desde otros objetos fo – Deben ser declarados como privados vin in• Permite abstraer al resto del mundo de la complejidad el GB ar em de la implementación interna U M ic• Permite exponer el estado del objeto sólo a través del c. .m M comportamiento que le hayamos definido mediante Li w miembros públicos ww• ¿Por qué es útil? ,S – Punto de Control/Validación – Mejor respuesta ante los Cambios21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 58 San Miguel
  59. 59. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Relaciones om et an R .n• Todo sistema abarca muchas clases y objetos igu ero fo• Los objetos contribuyen en el vin in el GB ar em comportamiento de un sistema colaborando entre si U M ic c. .m M – La colaboración se logra a través de las relaciones Li w• Existen dos tipos principales de relaciones ww – Asociación ,S – Agregación21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 59 San Miguel
  60. 60. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Herencia Clase Base om et• Es una relación entre clases en la cual una an R .n Transporte igu ero clase comparte la estructura y fo -pasajeros comportamiento definido en otra clase vin in +Avanzar() (Grady Booch) +Detenerse() el GB ar em• Cada clase que hereda de otra posee: – Los atributos de la clase base además de los propios U M ic c. .m M – Soporta todos o algunos de los métodos de la Automóvil Avión Li w clase base ww• Una subclase hereda de una clase base ,S Clases Derivadas o subclases Lic. Marvin Antonio Romero Flores, UGB21/07/2011 y Recopilado por Lic. Marvin Romero Escrito San Miguel, El Salvador 60 San Miguel
  61. 61. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Herencia om et• Herencia “Es-Un”: herencia real, donde la an R .n igu ero fo subclase es un tipo específico de la superclase vin in – Un Cuadrado es un Rectángulo el GB ar em – Un perro es un mamífero U M ic c. .m M – Un automóvil es un vehículo a motor Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 61 San Miguel
  62. 62. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Interfaces (1/3) om et an R .n• Recurso de diseño soportado por los lenguajes igu ero fo orientados a objetos que permite definir vin in comportamiento el GB ar em• Permite que clases que no están U M ic c. .m M estrechamente relacionadas entre sí deban Li w tener el mismo comportamiento ww• La implementación de una interfaz es un ,S contrato que obliga a la clase a implementar todos los métodos definidos en la interfaz21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 62 San Miguel
  63. 63. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Interfaces (2/3) om et an R .n Vehiculo igu ero fo vin in el GB ar em Aereo Acuatico Terrestre U M ic c. .m M Li w Avión Barco Automóvil ww ,S ¿ De que clase heredaría la clase Hidroavión ? Lic. Marvin Antonio Romero Flores, UGB21/07/2011 y Recopilado por Lic. Marvin Romero Escrito San Miguel, El Salvador 63 San Miguel
  64. 64. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Interfaces (3/3) om et • Se crean las interfaces que definen comportamiento an R .n igu ero fo • Hidroavión deberá definir los comportamientos de cada una de vin in las interfaces que implemente el GB ar em U M ic «interface» «interface» c. .m Acuatico Aereo M +Navegar() +Volar() Li w Hidroavion ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 64 San Miguel
  65. 65. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Polimorfismo om et• Es la propiedad que tienen los objetos de an R .n igu ero fo permitir invocar genéricamente un vin in comportamiento (método) cuya el GB ar em implementación será delegada al objeto U M ic c. .m correspondiente recién en tiempo de M Li w ejecución ww• El polimorfismo tiende a existir en las ,S relaciones de herencia, pero no siempre es así21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 65 San Miguel
  66. 66. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Polimorfismo - Ejemplo om et• La definición del método reside en la clase base an R .n igu ero fo• La implementación del método reside en la clase derivada vin in• La invocación es resuelta al momento de ejecución el GB ar em U M ic c. .m Transporte M Avanzar Frenar Li w ww Transporte Avanzar Frenar ,S Transporte Avanzar Frenar Transporte Avanzar Frenar21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 66 San Miguel
  67. 67. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Visual Studio 2010 om et Testers an R .n Arquitectos igu ero fo Desarrolladores vin in Consultores el GB ar em Profesionales U M ic VB6 Devs c. .m M Part-Timers Li w ww Hobbyists ,S Estudiantes Entusiastas Novatos21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 67 San Miguel
  68. 68. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Visual Studio 2010 Express Editions om et• Herramientas de desarrollo gratuitas an R .n igu ero fo• Muy livianas, fáciles de usar y de aprender vin in• Diseñadas para entusiastas, estudiantes y desarrolladores el GB ar em principiantes U M ic• Hay varias ediciones, según el tipo de aplicación y el lenguaje c. .m M• Tiene características avanzadas, por ejemplo: Li w – Refactoring ww – Code Snippets ,S – Diseñadores WYSIWYG – Depuradores – Intellisense21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 68 San Miguel
  69. 69. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com SQL Server 2008 Express om et• an R .n La nueva versión de MSDE igu ero fo• Es gratuito vin in el GB ar em• Preparado para trabajar integrado con .NET 2.0• U M ic Tamaño máximo de base: 4 Gb c. .m M• Max. Conexiones Concurrentes: no tiene Li w ww• Incluye una interfaz de administracion y un ,S editor de consultas• Mayor integración con Visual Studio 200521/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 69 San Miguel
  70. 70. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Visual Studio 2010 om et an R .n• IDE (Entorno de Desarrollo Integrado) igu ero fo vin in el GB ar em U M ic c. .m M Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 70 San Miguel
  71. 71. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com om et an R .n igu ero fo vin in el GB ar em Introducción a Visual U M ic c. .m M Studio .NET Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 71 San Miguel
  72. 72. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com ¿Qué es Visual Studio .NET? om et an R .n Herramientas de Herramientas de igu ero fo Formularios Web Formularios Windows vin in Visual Studio .NET el GB ar em Múltiples Lenguajes Gestor de errores U M ic c. .m M Li w Herramientas de ww Servicios Web XML Acceso a datos ,S Diseño Desarrollo Depuración Implantación Lic. Marvin Antonio Romero Flores, UGB21/07/2011 y Recopilado por Lic. Marvin Romero Escrito San Miguel, El Salvador 72 San Miguel
  73. 73. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com ¿Qué es una plantilla de aplicación? om et an R .n igu ero fo Proporciona archivos de inicio, estructura de proyecto y configuración del entorno vin in el GB ar em U M ic c. .m M Li w ww ,S Lic. Marvin Antonio Romero Flores, UGB21/07/2011 y Recopilado por Lic. Marvin Romero Escrito San Miguel, El Salvador 73 San Miguel
  74. 74. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Cómo utilizar el Explorador de soluciones om et an R .n igu ero fo vin in el GB ar em U M ic c. .m M Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 74 San Miguel
  75. 75. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Menú principal Explorar el entorno de desarrollo Nuevo proyecto om et Diseñador de Windows Forms an R .n Cuadro de herramientas igu ero fo vin in el GB ar em U M ic Ventana c. .m M Propiedades Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 75 San Miguel
  76. 76. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Menús y barras de herramientas om et an R .n Menú principal igu ero fo Barra de herramientas estándar vin in el GB ar em U M ic c. .m M Li w ww Nuevo proyecto Guardar Deshacer ,S Form1.vb Lic. Marvin Antonio Romero Flores, UGB21/07/2011 y Recopilado por Lic. Marvin Romero Escrito San Miguel, El Salvador 76 San Miguel
  77. 77. www.miceminfo.net Centro de Multiservicios Informáticos lic.marvin.romero@gmail.com Cuadro de herramientas om et an R .n igu ero fo vin in el GB ar em Controles para U M ic crear el interfaz c. .m M de usuario Li w ww ,S21/07/2011 y Recopilado por Lic. Marvin Romero Escrito Lic. Marvin Antonio Romero Flores, UGB San Miguel, El Salvador 77 San Miguel

×