Date post: | 29-Nov-2014 |
Category: |
Technology |
Upload: | steve-dalton |
View: | 2,989 times |
Download: | 2 times |
Java….rumours of my demise have been greatly exaggerated
Steve Dalton - @spidierefactor.com.au - codingbynumbers.com
Java =
Java the Language+
Java Virtual Machine (JVM)+
Java Community Process (JCP)
Java is dead, long live Java
JVM.... NO!Java the language.... Maybe
JCP.... Probably
Yes, I know I'm starting with a conclusion here... move along
JVM
Linux JVM Options
For more see: http://en.wikipedia.org/wiki/List_of_Java_virtual_machines
something to watch....
Dalvik
Java the Language
First a bit of history...
Where did 20 years go?
1990Stealth Project Begins
(Patrick Naughton)
1991Renamed to Green Project
(+ James Gosling & Mike Sheridan)
1992
Green OS & Oak Language Demoed
1993Green FirstPerson project→
(set-top boxes)
1994
1995
Oak renamed to Java
1996
JDK 1.0 Released
1997JDK 1.1
Inner Classes, Java Beans, JDBC, RMI, Reflection
1998J2SE 1.2
Swing, JVM gets a JIT, CollectionsJCP established
1998
JDK 1.1 downloads pass 2 million
1999Java Platform 2 source released
J2EE 1.2J2ME
2000Apple support Java
J2SE 1.3Hotspot JVM, JavaSound, JNDI, JPDA
2001
J2EE 1.3
2002J2SE 1.4
Regex, better exceptions, IPV6, logging, JAXP, Security, Web Start, Prefs
2003
J2EE 1.4
2004J2SE 5
Generics, Annotations, Autoboxing, Enums, Varargs, ForEach, Static Imports, Concurrency,
2005
2006Java SE 6
Scripting Language, PERFORMANCE + Lots of JVM improvements
Java SE7 Project beginsJEE 5
OpenJDK announced
2007JavaFX announced
Compiler and JavaFX Script Open Sourced
2008
JavaFX Platform 1.0
2009JavaFX 1.1JavaFX 1.2
JEE 6Oracle/Sun Merger
2010Revised Java roadmap announcedLot's of Java 7 features dropped
JavaFX Script droppedQuickly forked into Visage
Oracle sue Google over Dalvik/AndroidApple deprecate Java in OSX
bad press...then donate it to OpenJDK!IBM move to OpenJDK
JCP Madness!
2011?Java 7
Invoke Dynamic, Project Coin, Concurrency & Collections updates, NIO 2
Java FX 2
2012?Java 8
Invoke Dynamic, Project Coin, Concurrency & Collections updates, NIO 2
???
Steve's confidence level in Java the language low....
Java lang innovation just not happening
●Generics caused a lot of confusion●Closures in Java 7 fiasco●Meanwhile
●dotnet moves on●Rise of Dynamic languages●Functional Programming back with a
vengeance
???
Why do I develop on this platform?
However, community finds a way...
Many Java Language Alternatives on JVM
CanonicalPorted
● Super Java● Dynamically Typed● Clear migration path● Well established● Closures, DSLs & Builders● Groovy++ makes it static
● Statically Typed● Functional or Imperative (you chose)● Concurrency built in (actor model)● Twitter and Foursquare big users● Lift Framework for web apps
● Dynamic● Lisp dialect● Functional● REPL for simple
interactive programming
● Concurrency baked in● Compojure, Ring,
Leiningen
Clojure
Ports
…and many more● jaskell● jsqueak● mirah● noop● jacl● frink
Or even make your own Domain Specific Language!
Java the Community
IDEs
+ vim, emacs, gedit, geany and every other editor under the sun
JOSS
Web Frameworks
JOSS in the “Enterprise”
Java Community Process (JCP)
Java Specification Requests (JSR) – over 300
JSR = Ref Implementation (with Source) + Technology Compatibility Kit (TCK)
JCP Executive Committee Votes
Sounds ok – what's the problem?
So... where are we heading?
JVM is a still rock solid platformToolset is still pretty awesome
Java community still very strongDoubts about language – COBOL of our time?
WTF are Oracle doing???
Steve's PredictionsJCP is dead
Java 7/8 will happen but will anyone care?Groovy will replace Java for a lot of tasks
Scala will do well but not for everyoneClojure...niche, but could be HUGE
Might see some forksBut all depends on dreaded Software Patents.
Google GO for Android?
http://codingbynumbers.com
also on iTunes (sorry RMS!)
Attribution:http://www.flickr.com/photos/minifig/3186925111/