Download Whitepaper ICONUS - NET framework

Document related concepts
no text concepts found
Transcript
.NET framework
Análisis de la arquitectura .NET y su
interoperabilidad con Lotus Domino
Whitepaper
Junio 2005
.NET te ofrece
Un código independiente del leguaje
Un código independiente de la ejecución
El mismo código para ejecución Local, distribuida o
remota
Mejoras frente a los COM tradicionales
En Seguridad, Rendimiento, etc.
El runtime puede ser embebido en nuestras aplicaciones
al estilo ActiveX (ej. Internet Explorer)
Lenguajes soportados:
VB.NET, C#, ASP.NET, Delphi, …
Filosofía .NET
O eres .NET
Un Runtime común
(memoria, threads, …)
Unas librerías comunes
(GUI, XML, …)
O eres WS
Runtime ASP.NET
(WebForms, WS, …)
En ambos casos trabajamos sobre dos abstracciones:
El Common Language Runtime (CLR)
Y la Framework Class Library
Common Language Runtime (CLR)
Es un equivalente a la máquina virtual de java
Gestiona el acceso a los recursos del sistema
basado en
Prioridad: FS, memoria, threads, etc.
Seguridad: punto de ejecución (local o remoto)
Mantiene compatibilidad con COM y DLL
Framework Class Library
Comprende librerías para el desarrollo de:
Console applications.
Windows GUI applications (Windows Forms).
ASP.NET applications.
XML Web services.
Windows services.
Sustituye las antiguas API
Microsoft Foundation Classes (MFC)
RAD de Visual Basic
Framework Class Library (II)
Cubre todo lo que podemos llegar a necesitar
Windows Forms
Active Directory
Assemblies
Base Data Types
Collections
Component Model
Cryptography
Data and ADO.NET, Diagnostics, Exceptions, Globalization and NLS,
Input and Output, Interoperability, Messaging, Networking, Reflection,
Regular Expressions, Remoting, Resources, Security, Serialization,
Services, Setup, Timer, XML Data, XML Serialization, …
¿Por qué nos interesa .NET?
Es el nuevo estándar impuesto por Microsoft
Toda la infraestructura Microsoft soporta .NET
Aprovechar funcionalidad incluida en los productos como Office
Independiza de la versión de Windows
Los desarrollos .NET son más fácilmente
exportables a web (MFC -> Windows Forms)
Es abierto (XML Webservices) e integrable con
otros entornos.
Integración .NET +> Domino
Desarrollando Servicios XML Webservices en Domino
Soportados desde la versión 5
Se integra además con tecnologías de Portal, Websphere y Java
Programados como LotusScript y Agentes Java
Los Inconvenientes de overhead y seguridad desaparecen en la versión 7
Integrando a través de Arquitectura COM (.NET COM)
.NET incluye un Wizard de Microsoft con wrapper COM
Inconvenientes: estabilidad y performance
Utilizando las APIs C/CORBA
Desde .NET se trata de llamar a DLLs (o crear wrappers)
Inconvenientes: gestión de multithread y complejidad técnica
Utilizar NotesSQL como si Domino fuera una BdD
Utilizar acceso ODBC
Inconvenientes: Performance y limitaciones (RTF, multivalor, …)
Integración .NET <+ Domino
Los mismos inconvenientes que en el otro sentido y alguno
mas
Utilizando Clientes XML Webservices
Pueden estar desarrollados en otras plataformas: Portal, WAS y Java
O pueden desarrollarse con LotusScript o Java
Llamando con Arquitectura COM
Se incluye un Wizard para generar wrapper de .NET desde C
CLR actúa como proxy (disminuye la performance dramáticamente)
Se invoca desde LostusScript como cualquier COM
Con Arquitectura CORBA
Requiere un ORB .NET (están verdes)
IIS como servidor HTTP primario para Domino
Habilita SSO entre el Desktop, el IIS y el Domino
Fuerza a desarrollar aplicaciones solo WEB
Integración .NET <+> Domino
Puntos oscuros:
La Seguridad se complica (LDAP, SSO, etc.). La
integración solo es recomendable para Intranets
La Performance cae dramáticamente (se espera mejore
con futuras versiones de .NET)
Otras alternativas
Utilizar un tercer sistema ‘puente’ (Portal, Java, BdD,
colas de mensajería, …)
Utilizar un producto de terceros
•
•
!
"
#
$%
11#
&
'()* (+),- +