Download presentation
Presentation is loading. Please wait.
1
Johannes Brodwall Exilesoft
Java Apocalypse now! Johannes Brodwall Exilesoft
2
Nå jobber han for IT bransjen i Sri Lanka.
Etter 15 års erfaring fra IT bransjen i Norge, innså Johannes Brodwall: “Det er immari kaldt her!” Nå jobber han for IT bransjen i Sri Lanka. Men er fortsatt mest i kalde Norge.
3
I love the smell of XML in the morning. It smells like… victory.
4
Prelude:
5
Where are the Java projects going?
6
Maybe it is just me… … but customers: “Java = meh” … and I surprised myself by agreeing
7
Java is my favorite language, but… … Oracle is ruining it … JBoss is ruining it … SpringSource is ruining it … you guys are ruining it
8
«Don’t reinvent the wheel» - «Everywhere», 20XX by Everyone
10
Part I:
11
The nightmare
12
XML APIs gone wild
13
A simple XML file
14
Parsing with DOM
16
Whops – right this time!
18
But the file may vary
19
And the Java gets… worse
20
And worse
21
Making it worse
22
I know! Let’s use JAXB!
24
Just need to deal with this null pointer…
26
And this other one…
29
But wait – they didn’t follow the XSD!
30
(Of course they didn’t)
32
And we need to map it to a domain object
34
There must be a tool for that!
36
Running away
37
The Java EE software development process
38
Exception Google Stack overflow Tweak Deploy Waaaaait Poke
39
Those that get it JavaScript Ruby Python Clojure? Those that don’t
Scala JSF Groovy Clojure? “Those who cannot learn from history are doomed to repeat it.” - George Santayana
40
Are you using technology to solve your problems?
41
Or so that you don’t have to face your problems?
42
… yet
43
Part II:
44
The dream
45
Java’s greatest gift The IDE
49
“I can see how TDD works for toy examples…”
50
“… but how can we use it when we have all these really complicated technologies???”
51
I think I see your problem right here...)
(Hint: “all these complicated technologies” I think I see your problem right here...)
52
How to make real problems more like toy problems?
53
(Tip: Not by getting more toys)
54
He who gives up compilation time for refactoring menu options deserves neither - Benjamin Franklin
55
Less magic!
56
Parsing a file
58
Oh, that could be null!
60
Mapping to a domain object
62
A SOAP service is just a retarded REST service
64
Part III:
65
The road to a better place
66
A better framework
67
No calculator until…
68
Don’t use a framework you couldn’t have written yourself
69
“But what about transactions?”
70
“We need an annotation for that!”
72
Have you ever misconfigured @Transaction?
73
Three lines of magic!
76
Three lines of magic! plain Java
77
You can replace AOP with three lines of plain Java
78
A better application server
79
You probably just need to listen to HTTP requests
83
Better templates
87
Eaxy is not meant for public consumption
88
Just to show that Java EE solves wrong problem
93
Just to show that Java EE solves wrong problem
96
Epilogue:
97
I don’t really mean it, do I?
98
Frameworks solve 80% of the job…
99
… and makes the rest 10 times as hard
100
“Why did Hibernate suddenly slow down?”
101
“How do I make JBoss behave the way I want?”
102
“How do I implement a custom SOAP header with JAX-WS?”
103
“Why did my dependencies not inject?”
104
“How do I do anything with Spring”
105
“Java EE is a path to the dark side. Java EE leads to anger
“Java EE is a path to the dark side. Java EE leads to anger. Anger leads to hate. Hate leads to … suffering” - Yoda
106
Thank you
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.