Diciembre 2002 - PowerPoint PPT Presentation

1 / 40
About This Presentation
Title:

Diciembre 2002

Description:

Interoperabilidad e Integraci n I. La ... Modelo de programaci n de aplicaciones ... more comparisons from Microsoft: http://www.gotdotnet.com/team/compare ... – PowerPoint PPT presentation

Number of Views:70
Avg rating:3.0/5.0
Slides: 41
Provided by: jos93
Category:

less

Transcript and Presenter's Notes

Title: Diciembre 2002


1
Interoperabilidad e Integración ILa plataforma
de desarrollo Microsoft .NET una sencilla
comparación con J2EEMSDN Regional Director
2
Avisos y Aclaraciones
  • Punto de Partida
  • .NET es un conjunto de productos reales
  • J2EE es un conjunto de especificaciones

3
Comparaciones Técnicas
  • Arquitectura
  • Servicios de Componentes
  • Aplicaciones Distribuidas
  • Acceso a datos
  • Servicios Web XML
  • Aplicaciones Web
  • Integración

4
Plataforma Java 2
Desde el 99 el foco de Java es la Empresa
5
Que es J2EE?
  • Conjunto de
  • Modelo de programación de aplicaciones
  • Especificación de una plataforma APIs y
    servicios (1600 páginas)
  • Conjunto de Test 5000 tests
  • Implementación de referencia
  • Todo incluido en un programa de MARCA
  • La plataforma une todas las APIs empresariales
    de JAVA
  • EJB, Servlet, JSP, Java Web Server, JNDI, JDBC,
    JTA, JMS, JavaMail, CORBA
  • NO Incluye
  • APIs para Servicios Web XML, XML Data binding,
    clustering, session state sharing, y mas.
  • Herramientas de desarrollo, Servidores,
    herramientas de administración

6
Aplicación J2EE
Firewall
Application Server
Client
Enterprise Information Systems (EIS)
CORBA
EJB
Client
Client
JSP/ Servlet
Relational-Database, Legacy Applications, ERP
Systems
EJB
HTTP
Client
XML
Client
Other Services JNDI, JMS, JavaMail, XML
Client Tier
EIS Tier
Middle Tier
Igual que Windows DNA / .NET
7
El Modelo J2EE
JDBC
HTTP Engine
HTTP Client
JSP
Servlet
Servlet Container
J2EE Server
8
.NET usa ASP.NET para aplicaciones Web
.NET App
IIS HTTP Engine
SOAP Client
CLR Host
HTTP Client
CLR Platform
9
(No Transcript)
10
Licencias Autorizadas de J2EE
  • SilverStream
  • Fujitsu
  • Nokia
  • NEC
  • Tibco
  • Brokat (Gemstone)
  • Hitachi
  • Supercede
  • Sybase
  • Persistence
  • BoradVision
  • BEA WebLogic
  • IBM WebSphere
  • Suns iPlanet
  • Oracle9iAS
  • HP Bluestone
  • Borland
  • IONA iPoartal
  • CA
  • Allaire/Macromedia
  • ATG
  • Compaq

WebSphere (27) WebLogic (39) Suns iPlanet
(15) Oracle9iAS (14) 95
11
Qué es EJB?Suns Enterprise JavaBeans
  • Modelo de componentes en el servidor
  • No es una extensión de los JavaBeans
  • Servicios ciclo de vida, transacciones,
    seguridad, conectividad, acceso de bases de
    datos, pooling, etc
  • No es CORBA
  • Aunque usa CORBA IIOP

Como COM permite al desarrollador concentrarse
en la PURA lógica de negocio
12
Escogiendo un modelo de Bean
Tipos de Bean
Session
Entity
Container Managed CMP
Bean Managed BMP
Stateful
Stateless
La elección no es fácil Casi siempre utilizamos
los Stateless Session Beans
13
Qué es JSP ?Java Server Pages Codigo Java en
paginas HTML
2
.jsp
3
1
Servlet (Bytecode)
HTTP request(JSP)
HTML
Solo se recompila si la página cambia
4
5
HTTP response(HTML)
Client
Server
Como ASP pero mas rápido, usa un mejor lenguaje
y mas facil de mantener - MVC
14
Model-View-Controller
JSP
Browser
Data
HTTP
Servlet
Business Logic
Code-Behind el final del spaghetti code El
servlet llama al JSP correcto muchos
prefieren JSP/Servlets than EJBs
15
Qué es JMS ?Java Message Service
  • Clases Java que definen un API a cualquier
    sistema de colas de mensajes
  • Soportado por IBM MQseries y otros

Qué es JCA ?J2EE Connectors Architecture Spec
  • Como escribir conectores enchufables a un
    servidor de aplicaciones y así poder comunicarse
    con sistemas de terceras partes.

Como MSMQ, HIS (COMTI), BizTalky los Web Services
16
La Plataforma
Cache / Proxy / Fwall
Commerce
Integration
Tools
Management
Collaboration
Content Mgmt
Wireless/Mobile
Data
Application Server
17
La Plataforma Microsoft
ISA Server
VisualStudioVisio 3rd party Add-ons
App CenterMOM
CS2000
BizTalk / HIS
Exchange / SPS
Content Mgmt Server
Mobile Info Server
SQL Server
Windows Server
18
Dónde cabe J2EE?
J2EE
J2EE
J2EE
19
La Plataforma IBM
Cache / Proxy / Fwall
WebSphere Edge Server
VisualAgeforJavaWebSphereStudio
WebSphereBusiness Components
Tivoli
Commerce
WebSphere Commerce Srvr
WebSphere Integration
Integration
Tools
Management
Collaboration
Lotus / WebSphere Portal
Content Mgmt
Content Mgmt Server
Wireless/Mobile
Mobile Info Server
Data
DB2 UDB
Application Server
WebSphere App Server (TXSeries, CICS, Encina)
Multiples Sistemas Operativos
20
La plataforma Sun / iPlanet
Cache / Proxy / Fwall
iPlanet Web Proxy Server
ForteforJavaNetBeansiPlanet AppBuilder
?
Commerce
iPlanet ECXpert
iPlanet Integration Srvr Enterprise Connectors
Integration
Tools
Management
iPlanet Msging / Portal
Collaboration
Content Mgmt
?
Wireless/Mobile
iPlanet Wireless Server
Data
Oracle?
Application Server
iPlanet App Server
Solaris
21
La plataforma BEA
Cache / Proxy / Fwall
?
WebGainStudio Cajun
?
Commerce
WebLogic Commerce Personalization
WebLogic Integration
Integration
Tools
Management
Collaboration
WebLogic Integration
Content Mgmt
Vignette?
Wireless/Mobile
?
Data
Oracle?
Application Server
WebLogic Server
Multiple Operating Systems
22
La Plataforma Oracle
Cache / Proxy / Fwall
?
OracleDeveloper
?
Commerce
Oracle Applications
Integration
Tools
Management
Collaboration
Content Mgmt
Vignette?
Wireless/Mobile
?
Data
Oracle
Application Server
Oracle9i App Server
Multiple Operating Systems
23
Que es Microsoft .NET ?
PCs Dispositivos
Experiencia de usuario
Visual Studio.NET .NET Framework
Web Services
Servidores
24
Distribución de Aplicaciones
  • J2EE
  • Distribución usando el Application Server
  • Metadata en los descriptores de despliegue
  • Ficheros JAR, WAR, EAR
  • Versionado no soportado por el cargador de Java
  • .NET
  • XCOPY
  • Metadata puede estar en el
  • código o en los ficheros
  • de configuración
  • Global Assemblies y GAC
  • Strong Names evitan conflictos de nombres
  • Incorpora versionado

25
Capacidades orientadas a Servidor
  • .NET Component Services
  • COM Services expuestos a .NET
  • Ofrece contexto, seguridad, transacciones,
    pooling, eventos libremente acoplados, activación
    asíncrona
  • Integrado en el sistema operativo altamente
    optimizado
  • Condicionado al sistema operativo
  • J2EEs EJB
  • EJB Server / Container gestiona los EJBs
  • Ofrece contexto, seguridad, transacciones,
    pooling, gestión de persistencia ( asincronismo
    en J2EE v1.3)
  • Incluido en el Servidor de Aplicaciones J2EE
    Sistuado sobre el Sistema Operativo
  • Condicionado al Servidor de Aplicaciones

26
Invocación remota
  • .NET Remoting
  • Basado en estándares (HTTP, TCP)
  • Funciona directamente pero es altamente
    extensible y securizable
  • Soporta invocaciones de métodos sincronas y
    asíncronas
  • Totalmente integrado con SOAP
  • J2EE Remoting
  • RMI/IIOP
  • RMI esta destinado a Java únicamente
  • Interoperabilidad entre lenguajes a través de
    CORBA
  • Requiere un registro RMI o JNDI
  • Extensibleusando Socket Factories y Custom
    Sockets
  • Servicios Web no es una parte de J2EE
    especifico del vendedor, o lo puede añadir usted

27
Mensajeria y Colas
  • .NET
  • API System.Messaging
  • Mensajeria Persistente y Asincrona
  • Ofrece eventos, prioridades, trasacionalidad, ,
    seguridad, formatos de mensajes a medida (XML
    por defecto)
  • Actualmente el MSMQ es el único proveedor
  • J2EE
  • Java Messaging Service (JMS) API
  • Requiere un proveedor JMS
  • MQSeries, Sonic, Fiorano, BEA, Oracle, ?
  • Los proveedores JMS no interoperan o intercambian
    mensajes

28
El Modelo ADO.NET
29
ADO.NET versus JDBC2
  • JDBC esta basado en ODBC
  • Familiar, pero de bajo nivel, requiere mas código
  • Orientado a SQL (Que pasa con las fuentes no
    SQL?)
  • Implementaciones varían (IBMs DataAccessBeans)
  • JDBC RowSets vs ADO.NET DataSets
  • JDBC mas datos para marshal, Código mas complejo
  • JDBC no soporta datos desconectados
  • XML Data Binding (JAXB)
  • Solo serializacion / deserializacion, no
    presentación
  • próxima versión v0.2 spec no es parte de
    J2EE
  • ADO.NET permite todo lo anterior
  • JDBC v3.0 también llegara pronto, como J2EE
    v1.4?)
  • Savepoints, portabilidad, result sets múltiples

30
Protocolo Universal de Conexión
  • J2EE
  • JAXP requerido en J2EE v1.3, opcional antes
  • API Parser para DOM Level 2, SAX 2.0, XSLT 1.0
  • JAXM todavia en borrador
  • Java XML Pack
  • APIs de servicios Web de bajo nivel
  • Vendedores extienden J2EE en diferentes formas
  • .NET incluido en el , parte fundamental
  • Soporte XML 1.0 DTD, Schemas, XPath, XSLT, DOM
    Level 1 y 2 Core, SOAP 1.1, WSDL
  • Soporte de herramientas sencillez
  • La fontanería esta oculta

31
ASP.NET vs JSP/Servlet
  • Ambos
  • Compilación Just-in-time rápido a muy rápido
  • Distribución vía Xcopy
  • Separación de la lógica (MVC) Code-behind
  • Página inteligente o cache de fragmentos de
    página (para JSP thru vendors)
  • Pueden generar y servir XML
  • ASP.NET
  • Librería de controles de servidor (Web Forms) con
    estado
  • Servicios Web muy facil
  • Multi-lenguaje C, J, C, VB, COBOL, Jscript,
    more
  • Acceso a los recursos del sistema (logs,
    ficheros, perf counters, etc.)
  • Excelentes capacidades de tracing
  • JSP/Servlet
  • Multi-vendor, multi-OS

32
ASP.NET vs JSP/Servlet Perf
more comparisons from Microsoft
http//www.gotdotnet.com/team/compare
33
Diferencias entre Microsofty los vendedores de
infraestructura
34
Conexión con Código heredado
  • .NET Interop
  • .NET a COM vía Runtime Callable Wrappers (RCW)
  • COM a .NET vía COM Callable Wrappers (CCW)
  • MQSeries, SAP, Siebel, Clarify, Onyx, many others
  • Platform Invocation Services (PInvoke)
    cualquier DLL
  • Creación de Servicios Windows
  • Java Interop
  • JNI llamada a código no Java desde Java no
    permitido en in EJB
  • Invocar Java desde no-Java en un proceso es un
    desafío
  • Java Connector Architecture (J2EE 1.3)
  • No ampliamente distribuido
  • Se cuestiona el modelo
  • Ambos
  • Amplio soporte de bases de datos
  • Integración de Brokers (vendor-specific Biztalk,
    MQ Integrator, etc)
  • Ficheros XML / intercambio de documentos via
    XML parsing code

35
El proyecto Mono .NET multiplataforma?
  • Mono Implementación Open-Source de .NET
  • Implementación del CLI y del C (ECMA Standard)
  • Extensiones
  • Algunas en la librería de clases del Framework
  • IL Interpreter
  • Patrocinado por Ximian, una compañía de
    distribución de Linux
  • .NET resuelve el multi lenguaje, el GC, los
    problemas de threading en Linux
  • Eso no significa que .NET es ahora multi
    Plataforma (Esto no es una equivalencia a Java)
  • .NET es todavía plataforma Microsoft
  • No es un competidor de Microsoft .NET
  • Microsoft espera y fomenta esto vía ECMA
  • Ximian reconoce el valor del soporte multi
    lenguaje.

36
.NET vs. J2EE
  • Common Services
  • WebForms now equivalent to JSP/Servlet
  • Parallels in many other services
  • .NET Differentiators
  • VS.NET Great toolset
  • ADO.NET, ASP.NET function and developer
    productivity
  • CLR reaching out to all developers, all
    languages
  • Web Services built-in (but Java vendors are
    adding this on)
  • System access
  • Single platform Windows only

37
Dynamic Server PagesASP.NET vs JSP/Servlet
  • Both
  • Just-in-time compiled, reasonably fast
  • Xcopy deployment
  • Separation of logic (MVC) Code-behind
  • Intelligent page caching
  • XML friendly
  • ASP.NET only
  • Server-side controls (Web Forms) with state
  • Web Services so easy
  • Multi-language
  • Get access to system resources (logs, files,
    perf counters, etc.)

38
Data AccessMS ADO.NET vs. EJB, JDBC, JDO?
  • J2EEs data access strategy is not so clear
  • EJB
  • Tight coupling of data store
  • Problems with XML support
  • JDBC quite limited, static, no XML
  • JDO concept, no product yet
  • ADO.NET
  • Common data access across the enterprise
  • Simple, Elegant not burdened with mandatory
    remote interfaces
  • High-performance
  • Expose data object model directly
  • Loosely coupled model
  • XML is integral
  • A big achievement for programmer productivity

39
(No Transcript)
40
Forum de Desarrolladores Corporativos
INTEROPERABILIDAD E INTEGRACIÓN I La plataforma
de desarrollo Microsoft .NET una sencilla
comparación con J2EE
Write a Comment
User Comments (0)
About PowerShow.com