APEX or ADF? From Requirements to Tool Choice Sten Vesterli [email protected] Oracle OpenWorld October 2015
Safe Harbor
About Me• Sten Vesterli• Developer, consultant, trainer• 20 years of Oracle experience• Oracle ACE Director• Oracle UX Advocate• Day job: ADF Developer• Side gig: APEX Developer
Tiger
Bruce’s daughter’s cat
Scott
Bruce Scott(Oracle employee no.
4)
Who is Scott/Tiger?
Also an Oracle-focused consultancy based in Denmark…
Scott/Tiger customers
Use a Framework• Getting data from fields on the
screen to the database and back• Oracle offers three frameworks:
– Forms– APEX– ADF
Use a Framework• Getting data from fields on the
screen to the database and back• Oracle offers four frameworks:
– Forms– APEX– ADF– JET (doesn’t officially exist yet)
Yes, APEX uses PL/SQL • Developed in browser• PL/SQL
– and HTML, JavaScript, CSS• Runs in database
– No extra infrastructure– Only scales up
ADF is Java• Developed in JDeveloper• Java (JSF)
– and EL, Groovy, CSS• Programming by exception• Runs in application server
– Extra infrastructure– Scales both out and up
But with APEX, you could!• Focus on development speed• Set up one hosted instance inside the
firewall• Self-service provisioning
Oracle Internal APEX• 16,601 applications• Data for one week:
– 2,965,272 page views– 2,275 different active applications– 22,892 distinct users
ADF is Strategic• Focus on large development teams
– Modularity– Source Control– Team Productivity Center
• Oracle is building all new commercial applications in ADF
• 20,000 man years invested in Fusion Applications
Learning ADF• Forms developers
– Accept framework magic– Have to learn Java
• Java developers – Want to write code– Don’t like Oracle
Data-driven Applications• Design starts with the data• The user interface is derived from
the data structures• Wizards enable and encourage this
User Interface Driven • Design starts with workflow and
tasks• Build matching UI• Build matching business objects and
services• Base on well-designed relational
database
User Interface
Data
Data-driven
User Interface
Data
UI-driven
Technology Half-Life• Database: 10 years• Business Logic: 4 years
– Both PL/SQL and Java– Integrations are business logic
• User Interface: 18 months
Technology Half-Life
ADF Killer Feature: Modular Task Flows
• Visual page flow designer• Packaged into ADF Libraries• Can call other task flows• Allows you to build a big application
in a modular fashion
ADF Killer Feature: Components
ADF Killer Feature: Customization
• Changing the application the user sees– without changing the base application
• Customizations are stored in XML files• Customizations are upgrade-safe
– you can upgrade the base application, customizations still applied
• Multiple customization levels possible
APEX Killer Feature: Eats Excel• You can upload an Excel spreadsheet
and create matching table• Then create default application• Business user can do this• Application developer can fine-tune
APEX Killer Feature: Speed• Setup time: Zero
– You work in a browser• Deployment time: Zero
– You can work on a running server– Make the application available when
ready
ConclusionRequirement RecommendationIt has to run tomorrow APEXAdvanced UI requirements ADFCustomization required ADFLarge application ADF
My opinion on tools www.oratoolwatch.comMy blog: www.vesterli.comEmail: [email protected]: stenvesterli and oratoolwatch