Simplifying Java Application Development
I attended the Ease-of-Development session delivered by Bill Shanon and Graham Hamilton in the TSS Symposium. It was interesting to note that the goal of J2EE 1.5 is simplification of development and to attract more developers to the Java/J2EE platform. Sun understands the competition and trying to address the concern that Java/J2EE is too complex to develop applications.
Following are the key weaknesses for Java Platform according to the speakers:
- Developer productivity
- Perception is J2EE is hard to use (Indeed this the reality !)
- Biggest issue is low-end productivity
The primary goal seems to make Java easier is to use annotations (JSR-175) to introduce attribute oriented programming.
The new annotation processing tool apt will be available with J2SE 1.5 (Beta 2). The apt will process the annotations and compile the generated java code to build classes.
Also they looked at support of Generics, iterating over collections, support of enumerated types, autoboxing primitive types.
J2EE 1.5 Ease of Development
Again the emphasis was on use of program annotations. Here are few other plans which looks promising:
- Rely on defaults
- Drastically reduce deployment descriptors
- Simplify some boilerpate code like life cycle methods
- Add utility classes
Simplifying EJB Development
- Use annotations
- No need to create interfaces
- No need of deployment descriptors
- Annotations create the interfaces and deployment descriptors with defaults
- No ejb lifecycle methods
Ease of Development for WEB SERVICES
Again use annotations to simplify development of web service applications
- Build on JSR 181 - annotations for web services
- Integrated with JAXB 2.0
- Use an universal conext i.e. one place where you can lookup things type and name
- Works same way in all containers
Simplify building Web Applications
- Ease of use with Java Server Faces