Adf. El Framework De Desarrollo De Fusion V7.0

97

description

 

Transcript of Adf. El Framework De Desarrollo De Fusion V7.0

Page 1: Adf. El Framework De Desarrollo De Fusion V7.0
Page 2: Adf. El Framework De Desarrollo De Fusion V7.0

ADF:

El Framework de

desarrollo de Fusion

Pedro GallardoResponsable Área Middleware

Page 3: Adf. El Framework De Desarrollo De Fusion V7.0

AgendaAgenda

• ¿Qué es ADF?

• ¿Por qué escoger ADF?

Page 4: Adf. El Framework De Desarrollo De Fusion V7.0

¿Qué es ADF?

Page 5: Adf. El Framework De Desarrollo De Fusion V7.0

ADF es un Meta-framework (Framework de frameworks)ADF es un Meta-framework (Framework de frameworks)

• No hay duda de que en el mundo JEE hay muchos frameworks y soluciones puntuales de gran calidad, pero son solo islas de funcionalidad (presentación, servicios, datos).

• Un Meta-framework ofrece un pila tecnológica certificada con la capacidad de satisfacer la mayor parte de los requisitos y con un ciclo de vida muy similar al de la aplicación que va a ser desarrollada.

Page 6: Adf. El Framework De Desarrollo De Fusion V7.0

Frameworks Vs Meta-FrameworksFrameworks Vs Meta-Frameworks

• Alcance• Los frameworks son soluciones parciales – control de flujo de páginas, UI, acceso a base

de datos,….

• Los Meta-frameworks lo cubren todo

• Coexistencia• Classloading, los componentes tienen que compartir la misma versión de las APIs

fundamentales,….

• Con un meta-framework toda la pila tecnológica está certificada..

• Abstracción• Evitar fontanería

• Ocultar la complejidad técnica

• Herramientas• Automatización tareas repetitivas ...

Page 7: Adf. El Framework De Desarrollo De Fusion V7.0

¿Qué objetivos persigue ADF?¿Qué objetivos persigue ADF?

• Incremento de Productividad

• Menor curva de aprendizaje

• Guerra a la complejidad

• Todo tipo de desarrolladores

• Más usabilidad

• Web 2.0

• Ajax, JSF, Multicanal.

• Desarrollo basado en estándares

• EJB 3 (JSR-220)• JSF (JSR-127): Trinidad• Data Binding (JSR-227)• Portlets (JSR-168)

Page 8: Adf. El Framework De Desarrollo De Fusion V7.0

¿Qué es ADF?¿Qué es ADF?

• Herramientas RAD

• Frameworks de Desarrollo

• JEE 6

• Web 2.0

• Portales Colaborativos..

Frameworks de desarrollo basados en estándares integrados con Herramientas + Tecnología Web 2.0, AJAX, etc

ADF &Jdeveloper

ADF Faces Rich ClientWebCenter

Page 9: Adf. El Framework De Desarrollo De Fusion V7.0

JDeveloper herramienta de desarrollo de ADF y mucho más …JDeveloper herramienta de desarrollo de ADF y mucho más …

Page 10: Adf. El Framework De Desarrollo De Fusion V7.0

ADF es el corazón de Fusión ApplicationsADF es el corazón de Fusión Applications

Page 11: Adf. El Framework De Desarrollo De Fusion V7.0

Fusion Applications – ComponentesFusion Applications – Componentes

• La Web ha evolucionado de un modelo de páginas a un modelo de componentes.

• Tecnologías que lo hacen posible

Page 12: Adf. El Framework De Desarrollo De Fusion V7.0

ADF incorpora un kit de componentes pre construido para la creación de aplicacionesADF incorpora un kit de componentes pre construido para la creación de aplicaciones

Page 13: Adf. El Framework De Desarrollo De Fusion V7.0

ADF implementa el patrón MVCADF implementa el patrón MVC

ADFADF

Page 14: Adf. El Framework De Desarrollo De Fusion V7.0

ADF, ArquitecturaADF, Arquitectura

Controllador Faces

AD

F M

eta

data

S

erv

ices

VistaADF

Faces JSF

ADFModelo

ADF BC ServicesADF BC Services

Web ServicesWeb Services

Acceso a Datos

Serviciosde

Negocio

CapaPersistencia

ADF BCViewADF BCView

ADF BCEntityADF BCEntity

ADF BindingsADF Bindings

Struts

JSPADF Swing

Servicios de Datos

ADF Data ControlADF Data Control

Java BeansJava

BeansEJB

SessionsEJB

Sessions

TopLink QueriesTopLink Queries

TopLink MappingTopLink Mapping

Datos Relacionales

Datos XML Datos Legacy Aplicaiones Empaquetadas

Page 15: Adf. El Framework De Desarrollo De Fusion V7.0

ADF, Elección RAD (Visual IDE)ADF, Elección RAD (Visual IDE)

Controllador Faces

AD

F M

eta

data

S

erv

ices

VistaADF

Faces JSFJSF

ADFModelo

ADF BC ServicesADF BC Services

Web ServicesWeb Services

Acceso a Datos

CapaPersistencia

ADF BCViewADF BCView

ADF BCEntityADF BCEntity

ADF BindingsADF Bindings

Struts Struts

JSPJSPADF Swing

Servicios de Datos

ADF Data ControlADF Data Control

Java BeansJava

BeansEJB

SessionsEJB

Sessions

TopLink QueriesTopLink Queries

TopLink MappingTopLink Mapping

Serviciosde

Negocio

Datos Relacionales

Datos XML Datos Legacy Aplicaiones Empaquetadas

Page 16: Adf. El Framework De Desarrollo De Fusion V7.0

ADF, Elección OO ADF, Elección OO

Controllador Faces

AD

F M

eta

data

S

erv

ices

VistaADF

Faces JSFJSF

ADFModelo

Acceso a Datos

CapaPersistencia

ADF BCViewADF BCView

ADF BCEntityADF BCEntity

ADF BindingsADF Bindings

Struts

JSPJSPADF Swing

Servicios de Datos

ADF Data ControlADF Data Control

Java BeansJava

BeansEJB

SessionsEJB

Sessions

TopLink QueriesTopLink Queries

TopLink MappingTopLink Mapping

ADF BC ServicesADF BC Services

Web ServicesWeb Services

Serviciosde

Negocio

Datos Relacionales

Datos XML Datos Legacy Aplicaiones Empaquetadas

Page 17: Adf. El Framework De Desarrollo De Fusion V7.0

ADF Faces construido sobre JSF

Page 18: Adf. El Framework De Desarrollo De Fusion V7.0

Que es JSF? Java Server FacesQue es JSF? Java Server Faces

• Desarrollado en la Java Community Process

• (JCP) como la JSR-127

• Nickname: Faces

• Objetivo: Simplificar la creación de GUIs Java y dar soporte a un modelo basado en componentes

• Inicio: Mayo del 2001

• Primera release oficial: Marzo del 2004

• Oracle es un ‘primary contributor’

Page 19: Adf. El Framework De Desarrollo De Fusion V7.0
Page 20: Adf. El Framework De Desarrollo De Fusion V7.0

Pensamiento sobre JSF …Pensamiento sobre JSF …

• “The real problem is that the existing standard components are simply too basic to offer any real benefit to users…”

Rething JSF – The Real Problem

(www.theserverside.com – April 2007)

Page 21: Adf. El Framework De Desarrollo De Fusion V7.0

¿Qué aporta ADF Faces vs JSF?¿Qué aporta ADF Faces vs JSF?

• Conjunto de Componetes mayor

• Más de 100 tipos de componentes

• Componentes más avanzados

• Partial-page rendering, etc

• Distintos kits de rendering

• Aplicaciones ‘Ask’

• Funcionalidades para

• Personalizar aplicaciones, look-and-feel

• Validaciones en el cliente

• ADF Faces RIA (Rich Internet Architecture)

• Soporte a ADF model out-of-the-box

Page 22: Adf. El Framework De Desarrollo De Fusion V7.0
Page 23: Adf. El Framework De Desarrollo De Fusion V7.0

Nos lleva a…Nos lleva a…

• “There’s one company that deserves praise for actually pushing JSF in the right direction: Oracle. ADF Faces is a fantastic set of widgets with drop-in funtionality.”

Rething JSF – The Real Problem

(www.theserverside.com – April 2007)

Page 24: Adf. El Framework De Desarrollo De Fusion V7.0

¿Por qué escoger ADF?

Page 25: Adf. El Framework De Desarrollo De Fusion V7.0

Estándares

Page 26: Adf. El Framework De Desarrollo De Fusion V7.0

Nuestros objetivosNuestros objetivos

• Incremento de Productividad

• Menor curva de aprendizaje

• Guerra a la complejidad

• Todo tipo de desarrolladores

• Más usabilidad

• Web 2.0

• Ajax, JSF, Multicanal

• Desarrollo basado en estándares

• EJB 3 (JSR-220)• JSF (JSR-127): Trinidad• Data Binding (JSR-227)• Portlets (JSR-168)

Page 27: Adf. El Framework De Desarrollo De Fusion V7.0

Trinidad MyFacesTrinidad MyFaces

• Implemtación de ADF Faces que Oracle libera a la comunidad

• http://wiki.apache.org/myfaces/FrontPage

• http://myfaces.apache.org/

Page 28: Adf. El Framework De Desarrollo De Fusion V7.0

Productividad

Page 29: Adf. El Framework De Desarrollo De Fusion V7.0

Contexto tradicional en desarrollo de aplicaciones WEBContexto tradicional en desarrollo de aplicaciones WEB

• Menor Productividad

• Mayor Complejidad

• Diferentes arquitecturas

• Diferentes tecnologías

• Multitud de frameworks dispersos

• Desarrolladores muy especializados

• Interfaz de usuario no comparable a escritorio

• Soluciones no basadas en estándares

¡...pero ahora los Frameworks JAVA y la tecnología WEB han evolucionado !

Page 30: Adf. El Framework De Desarrollo De Fusion V7.0

Productividad y HerramientasProductividad y Herramientas

GenerarCódigo

Frameworks de Desarrollo

Automatización detareas

Productividad

Oracle ADF

OracleJDeveloper

Page 31: Adf. El Framework De Desarrollo De Fusion V7.0

Oracle JDeveloper 10GOracle JDeveloper 10G

Page 32: Adf. El Framework De Desarrollo De Fusion V7.0

JavaPolis RAD RaceJavaPolis RAD Race

• Equipos de 2 desarrolladores deben resolver un caso de la vida real y entregar una aplicación acabada en 12 horas

• No pueden recibir ningún tipo de ayuda externa

• Sólo los mejores y más experimentados equipos con un sólido conjunto de herramientas de desarrollo tendrán éxito

• Un jurado de especialistas independientes decide el ganador

Page 33: Adf. El Framework De Desarrollo De Fusion V7.0

JavaPolis RAD Race – Ganadores 2005/06JavaPolis RAD Race – Ganadores 2005/06

Posición Empresa Matriz Tecnológica

Logical CMG • JDeveloper 10g 10.1.2 IDE• Struts, JSP,• ADF Framework• JHeadstart

Oracle • JDeveloper 10g 10.1.3 IDE• JavaServer Faces• ADF Framework

AXI • JDeveloper 10g 10.1.2 IDE• Framework propio

Page 34: Adf. El Framework De Desarrollo De Fusion V7.0

JHeadStart incrementa de forma drástica la productividad de ADFJHeadStart incrementa de forma drástica la productividad de ADF

• Demostración

http://www.bbr.cat/index.php?option=com_myblog&show=Demo-Creacion-de-una-aplicacion-con-JDeveloper-y-JHeadStart-10.1.3-paso-a-paso..html&Itemid=53http://www.bbr.cat/index.php?option=com_myblog&show=Demo-Creacion-de-una-aplicacion-con-JDeveloper-y-JHeadStart-10.1.3-paso-a-paso..html&Itemid=53

Page 35: Adf. El Framework De Desarrollo De Fusion V7.0
Page 36: Adf. El Framework De Desarrollo De Fusion V7.0
Page 37: Adf. El Framework De Desarrollo De Fusion V7.0
Page 38: Adf. El Framework De Desarrollo De Fusion V7.0
Page 39: Adf. El Framework De Desarrollo De Fusion V7.0
Page 40: Adf. El Framework De Desarrollo De Fusion V7.0
Page 41: Adf. El Framework De Desarrollo De Fusion V7.0
Page 42: Adf. El Framework De Desarrollo De Fusion V7.0
Page 43: Adf. El Framework De Desarrollo De Fusion V7.0
Page 44: Adf. El Framework De Desarrollo De Fusion V7.0
Page 45: Adf. El Framework De Desarrollo De Fusion V7.0
Page 46: Adf. El Framework De Desarrollo De Fusion V7.0
Page 47: Adf. El Framework De Desarrollo De Fusion V7.0
Page 48: Adf. El Framework De Desarrollo De Fusion V7.0
Page 49: Adf. El Framework De Desarrollo De Fusion V7.0
Page 50: Adf. El Framework De Desarrollo De Fusion V7.0
Page 51: Adf. El Framework De Desarrollo De Fusion V7.0
Page 52: Adf. El Framework De Desarrollo De Fusion V7.0
Page 53: Adf. El Framework De Desarrollo De Fusion V7.0
Page 54: Adf. El Framework De Desarrollo De Fusion V7.0
Page 55: Adf. El Framework De Desarrollo De Fusion V7.0
Page 56: Adf. El Framework De Desarrollo De Fusion V7.0
Page 57: Adf. El Framework De Desarrollo De Fusion V7.0
Page 58: Adf. El Framework De Desarrollo De Fusion V7.0
Page 59: Adf. El Framework De Desarrollo De Fusion V7.0
Page 60: Adf. El Framework De Desarrollo De Fusion V7.0
Page 61: Adf. El Framework De Desarrollo De Fusion V7.0
Page 62: Adf. El Framework De Desarrollo De Fusion V7.0
Page 63: Adf. El Framework De Desarrollo De Fusion V7.0
Page 64: Adf. El Framework De Desarrollo De Fusion V7.0
Page 65: Adf. El Framework De Desarrollo De Fusion V7.0
Page 66: Adf. El Framework De Desarrollo De Fusion V7.0
Page 67: Adf. El Framework De Desarrollo De Fusion V7.0
Page 68: Adf. El Framework De Desarrollo De Fusion V7.0
Page 69: Adf. El Framework De Desarrollo De Fusion V7.0
Page 70: Adf. El Framework De Desarrollo De Fusion V7.0
Page 71: Adf. El Framework De Desarrollo De Fusion V7.0
Page 72: Adf. El Framework De Desarrollo De Fusion V7.0
Page 73: Adf. El Framework De Desarrollo De Fusion V7.0
Page 74: Adf. El Framework De Desarrollo De Fusion V7.0
Page 75: Adf. El Framework De Desarrollo De Fusion V7.0
Page 76: Adf. El Framework De Desarrollo De Fusion V7.0
Page 77: Adf. El Framework De Desarrollo De Fusion V7.0
Page 78: Adf. El Framework De Desarrollo De Fusion V7.0
Page 79: Adf. El Framework De Desarrollo De Fusion V7.0
Page 80: Adf. El Framework De Desarrollo De Fusion V7.0
Page 81: Adf. El Framework De Desarrollo De Fusion V7.0
Page 82: Adf. El Framework De Desarrollo De Fusion V7.0
Page 83: Adf. El Framework De Desarrollo De Fusion V7.0
Page 84: Adf. El Framework De Desarrollo De Fusion V7.0
Page 85: Adf. El Framework De Desarrollo De Fusion V7.0
Page 86: Adf. El Framework De Desarrollo De Fusion V7.0
Page 87: Adf. El Framework De Desarrollo De Fusion V7.0
Page 88: Adf. El Framework De Desarrollo De Fusion V7.0
Page 89: Adf. El Framework De Desarrollo De Fusion V7.0
Page 90: Adf. El Framework De Desarrollo De Fusion V7.0
Page 91: Adf. El Framework De Desarrollo De Fusion V7.0
Page 92: Adf. El Framework De Desarrollo De Fusion V7.0
Page 93: Adf. El Framework De Desarrollo De Fusion V7.0
Page 94: Adf. El Framework De Desarrollo De Fusion V7.0
Page 95: Adf. El Framework De Desarrollo De Fusion V7.0
Page 96: Adf. El Framework De Desarrollo De Fusion V7.0
Page 97: Adf. El Framework De Desarrollo De Fusion V7.0