Java Development, Recruitment and Consultancy

Why choose Java?

Java without the Palaver

There are many different technologies to choose from and there is rarely a clear-cut answer as to which is best. The flexibility and scope of Java means it is always a contender whatever the project but that does not mean it is necessarily always the best solution. There are many factors to be considered, some of which may have little to do with the merits of Java. However, the following attempts to outline the benefits:

  • Open-source frameworks The many open-source frameworks for developing J2SE and J2EE applications lend a richness and choice that no other languange enjoys. The dynamism and innovation of the community of developers has led to frameworks such as Spring and Hibernate.
  • Open standards - Java is based on open standards
  • Robustness - The design and maturity of Java make it more robust than most other langauges
  • Influence - The future direction of Java can be directly influenced through the Java Community Process (described below)
  • Portability - While portability often is not an immediate issue, in the long term it is good to know that you can move to a different operating system should the occasion arise.
  • Open Source Resources - There is a wealth of free high-quality libraries and frameworks available for Java.

The Java Community Process

The Java Community Process was set up by Sun to provide individuals and companies with a forum through which they could influence the development of the Java language. New features may be proposed by submitting a JSR (Java Specification Request). The fate of a JSR is decided by one of the Executive Committees. These each consist of 10 members, five from Sun and five selected by the JCP membership. JSRs that pass muster will then be scheduled for inclusion into later releases of the language.

The JCP ensures that the Java language is driven by the long-term industry needs of its users and not the short-term business needs of Sun. Microsoft, like any successful company, has to listen to its customers. However, there is no equivalent mechanism for influencing the direction of its product development.

Standards

J2EE (Enterprise Java) is not a language but a standard. Similarly Microsoft's .NET is partially based on the CLI standard.

Common Language Infrastructure (CLI)

The CLI is an ECMA ECMA stands for The European Computer Manufacturers Association
clicking here will open the EMCA site in a new window or tab
(ECMA-335) standard that defines the basis for creating execution and development environments in which languages and libraries work together seamlessly. It specifies a virtual execution system that insulates CLI-compliant programs from the underlying operating system. Where virtual execution systems are developed for different operating systems, programs written with CLI-compliant languages can be run in these different systems without recompiling or rewriting.

This sounds impressive but even though Microsoft submitted this standard, the company has only partially implemented it. However, it highlights a difference between .Net and J2EE. The .Net framework is language independent and supports several languages, even Java in the form of J++. J2EE is just for Java. With the rise of web services the need for an all encompassing standard such as CLI is debatable and is reflected in the fact there has been few implementations of it in contrast to the J2EE standard.

further reading

J2EE vs .NetAn excellent and unbaised analysis from The Server Side on the relative merits of J2EE and Microsoft's .NET
Microsoft .NET vs. J2EE: How Do They Stack Up?A good comparison
Comparing C++ and JavaA technical article on the differences
Listed to the right are some links to articles on comparing Java with and to other languages. There are many sites that discuss this subject, most of which seem to have been written with extreme bias. We have selected just a few that do not wave a flag but attempt to present a rational case one way or the other. We cannot be held responsible for their contents but hope they are of some help.