Building Next-Generation Enterprise Applications in Javaa.k.a. Duke’s Duct Tape AdventuresBert Ertman (@BertErtman)Fellow ...
DISCLAIMER
The following is intended to outline ourgeneral product direction. It is intended forinformation purposes only, and may no...
Introduction  Functional vs.   What’s an enterprise   application anyway?  Non-functional                          4
Non-functional system capabilities• Availability• Capacity• Extensibility• Flexibility• Manageability• Performance• Reliab...
How to accomplish that?• Remoting              • Fail-over• Dependency            • Integration testing  management       ...
Architecture                                Business rules/validations                                     Domain objects ...
Let’s get started...     So, what’s the typical    example of an enterprise         application?                          ...
That is probably...              WRONG!                       9
Remember this?                 10
Our toolbox• Application Server - Glassfish v3.1 / JBoss AS 7• Database - MySQL• Build tool - Maven (ehhh...well)• Java ID...
But wait...     PET STORES SUCK!       Hmm...let’s think of a better analogy...                                           ...
#qotd      “Java EE 6 is the         DUCT TAPE    of modern enterprise        development”                           13
Let’s visualize...                     Java EE 6                          Java EE 6                                      14
Yep, it’s cool...                    15
Run it by Google                   16
Hell yeah :-)                17
Enterprise - revisited!                          18
DEMO        Code can be downloaded from:https://github.com/paulbakker/ducttape
Where is the pattern love?                             20
Heavy-weight vs. Light-weight                                21
EJB: Enterprise Java BabesEJB: Enterprise Java Babes                      #ftw
Downsides of Java EE?• KISS, DRY, and YAGNI –Instead of only talking about them you now have to  prove them in practice• M...
So...        With Java EE 6 in winter,          who needs Spring?           it sucks anyway...                            ...
More info• Bert Ertman• Twitter: @BertErtman• E-mail: bert.ertman@luminis.eu• Paul Bakker• Twitter: @pbakker• E-mail: paul...
The End          Happy coding!                          26
Upcoming SlideShare
Loading in …5
×

Devoxx - Building Next-Generation Enterprise Applications in Java

5,502 views

Published on

Published in: Technology
1 Comment
2 Likes
Statistics
Notes
No Downloads
Views
Total views
5,502
On SlideShare
0
From Embeds
0
Number of Embeds
2,333
Actions
Shares
0
Downloads
58
Comments
1
Likes
2
Embeds 0
No embeds

No notes for slide

Devoxx - Building Next-Generation Enterprise Applications in Java

  1. 1. Building Next-Generation Enterprise Applications in Javaa.k.a. Duke’s Duct Tape AdventuresBert Ertman (@BertErtman)Fellow at LuminisPaul Bakker (@pbakker)Sr. developer at Luminis Technologies
  2. 2. DISCLAIMER
  3. 3. The following is intended to outline ourgeneral product direction. It is intended forinformation purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
  4. 4. Introduction Functional vs. What’s an enterprise application anyway? Non-functional 4
  5. 5. Non-functional system capabilities• Availability• Capacity• Extensibility• Flexibility• Manageability• Performance• Reliability• Scalability• Security• Testability 5
  6. 6. How to accomplish that?• Remoting • Fail-over• Dependency • Integration testing management • Asynchronous• Caching invocations• Web Services • Transactions• Messaging (JMS) • Security• Scheduling / timers • Singletons• Load-balancing • ... 6
  7. 7. Architecture Business rules/validations Domain objects UI rendering Data storage Transactions Client-side validation ConsistencyPresentation Navigation Business Data Data Logic Logic Logic Access Screen/workflow Object/relational mapping management Invoking Enterprise Information Systems 7
  8. 8. Let’s get started... So, what’s the typical example of an enterprise application? 8
  9. 9. That is probably... WRONG! 9
  10. 10. Remember this? 10
  11. 11. Our toolbox• Application Server - Glassfish v3.1 / JBoss AS 7• Database - MySQL• Build tool - Maven (ehhh...well)• Java IDE - ... 11
  12. 12. But wait... PET STORES SUCK! Hmm...let’s think of a better analogy... 12
  13. 13. #qotd “Java EE 6 is the DUCT TAPE of modern enterprise development” 13
  14. 14. Let’s visualize... Java EE 6 Java EE 6 14
  15. 15. Yep, it’s cool... 15
  16. 16. Run it by Google 16
  17. 17. Hell yeah :-) 17
  18. 18. Enterprise - revisited! 18
  19. 19. DEMO Code can be downloaded from:https://github.com/paulbakker/ducttape
  20. 20. Where is the pattern love? 20
  21. 21. Heavy-weight vs. Light-weight 21
  22. 22. EJB: Enterprise Java BabesEJB: Enterprise Java Babes #ftw
  23. 23. Downsides of Java EE?• KISS, DRY, and YAGNI –Instead of only talking about them you now have to prove them in practice• More bugs per # LOC ;-)• Small deployments –OH: “So they spent 3 months building this app and it’s ONLY a 100k WAR file?” 23
  24. 24. So... With Java EE 6 in winter, who needs Spring? it sucks anyway... 24
  25. 25. More info• Bert Ertman• Twitter: @BertErtman• E-mail: bert.ertman@luminis.eu• Paul Bakker• Twitter: @pbakker• E-mail: paul.bakker@luminis.eu 25
  26. 26. The End Happy coding! 26

×