Adf. El Framework De Desarrollo De Fusion V7.0
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Adf. El Framework De Desarrollo De Fusion V7.0

on

  • 8,415 views

 

Statistics

Views

Total Views
8,415
Views on SlideShare
8,366
Embed Views
49

Actions

Likes
5
Downloads
281
Comments
9

4 Embeds 49

http://www.slideshare.net 33
http://www.visualcv.com 14
https://swa.hp.com 1
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

15 of 9 Post a comment

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • espero que sea tan bueno como lo promocionas, soy nuevo en el desarrollo web, estoy evaluando opciones y esta me parece una muy buena alternativa.
    Are you sure you want to
    Your message goes here
    Processing…
  • Buena presentación Pedro
    Are you sure you want to
    Your message goes here
    Processing…
  • eXCELENTE
    Are you sure you want to
    Your message goes here
    Processing…
  • McRose, suele funcionar mucho mejor cuando las personas deciden voluntariamente trabajar con ADF y no es una decision impuesta. El mundo esta lleno de opciones.
    Are you sure you want to
    Your message goes here
    Processing…
  • Sin animos de ofender, trabajar con JDeveloper+ADF es lo mas desagradable que me ha ocurrido en la vida

    la isla es el ADF en sí
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

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

  • 1.  
  • 2. ADF: El Framework de desarrollo de Fusion Pedro Gallardo Responsable Área Middleware
  • 3. Agenda
    • ¿Qué es ADF ?
    • ¿Por qué escoger ADF ?
  • 4. ¿Qué es ADF?
  • 5. 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.
  • 6. Frameworks 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 ...
  • 7. ¿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)
  • 8. ¿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 Client WebCenter
  • 9. JDeveloper herramienta de desarrollo de ADF y mucho más …
  • 10. ADF es el corazón de Fusión Applications
  • 11. Fusion Applications – Componentes
    • La Web ha evolucionado de un modelo de páginas a un modelo de componentes.
    • Tecnologías que lo hacen posible
  • 12. ADF incorpora un kit de componentes pre construido para la creación de aplicaciones
  • 13. ADF implementa el patrón MVC ADF
  • 14. ADF, Arquitectura Controllador ADF Metadata Services Vista ADF Modelo ADF BC Services Web Services Acceso a Datos Servicios de Negocio Capa Persistencia ADF BC View ADF BC Entity ADF Bindings Servicios de Datos ADF Data Control Java Beans EJB Sessions TopLink Queries TopLink Mapping Datos Relacionales Datos XML Datos Legacy Aplicaiones Empaquetadas Faces ADF Faces JSF Struts JSP ADF Swing
  • 15. ADF, Elección RAD (Visual IDE) Controllador ADF Metadata Services Vista JSF ADF Modelo ADF BC Services Web Services Acceso a Datos Capa Persistencia ADF BC View ADF BC Entity ADF Bindings Struts JSP Servicios de Datos ADF Data Control Java Beans EJB Sessions TopLink Queries TopLink Mapping Servicios de Negocio Datos Relacionales Datos XML Datos Legacy Aplicaiones Empaquetadas Faces ADF Faces ADF Swing
  • 16. ADF, Elección OO Controllador ADF Metadata Services Vista JSF ADF Modelo Acceso a Datos Capa Persistencia ADF BC View ADF BC Entity ADF Bindings JSP Servicios de Datos ADF Data Control Java Beans EJB Sessions TopLink Queries TopLink Mapping ADF BC Services Web Services Servicios de Negocio Datos Relacionales Datos XML Datos Legacy Aplicaiones Empaquetadas Faces ADF Faces Struts ADF Swing
  • 17. ADF Faces construido sobre JSF
  • 18. Que 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’
  • 19.  
  • 20. 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)
  • 21. ¿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
  • 22.  
  • 23. 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)
  • 24. ¿Por qué escoger ADF?
  • 25. Estándares
  • 26. Nuestros 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)
  • 27. Trinidad MyFaces
    • Implemtación de ADF Faces que Oracle libera a la comunidad
      • http://wiki.apache.org/myfaces/FrontPage
      • http://myfaces.apache.org/
  • 28. Productividad
  • 29. Contexto 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 !
  • 30. Productividad y Herramientas Generar Código Frameworks de Desarrollo Automatización de tareas Productividad Oracle ADF Oracle JDeveloper
  • 31. Oracle JDeveloper 10G
  • 32. JavaPolis 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
  • 33. JavaPolis 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
  • 34. JHeadStart 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=53
  • 35. Matriz comparativa Forms vs ADF vs JHeadStart vs BBRedJav Productividad Funcionalidad Forms ADF JHeadStart BBRedJav
  • 36. BBRedJav extiende las funcionalidades de ADF con la productividad de JHeadStart
    • Demostración
    • Aplicación desarrollada con:
      • ADF 10g
      • JHeadStart 10.1.3
      • BBRedJava 10.1.3
      • Yahoo UI
      • Mootools JS
    http://www.bbr.cat/presentaciones/videos/EnominaAdf/EnominaAdf.html
  • 37. Patrones de Diseño. Buenas Prácticas
  • 38. Patrones de diseño en ADF … + de 14 patrones de diseño Patrón Funcionalidad Model/View/Controller Cleanly separates the roles of data and presentation, allowing multiple types of client displays to work with the same business information. Interface / Implementation Separation Cleanly separates the API or Interface for components from their implementation class Service Locator Abstracts the technical details of locating a service so the client and use it more easily Inversion of Control A containing component orchestrates the lifecycle of the components it contains, invoking specific methods that the developer can overrides at the appropriate times so the developer can focus more on what the code should do instead when it should get executed. Dependency Injection Simplifies application code, and increases configuration flexibility by deferring component configuration and assembly to the container Active Record Avoids the complexity of "anything to anything" object/relational mapping, by providing an object that wraps a row in a database table or view, encapsulates the database access, and adds domain logic on that data. Data Access Objects Avoids unnecessary marshalling overhead by implementing dependent objects as lightweight, persistent classes instead of each as an Enterprise Bean. Isolates persistence details into a single, easy to maintain class.
  • 39. Patrones de diseño en ADF … + de 14 patrones de diseño Patrón Funcionalidad Session Facade Avoids inefficient client access of Entity Beans and inadvertent exposure of sensitive business information by wrapping Entity Beans with a Session Bean. Value Object Avoids unnecessary network round-trips by creating one-off "transport" objects to group a set of related attributes needed by a client program. Page-by-Page Iterator Avoids sending unnecessary data to the client by breaking a large collection into page-sized "chunks" for display. Fast-Lane Reader Avoids unnecessary overhead for read-only data by accessing JDBC API's directly. This allows an application to retrieve only the attributes that need to be displayed, instead of finding all of the attributes by primary key when only a few attributes are required by the client. Typically, implementations of this pattern sacrifice data consistency for performance, since queries performed at the raw JDBC level do not "see" pending changes made to business information represented by Enterprise Beans. (Bean) Factory Allows runtime instantiation and configuration of an appropriate subclass of a given interface or superclass based on externally-configurable information. Entity Facade Provides a restricted view of data and behavior of one or more business entities. Value Messenger Keeps client value object attributes in sync with the middle-tier business entity information that they represent in a bidirectional fashion. Continuations Gives the developer the simplicity and productivity of a stateful programming model with the scalability of a stateless web solution
  • 40. Estratégico para Oracle
  • 41. Estratégico para
  • 42. Estrategia de producto
  • 43. Estrategia de producto
  • 44. Para todo tipo de desarrollos
  • 45. Desarrollo de aplicaciones Web de FrontOffice
  • 46. Desarrollo de aplicaciones Web de FrontOffice
  • 47. Desarrollo de aplicaciones Web de FrontOffice Demo ENomina
  • 48. Desarrollo de aplicaciones Web de FrontOffice Demo ENomina
  • 49. Desarrollo de aplicaciones Web de FrontOffice Demo Enomina http://www.bbr.cat/presentaciones/videos/EnominaAdf/EnominaAdf.html
  • 50. Desarrollo de aplicaciones de BackOffice
  • 51. Desarrollo de aplicaciones de BackOffice Demo Outis
  • 52. Desarrollo de aplicaciones de BackOffice Demo Outis
  • 53. Desarrollo de aplicaciones de BackOffice
  • 54. Desarrollo de aplicaciones de BackOffice DEMO: http://www.bbr.cat/presentaciones/videos/Flash_GSGVIA_DEMO/Flash_GSGVIA_DEMO.html
  • 55. Desarrollo de aplicaciones de BackOffice
  • 56. Desarrollo de aplicaciones de BackOffice
  • 57. Desarrollo de aplicaciones Mixtas ADF & Forms Demo Forms y ADF
  • 58. Desarrollo de aplicaciones SOA Las tareas son ejecutadas y gestionadas desde el “WorkList Application”
  • 59. Para todo tipo de desarrolladores
  • 60. Escoge tu estilo de desarrollo
  • 61. Desarrollo JSF Visual
  • 62. JSF y JDeveloper 10.1.3
    • Edición Visual de JSF
      • Edición Visual de JSF UI Component
      • Proporciona generación del código de respaldo (doble-click)
      • Mobile WYSIWYG
  • 63. JSF y JDeveloper 10.1.3
    • Consola de Edición de Faces Config
      • Consola para Edición productiva de faces-config.xml
  • 64. JSF y JDeveloper 10.1.3
    • JSF Page Flow
      • Edición Visual del modelo de navegación de Faces
  • 65. ADF Faces Components Examples
  • 66. Multicanal
  • 67. Desarrollo Multicanal
  • 68. Desarrollo Multicanal
  • 69. Desarrollo Multicanal
  • 70. Desarrollo de aplicaciones Java – ADF para el IPhone Demo: http://www.oracle.com/technology/pub/articles/huang-iphone.html
  • 71. Fácilmente portletizable
  • 72. La interfaz de usuario tiende al Mashup de aplicaciones
  • 73. La interfaz de usuario tiende al Mashup de aplicaciones
    • Next Generation:
      • http://download.oracle.com/otndocs/tech/webcenter/files/owcs_11_oow06_viewlet.html
    • Matrix Social NetWork:
      • http://download.oracle.com/otndocs/tech/webcenter/files/owcs_matrix_demo_viewlet_swf.html
  • 74. Portlets
    • Portlets: componentes Web reusables que permiten ser personalizados y configurados
    • Tecnologías Portlet :
      • Portlets Estándares (JSR 168)
      • Oracle PDK-Java portlets
      • PL/SQL portlets (Portal 10g – portlets locales)
      • Portlet Bridge Specifications for JSF (JSR-301) http://www.jcp.org/en/jsr/detail?id=301
      • WSRP (JSR-286)
    http://download.oracle.com/otndocs/tech/webcenter/files/owc_r11_portlet_bridge_demo.html Demo portlet Bridge
  • 75. Out-of-the-box Portlets
    • OmniPortlet
    Web Clipping Rich Text Portlet
  • 76. Tecnologías Portlet : JSR 168/WSRP – PDK-Java Browser Consumer (Portal 10g, ADF Application) JSR 168 Portlet PDK-Java Portlet SOAP WSRP
  • 77. Construyendo JSR-168/Oracle PDK-Java Portlet
    • Portlet Wizard disponible desde New Gallery
    • Usa el Wizard para crear el esqueleto del portlet
    • Añade la lógica del portlet
  • 78. Desplegando y Consumiendo Portlets
    • Arranca el contenedor OC4J
    • Crea una conexión al contenedor OC4J
    • Despliega el portlet
    • Registra el Provedor
    • Arrastra y suelta el portlet en tu página JSF
    1 2 3 4 Contenedor OC4J JDeveloper 5
  • 79. Contexto de Parámetros 10001 Parámetro de Formulario: WSRP 2.0 portlet OmniPortlet: PDK-Java portlet
  • 80. Soporte a WebServices y SOA
  • 81. ADF BC – WS Controller Faces ADF Metadata Services View ADF Faces JSF ADF Model ADF Data Control ADF BC Services Data Access Business Service Persistence Layer ADF BC View ADF BC Entity ADF Bindings Web Service
    • Entity y ViewObjects basados en Web Service
  • 82. AppModule WS Controller Faces ADF Metadata Services View ADF Faces JSF ADF Model ADF Data Control Web Services Data Access Business Service Persistence Layer ADF BC View ADF BC Entity ADF Bindings
  • 83. Es el framework que Oracle utiliza para el desarrollo de sus aplicaciones
  • 84. Fusion Applications - HCM
  • 85. Fusion Applications - CRM
  • 86. Fusion Applications - Projects
  • 87. ADF Faces RC 11g – Data Visualization
  • 88. Fusion Applications – Data Visualization Graph
  • 89. Fusion Applications – Data Visualization Gauge
  • 90. Fusion Applications – Data Visualization Geographic Map
  • 91. Fusion Applications – Data Visualization Pivot Table
  • 92. Fusion Applications – Data Visualization Gantt Chart
  • 93. Fusion Applications – Data Visualization Vista Jerárquica
  • 94. Conclusiones
  • 95. Conclusiones
      • ADF es el framework de desarrollo estratégico para Oracle.
      • Framework más productivo para desarrollo web del mercado
      • Construido sobre estándares
      • Pensado para todo tipo de desarrollos
      • Pensado para todo tipo de desarrolladores
      • Existen multitud de casos de éxito
  • 96. Links de Interés
    • Blog de BBR
      • www.bbr.cat/index.php?option=com_myblog&Itemid=53
    • Comunidad hispana de desarrolladores ADF
      • www.jdeveloperla.com
    • Página oficial de Oracle de ADF
      • www.oracle.com/technology/products/adf/index.htmlhttp://www.oracle.com/technology/products/adf/index.html
    • Página oficial de Oracle de ADF Faces RC
      • www.oracle.com/technology/products/adf/adffaces/index.html
  • 97. [email_address] C/ Aragó, 182, 4t, 08011 Barcelona Telèfon 934 731 393 Av. Ramon Folch, 13, 3r, 17001 Girona Telèfon 972 413 638 www.bbr.cat