Adf. El Framework De Desarrollo De Fusion V7.0

Post on 28-Oct-2014

22 views 0 download

Tags:

description

 

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

ADF:

El Framework de

desarrollo de Fusion

Pedro GallardoResponsable Área Middleware

AgendaAgenda

• ¿Qué es ADF?

• ¿Por qué escoger ADF?

¿Qué es ADF?

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.

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 ...

¿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)

¿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

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

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

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

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

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

ADFADF

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

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

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

ADF Faces construido sobre JSF

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’

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)

¿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

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)

¿Por qué escoger ADF?

Estándares

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)

Trinidad MyFacesTrinidad MyFaces

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

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

• http://myfaces.apache.org/

Productividad

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 !

Productividad y HerramientasProductividad y Herramientas

GenerarCódigo

Frameworks de Desarrollo

Automatización detareas

Productividad

Oracle ADF

OracleJDeveloper

Oracle JDeveloper 10GOracle JDeveloper 10G

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

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

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