La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Introducción a la plataforma .NET Erich Bühler

Presentaciones similares


Presentación del tema: "Introducción a la plataforma .NET Erich Bühler"— Transcripción de la presentación:

1 Introducción a la plataforma .NET Erich Bühler
MVP

2 ¿Qué es .NET? .NET nueva infraestructura para desarrollar aplicaciones Windows y Web Ofrece un nuevo conjunto de herramientas, superiores a las ya conocidas. Centraliza tecnologías

3 Microsoft .NET Clientes Soluciones Servicios Web Servidores
Herramientas Soluciones Servicios Web Servidores

4 ¿Qué es .NET? Cambios estructurales
Aprendido sobre defectos de diseños e incorporado nuevas tecnologías Avanzado sobre modelos conceptuales Nuevos lenguajes o con grandes cambios

5 Total de desarrolladores en el mundo: 23 millones

6 Lenguajes package EjemploJSharp; /**
* Una linda clase denominada Caja. */ public class Caja { public Caja() //TODO: La lógica del constructor aquí } public static String Peso() return("Se invocó al método Peso"); public static String Volumen() return("Se invocó al método Volumen");

7 Lenguajes using System; namespace EjemploCSharp { public class Caja
public Caja() // TODO: Lógica del constructor aquí } public static string Peso() return("Se invocó al método Peso"); public static string Volumen() return("Se invocó al método Volumen");

8 Lenguajes Namespace EjemploVisualBasic Public Class Caja
Public Sub New() MsgBox("Se ejecutó Constructor" & _ " de clase Caja") End Sub Public Shared Function Peso() As String Return ("Se invocó al método Peso") End Function Public Shared Function Volumen() As String Return ("Se invocó al método Volumen") End Class End Namespace

9 Aplicación estándar vs .NET
Sistema operativo Windows (Funciones, gestión de memoria, etc.) Funciones, gestión de memoria, etc. Sistema operativo

10 Common Language Runtime (CLR)
Primer cambio en la arquitectura CLR incluye un compilador bajo demanda que ejecuta código de múltiples lenguajes, entre ellos: C# que es una versión de C++ conteniendo las características de Java; J# para desarrolladores Java Visual Basic .NET nueva versión de VB conteniendo nueva sintaxis, orientación a objetos, y poder similar a C# Todos los lenguajes en .NET deben obedecer reglas y estándares impuestos por CLS. Entre ellos: Declaración de objetos, creación y utilización Tipos de datos Errores y administraciones de excepciones Verificación de tipos

11 Lenguajes .NET CLS (Common Language Specification)
Requisitos mínimos para compiladores de lenguajes .NET Conjunto mínimo de funcionalidad que deben implementar Su objetivo es facilitar la interoperabilidad entre lenguajes

12 Lenguajes .NET CLS (II) C++ COBOL CLS VB
CLR Extenciones de Fujitsu COBOL C++ COBOL CLS Extensiones administradas para C++ VB Los lenguajes no tienen que exponer toda la funcionalidad definida por CLR

13 Tipos de datos común CLS provee un conjunto de tipos de datos nativos que todos los lenguajes deben soportar. Los tipos incluyen Enteros (tres tipos de 16/32/64 bit) Punto flotante (dos tipos de 32/64 bit) Boolean y Char Date/Time Cruzamiento entre lenguajes es fácil Impacto sobre tipos de datos de algunos lenguajes, por ejemplo VB

14 Lenguaje intermedio de Microsoft
Lenguajes .NET no compilan a código máquina en un comienzo. Ellos son compilados a IL. Compilador bajo demanda de CLR acepta IL y lo recompila a código máquina. Compilación ‘Just in time’ (bajo demanda) Verificación de tipos (validación) El código es seguro

15 Lenguaje intermedio de Microsoft
Compilación Código Adm. Código fuente Compilador Ensamblado Codigo (IL) Metadatos Ejecución Compilador JIT Código máquina Cuando el método es invocado

16 Lenguaje intermedio de Microsoft
Existen varios .NET framework .net compact framework

17 .NET Compact Framework Desarrollo sobre dispositivos
Versión reducida de Framework .NET Diseñado para dispositivos inteligentes PocketPC y PocketPC Phone Edition SmartPhone Windows CE Mismo modelo de desarrollo que .NET Framework Misma herramienta de desarrollo Visual Studio .NET

18 Common Language Runtime Common Language Specification
Role de Visual Studio Sistema operativo Common Language Runtime Common Language Specification VB C++ C# J# Visual Studio .NET

19 Common type system IL apoya la orientación a objetos. Por lo tanto se necesita que todo tipo sea de una clase del framework (clase, estructura, o interfaz) Tipos del framework (resumen) Integer String Rectangle Long Tipos personalizados (Cliente, factura, etc)

20 Common type system Declaración Utilización (prop.) Utilización
(métodos) Dim i As Integer i=100 i.ToString Dim r As Rectangle r.Width*r.Height r.Area Dim c As cliente c.nombre=‘Bob’ c.Quejarse (nivel) Dim f As factura f.Número = 10 f.procesar

21 Metadatos de tipos Un tipo debe ser auto-descriptivo. Debe exponer sus propiedades, métodos, valores aceptados, etc. Esta información es siempre escrita en el EXE o DLL como encabezado (MANIFIESTO y METADATOS)

22 Ensamblados Estructura de un ensamblado = manifiesto y uno o más módulos ejecutables (MSIL).

23 Manifiesto Describe un ensamblado y describe su contenido Incluye:
Identidad del ensamblado Requerimientos de seguridad Identidad de ensamblados de dependientes Tipos expuestos por el ensamblado Información personalizada (para reflexión)

24 Herramienta ILDASM

25 Common Language Runtime
Interconexión Common Language Runtime Seguimiento de ref. Componente COM IUnknown IDispatch COM Callable Wrapper IOtra Objeto IOtra Cuenta de referencias Cliente

26 Ensamblados Características No son componentes COM
Son auto-descriptivos No se requiere del archivo de registro Ejecución lado a lado Solamente con XCOPY la aplicación queda funcional No son componentes COM Son compatibles con COM mediante wrapping

27 Ensamblados Herramientas para registro en COM en la consola de .NET
Funcionamiento Versiones privadas vs. compartidas Versiones compartidas Gestionadas por GAC (Caché de ensamblados global o Global Assembly cache) Políticas de versión Manejo de autores mediante claves dobles

28 Caché de ensamblados global o GAC

29 Administración de memoria
Recolección de basura automática de objetos Se eliminan problemas comunes de memoria El rendimiento puede no ser el mejor en aplicaciones críticas Puede forzarse la recolección Afecta a muchas de las aplicaciones actuales

30 Biblioteca de clases base
Funcionalidades en sistemas tradicionales Diferentes bibliotecas de servicios son provistas al desarrollador mediante bibliotecas de runtime (C++), API de win32, API de bases de datos, bibliotecas estáticas/dinámicas, etc. Dependen del lenguaje y sistema operativo Se invocan dependiendo del lenguaje

31 Biblioteca de clases base
En .NET Bibliotecas de clases Organizadas jerárquicamente Independientes del lenguaje Siguen los lineamientos de CLR

32 Biblioteca de clases base
A las jerarquías se les llama Espacio de nombre Todo es un objeto, hasta los controles. System System.Data System.Xml System.Web Globalization Diagnostics Configuration Collections Resources Reflection Net IO Threading Text ServiceProcess Security Common OleDb SQLTypes SqlClient XPath XSLT Runtime InteropServices Remoting Serialization SessionState Caching Services Description Discovery Protocols UI HtmlControls WebControls System.Drawing Imaging Drawing2D Printing System.Windows.Forms Design ComponentModel

33 Ensamblados La organización de las bibliotecas de clase es similar al sistema de archivos: Cada ‘carpeta’ es un espacio de nombres Cada ‘archivo’ es un ensamblado exponiendo uno o más tipos (y su lógica) El nodo o carpeta raíz se llama ‘System’ Muchas eran antes API del sistema operativo

34 Windows Forms Aplicaciones de escritorio basadas en clases y herencia, nuevos controles Ajuste de controles de acuerdo a la definición Instalación mediante COPY GDI+

35 Características de GDI+

36 Auto-instalación Formulario puede residir en un ensamblado (auto-instalación) Técnicas de reflexión sobre el disco local o Internet Facilidad de distribución de la aplicación ‘en partes’

37 Auto-instalación Cliente Servidor Web Internet Form1
Aplicación de Windows Form2 Caché de IE

38 Características de la infraestructura
Ofrece características de POO para todos los lenguajes Soporte para múltiples hilos de ejecución Objetos para conexión e invocación remota (por ejemplo Web Services)

39 Características de la infraestructura
Formularios Web ADO.NET Dispositivos móviles etc.

40 Visual Studio .NET Una herramienta para todo
Plataforma RAD de alta productividad Diseñadores visuales win, web, mobile Editores de entidades, XSD, XML Desarrollo bases de datos Depuración extremo a extremo Tecnología IntelliSense y Ayuda Dinámica Extensible y abierto Existencia de otros editores gratuitos (no MS) con menos características

41 Microsoft .NET Clientes Soluciones Servicios Web Servidores
Herramientas Soluciones Servicios Web Servidores

42 © 2004 Erich R. Bühler


Descargar ppt "Introducción a la plataforma .NET Erich Bühler"

Presentaciones similares


Anuncios Google