J2SE

Tenzing has years of expertise in designing and developing custom J2SE based software. In an effort to present our understanding and expertise in the Healthcare development space we have prepared these articles.

The New Exciting J2SE 5.0
Java 2 Platform Standard Edition (J2SE) 5.0 is the latest enhancement to the Java standard platform.

Some of the Highlights of J2SE include

  • Simplified Development
  • Scalability and Performance
  • Monitoring and Manageability
  • Desktop Client
Simplified Development

Some of the enhancements include generic types, metadata, autoboxing, an enhanced for loop, enumerated types, static import, C style formatted input/output, variable arguments, concurrency utilities, and simpler RMI interface generation.

Further includes enhanced for loop, enumerated types, static import and autoboxing. Also specifies the new metadata functionality, and generic types.

These enhancements will quickly help developers and architects to quickly design efficient reusable frameworks.

Metadata

Metadata is always been an interesting evolution for Java developers, those of who remember the days of having to go into a manifest text file be sure about the indents and the space then write huge beaninfo classes to expose component properties and events. Later down the line Java libraries started adopting xml to package the metadata for the objects which was a welcome improvement.

With J2SE 5.0 Java developers have a new blend to managing metadata and this through tagging attributes and classes with declarative instructions to the environments like a development tool or an application server with information such as the "Connection String" for the component or the "Transaction type" for the specific function.

Generic Types

Generic types for has been a common feature in unmanaged programming languages such as C++ more popularly known as templates which is now supported by java. Collections API support a lot of the generic types for functionalities like Linked Lists, Array Lists and Hash Maps that can be used by more than one Java type.

Autoboxing and Auto-Unboxing of Primitive Types

The autoboxing and auto-unboxing of Java primitives enables primitive types to be converted to object type and other way round and also produces code that is more concise and easier to follow than the primitive approach of the wrapper classes

Enhanced for Loop

The "for loop" in java5.0 (J2SE) enables all iterative objects to be traversed sequentially. Hence relieving the developer of having to all the nasty type conversations back and forth. The compile in turn generates the formal code.

Enumerated Types

As former C++ programmer you would question the rational of having to declare constants as final static int, Java5.0 (J2SE)has finally prevailed and supports the enum type expect that you need to watch for usage of enum identifier in your existing code migrated to Java 5.0.

Static Import

The static import feature of the J2SE, implemented as "import static", enables you to refer to static constants from a class without needing to inherit from it. This simplifies coding and reduces coding time.

Formatted Output

Developers now have the option of using printf-type functionality to generate formatted output. This feature of J2SE will help migrate legacy C applications, as the same text layout can be preserved with little or no change and also simplifies printing different formats from the convention stream libraries which are now encapsulated.

Formatted Input

The scanner API provides basic input functionality for reading data from the system console or any data stream.

Varargs

The varargs functionality of J2SE allows multiple arguments to be passed as parameters to methods. It requires the simple ... notation for the method that accepts the argument list and is used to implement the flexible number of arguments required for printf.

rmic -- The RMI Compiler

You no longer need to use rmic, the rmi compiler tool, to generate most remote interface stubs. The introduction of dynamic proxies J2SE means that the information normally provided by the stubs can be discovered at runtime.

Scalability and Performance

Some of the key features of Java5.0 to improve performance and scalability include

  • The improvement of the startup memory footprint.
  • Improvement in the way your code can handle multiple threads through the Executor library.
  • The concept of pre-packing and optimization of Hotspot JVM has improved performance.
  • Also the ability of sharing read only class data between JVMs reduce significant resource consumption.
Monitoring and Manageability

With J2SE 5.0 system administrators are blessed with the Monitoring and Manageability framework a key component of RAS (Reliability, Availability, Serviceability) in the Java platform which can let you quickly identify the bottlenecks in your applications and hence fix them quickly.

The J2SE 5.0 release provides comprehensive monitoring and management support: instrumentation to observe the Java virtual machine, Java Management Extensions (JMX) framework, and remote access protocols.

Desktop Client

Java desktop applications have always been a challenge with AWT not being up to expectations and swing being very heavy and slow. Most enterprise applications wanting to provide desktop have found SWT to be more dependable.

J2SE 5.0 how brought in some significant improvement to the performance of swing applications by optimizing startup time memory footprint. There is also the new framework called Ocean that you can explore for better look and feel.

With years of experience in successfully providing Custom Java based Software Development solutions for clients across the globe, we at Tenzing have honed our processes and skills to cater to your specific business needs. Contact us for more information on J2SE 5.0 solutions.

Wave