La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

.NET para Programadores Java Angel Java Lopez

Presentaciones similares


Presentación del tema: ".NET para Programadores Java Angel Java Lopez"— Transcripción de la presentación:

1 .NET para Programadores Java Angel Java Lopez

2 Agenda Introducción a.NET Introducción a.NET Framework.NET Framework.NET Herramientas de Desarrollo Herramientas de Desarrollo El lenguaje J# El lenguaje J# Windows Forms Windows Forms Acceso a Datos Acceso a Datos ASP.NET ASP.NET Servicios Web Servicios Web J2EE y.NET J2EE y.NET Integrando Java y.NET Integrando Java y.NET

3 La anterior tecnología DNA: Digital Network Architecture DNA: Digital Network Architecture Basada en capas Basada en capas Cada capa se programaba con distintas tecnologías y lenguajes Cada capa se programaba con distintas tecnologías y lenguajes VB, VC, VJ, VBScript, Jscript, DHTML, WebClasses, ASP..... VB, VC, VJ, VBScript, Jscript, DHTML, WebClasses, ASP..... COM, DCOM, COM+ COM, DCOM, COM+

4 .NET Independiente del lenguaje Independiente del lenguaje Amplia biblioteca de clases Amplia biblioteca de clases Soporte de Remoting y Servicios Web Soporte de Remoting y Servicios Web Orientación a Objetos completa Orientación a Objetos completa Metadatos Metadatos

5 La nueva tecnología DNA: sigue siendo el marco de desarrollo DNA: sigue siendo el marco de desarrollo Capas y Servicios Capas y Servicios COM sigue siendo soportado COM sigue siendo soportado.Net aparece independiente de COM.Net aparece independiente de COM Todos los lenguajes pueden usarse en distintos tipos de proyectos Todos los lenguajes pueden usarse en distintos tipos de proyectos Se pueden incorporar nuevos lenguajes Se pueden incorporar nuevos lenguajes

6 .NET y su framework

7 Objetivos de Diseño Facilitar el desarrollo Facilitar el desarrollo Facilitar la comunicación entre componentes, procesos y máquinas Facilitar la comunicación entre componentes, procesos y máquinas Herramientas de desarrollo (integradas a cualquier lenguaje) Herramientas de desarrollo (integradas a cualquier lenguaje) Instalación más fácil y segura (el viejo XCOPY....) Instalación más fácil y segura (el viejo XCOPY....) Escalabilidad Escalabilidad

8 .NET ASP.NETWindows Forms.NET Framework Base Classes Common Language Runtime

9 Common Type System Common Type System Manejo de memoria (garbage collector) Manejo de memoria (garbage collector) Intermediate Language (IL) Intermediate Language (IL) Cargador de clases Cargador de clases JIT Compilers JIT Compilers Verificador Verificador

10 Características de todos los lenguajes Metadata de distribución Metadata de distribución Integración y soporte de múltiples lenguajes Integración y soporte de múltiples lenguajes Clases, objetos, herencia Clases, objetos, herencia Espacios de nombres (namespaces) Espacios de nombres (namespaces) Administración de la memoria Administración de la memoria

11 Clases de Soporte Windows Forms Windows Forms Web Forms Web Forms Server Controls Server Controls Acceso a la consola Acceso a la consola Servicios Web Servicios Web Soporte de XML Soporte de XML Acceso a Datos Acceso a Datos Acceso a Archivos y a la Red Acceso a Archivos y a la Red

12 Assemblies Describen una aplicación Describen una aplicación No hay registración, el assembly es autodescriptivo No hay registración, el assembly es autodescriptivo Respuesta al infierno de las.DLL Respuesta al infierno de las.DLL Assemblies globales (compartidos) Assemblies globales (compartidos) Seguridad Seguridad Compatibilidad entre versiones Compatibilidad entre versiones

13 Visual Studio.Net

14 Nueva Interfaz de Desarrollo IDE derivada de VB6 IDE derivada de VB6 Start Page Start Page Solution Explorer Solution Explorer Varios proyectos en una solución Varios proyectos en una solución Uno puede ser el principal Uno puede ser el principal

15 Ventanas Class View Class View Properties Window Properties Window Toolbox Toolbox Server Explorer Server Explorer Web Form Designer Web Form Designer Code Window Code Window

16 Ventanas Help dinámico Help dinámico Object Browser Object Browser Compilando: Output Window Compilando: Output Window Depurando: Command, Locals, Autos, Breakpoints Windows Depurando: Command, Locals, Autos, Breakpoints Windows Disassembly, Memory Windows Disassembly, Memory Windows

17 Windows Forms

18 Desarrollo Visual Nuevo System.Windows Nuevo System.Windows Los formularios son clases Los formularios son clases Los controles son clases Los controles son clases Posicionamiento de los controles Posicionamiento de los controles Propiedades Propiedades Ciclo de vida de controles y formularios Ciclo de vida de controles y formularios

19 Aplicación Windows Proyecto Aplicación Windows Proyecto Aplicación Windows Formulario Formulario Diseñador de Formulario Diseñador de Formulario Código automático Código automático Controles Controles Eventos Eventos

20 Controles y Formularios Nuevos controles Nuevos controles Nuevas propiedades Nuevas propiedades MDI MDI Herencia de Formularios Herencia de Formularios Uso de controles OCX Uso de controles OCX Controles propios Controles propios

21 Acceso a Datos con ADO.NET

22 ADO.NET El nuevo mundo de acceso a datos El nuevo mundo de acceso a datos Múltiples fuentes de datos Múltiples fuentes de datos Acceso a datos con DataReaders y DataSets Acceso a datos con DataReaders y DataSets Permite trabajar desconectado Permite trabajar desconectado Soporte de XML Soporte de XML

23 DataReader Opera conectado Opera conectado Sólo hacia delante Sólo hacia delante Sólo lectura Sólo lectura Nos recuerda al Recordset Firehose de ADO Nos recuerda al Recordset Firehose de ADO

24 DataSet Lo nuevo de ADO.NET Lo nuevo de ADO.NET Puede contener varias tablas Puede contener varias tablas Trabaja desconectado Trabaja desconectado Datos en memoria Datos en memoria Recuperados de distintas fuentes Recuperados de distintas fuentes Serializable a XML Serializable a XML

25 DataSet DataColumn DataRow DataSet DataTable DataColumn DataRow DataTable DataColumn DataRelation

26 System.Data.SqlClient System Data SqlClient SqlCommand SqlConnection SqlDataReader SqlDataAdapter

27 Desarrollo Web con ASP.NET

28 ¿Qué es ASP.NET? Sucesor más flexible de ASP Sucesor más flexible de ASP Páginas dinámicas en el servidor Páginas dinámicas en el servidor Acceden a recursos del servidor (bases de datos, archivos) Acceden a recursos del servidor (bases de datos, archivos) Servicios Web en XML Servicios Web en XML Independencia del browser Independencia del browser Independencia del lenguaje de programación Independencia del lenguaje de programación

29 Conceptos centrales de ASP. NET Plataforma de desarrollo de Web Plataforma de desarrollo de Web Nuevo modelo de programación Nuevo modelo de programación Cliente Web Sistema Operativo Aplicaciones ASP.NET IIS.NET Framework

30 Conceptos centrales de ASP.NET Separar presentación de lógica del negocio Separar presentación de lógica del negocio Usar servicios provistos por el.NET Framework Usar servicios provistos por el.NET Framework El código es compilado la primera vez que se accede a una página El código es compilado la primera vez que se accede a una página Administración de estado Administración de estado Utilización de cualquier lenguaje Utilización de cualquier lenguaje Integración entre varios Integración entre varios Actualizar archivos mientras se está ejecutando la aplicación Actualizar archivos mientras se está ejecutando la aplicación

31 Presentación y lógica de negocios No hay más mezcla entre HTML y código ejecutable No hay más mezcla entre HTML y código ejecutable Mayor facilidad en el mantenimiento Mayor facilidad en el mantenimiento Separación completa entre la presentación y la lógica Separación completa entre la presentación y la lógica Sin código en los archivos HTML Sin código en los archivos HTML Archivos para diseñadores y Archivos para programadores Archivos para diseñadores y Archivos para programadores Así y todo, todavía es posible mezclar HTML y código si es necesario Así y todo, todavía es posible mezclar HTML y código si es necesario.aspx.cs.vb o

32 Archivos Diferentes archivos, distinguibles por su extensión Diferentes archivos, distinguibles por su extensión Archivos ASP.NET estándar:.aspx o.ascx Archivos ASP.NET estándar:.aspx o.ascx Servicios Web :.asmx Servicios Web :.asmx Archivos de código:.cs,.vb,... Archivos de código:.cs,.vb,... Configuración: Config.web Configuración: Config.web Aplicaciones Web : Global.asax Aplicaciones Web : Global.asax Son todos Archivos de texto Son todos Archivos de texto

33 Proceso de ejecución Compilación, la primera vez que se pide una página Compilación, la primera vez que se pide una página Microsoft intermediate language (MSIL) Microsoft intermediate language (MSIL) Lenguaje de estilo Assembly Lenguaje de estilo Assembly Independiente de la CPU Independiente de la CPU Provee una capa de independencia del hardware Provee una capa de independencia del hardware MSIL es ejecutado por el Motor Común de ejecución ( common language runtime ) MSIL es ejecutado por el Motor Común de ejecución ( common language runtime ) Motor de ejecución común Motor de ejecución común Compilador justo en el momento (JIT) Compilador justo en el momento (JIT) Código administrado Código administrado

34 Web Services Expone componentes via HTTP Expone componentes via HTTP Usa SOAP Usa SOAP No expone objetos remotos, sino métodos de esos objetos (una RPC, Remote Procedure Call) No expone objetos remotos, sino métodos de esos objetos (una RPC, Remote Procedure Call) El cliente o el servidor pueden estar en otra plataforma El cliente o el servidor pueden estar en otra plataforma Protocolo UDDI para descubrir servicios Protocolo UDDI para descubrir servicios

35 Otras Tecnologías

36 Manejo de Entrada, Salida, Archivos Namespace System.IO Namespace System.IO Hay clases que representan archivos y directorioes (FileInfo, DirectoryInfo, File, Directory) Hay clases que representan archivos y directorioes (FileInfo, DirectoryInfo, File, Directory) Hay corrientes de entrada y salida (no necesariamente de archivos) (StreamReader, StreamWriter) Hay corrientes de entrada y salida (no necesariamente de archivos) (StreamReader, StreamWriter)

37 Remoting Acceso a objetos remotos Acceso a objetos remotos Más amplio que un Web Services Más amplio que un Web Services Usa serializadores y canales Usa serializadores y canales El objeto remoto serializa una referencia remota El objeto remoto serializa una referencia remota Los objetos normales se serializan de un punto a otro Los objetos normales se serializan de un punto a otro Puede usar HTTP, TPC, SOAP… Puede usar HTTP, TPC, SOAP…

38 .Net en otras plataformas Los documentos ECMA Los documentos ECMA El proyecto Mono El proyecto Mono El proyecto DotGNU El proyecto DotGNU Rotor, la implementación abierta de Microsoft Rotor, la implementación abierta de Microsoft

39 Interoperabilidad Java y.NET

40 Interoperabilidad en la capa del medio JSPsServlets POJOs/EJBs Oracle ServicedComponents SQL Server Presentation Tier Database Tier Client Middle Tier ASP.NET

41 Interoperabilidad Middle Tier Web Services Web Services Ventajas Ventajas Poco acoplado, operación sincrónica o asincrónica Poco acoplado, operación sincrónica o asincrónica Amistoso para Firewalls Amistoso para Firewalls Respaldado por la industria Respaldado por la industria Extensible Extensible Desventajas Desventajas Sin Eventos Sin Eventos No hay manejo de estado No hay manejo de estado Tipos simples Tipos simples WSE, WS-Transaction, WS-Security son nuevos WSE, WS-Transaction, WS-Security son nuevos

42 Diseñando para interoperabilidad con Servicios Web Considerar los problemas de Considerar los problemas de HTTP HTTP XML XML SOAP SOAP Mantener los tipos simples Mantener los tipos simples Proveer esquemas XML Proveer esquemas XML

43 Interoperabilidad Middle Tier Por cable (Wire Level) Por cable (Wire Level) Opciones de Tecnología Opciones de Tecnología Janeva (Borland) Janeva (Borland) Ja.NET, JNBridge Pro Ja.NET, JNBridge Pro Ventajas Ventajas Bajo nivel, rendimiento binario Bajo nivel, rendimiento binario Mantienen la conexión Mantienen la conexión Desventajas Desventajas Interface acoplada Interface acoplada Problemas con Firewalls / proxies Problemas con Firewalls / proxies

44 Interoperabilidad Middle Tier Proveedores de J2EE Web Services Proveedores de J2EE Web Services Apache Apache Axis, Apache SOAP Axis, Apache SOAP IBM IBM IBM WSTK – Based on Apache AXIS IBM WSTK – Based on Apache AXIS IBM WSAD – Limited Integration IBM WSAD – Limited Integration The Mind Electric The Mind Electric Glue Glue Borland Borland Web Services for Java Web Services for Java

45 Interoperabilidad Middle Tier Cola de Mensajería Cola de Mensajería Opciones de Tecnología Opciones de Tecnología MSMQ, IBM WebSphere MQ MSMQ, IBM WebSphere MQ Host Integration Server 2000, BizTalk Server 2002 Host Integration Server 2000, BizTalk Server 2002 Ventajas Ventajas Bajo acoplamiento, escenarios N a N Bajo acoplamiento, escenarios N a N Soporte inmediato de transacciones, seguridad Soporte inmediato de transacciones, seguridad Desventajas Desventajas Operación sincrónica es limitada Operación sincrónica es limitada Posilbles problemas con Port / Firewall Posilbles problemas con Port / Firewall Message Queue entre Organizaciones? Message Queue entre Organizaciones?

46 Conclusiones y Preguntas

47 Recursos

48 Recursos Esta presentación y otros recursos Esta presentación y otros recursos El lenguaje J# El lenguaje J# interop/ Interoperabilidad interop/ Interoperabilidad interop/ interop/ Ja.Net Ja.Net building/interop/ building/interop/ building/interop/ building/interop/ JnBridget JnBridget

49 Recursos Starter Kits en ASP.NET, muchos con versión J# Starter Kits en ASP.NET, muchos con versión J# nloads/codenotes/default.aspx CodeNotes for J#, libro gratuito nloads/codenotes/default.aspx CodeNotes for J#, libro gratuito nloads/codenotes/default.aspx nloads/codenotes/default.aspx Web Service Interoperabilitity Organization Web Service Interoperabilitity Organization Apache Axis Apache Axis

50 © 2003 Microsoft Corporation. All rights reserved.


Descargar ppt ".NET para Programadores Java Angel Java Lopez"

Presentaciones similares


Anuncios Google