I'm very curious about what the future of java holds, and I've been able to find some info on Java 7, but I want to know what all that info really means. Like what will a modular JDK do for programs?

As far as what changes you'll see in your day-to-day work, my guess is that the major impact will be stuff like JSR 203 which overhauls the file system API. If JSR 310 is included, then it would also have a major impact on how you interact with any aspect of the date and time APIs. Many of the other JSRs will only impact you if you happen to already do something in that particular area (JMX - JSR 255, concurrency -JSR 166, etc).
I think it's unknown at this point how much JSR 294 and Jigsaw will impact us day to day. It's possible that it will be a new and important way to define modules that will impact the way we bundle libraries, define dependencies, and deploy our apps. Or it may just be used in the JDK and ignored elsewhere. Only time will tell.
There will be a handful of language changes that come out of Project Coin but they are mostly going to be small useful but not revolutionary changes that help remove some boilerplate.
I think the biggest thing most people will notice may be performance. As usual, each JDK brings a whole new set of performance optimizations. We've already seen some very encouraging results in String performancearray performance, and a new concurrent garbage collector (G1). I suspect many people will find that their existing code will work and run noticeably faster than it did in the past

Differences between Java5 and Java6
  
JAVA-5
JAVA-6
Also known as  Tiger
Also known as  Mustang
<! Generics—Provides compile-time type safety for collections and eliminates the need for casting every time you get an object out of Collections.
<! Enhanced For loop—Eliminates error-proneness of iterators.
<!-Autoboxing/unboxing—Eliminates need of manual conversion between primitive types (such as double) and wrapper types (such as Double).
<! Typesafe enumsProvides all benefits of the Typesafe enum pattern.
<! Static import—Eliminates the need for using class names prior to using the static member variables of other classes. This will make the code a bit neater.
<! Metadata—Allows  programmers to avoid writing boiler plate code and gives the opportunity for declarative programming.
JSR (14,175)
<! Annotation Processing API (JSR 269)
<! Common Annotations (JSR 250)
<! Java API for XML Based Web Services - 2.0 (JSR 224)
     JAXB 2.0 (JSR 222)
<!-Web Services Metadata (JSR 181)
<!-Streaming API for XML (JSR 173)
<!-XML Digital Signature (JSR 105)
<!-Java Class File Specification Update (JSR 202)
<!-Java Compiler API (JSR 199)
<!-JDBC 4.0 (JSR 221)
<!-Scripting in the Java Platform (JSR 223)
< 



Post a Comment

 
Top