Marketing and International Standards

Jan 14, 2009


Java is a well spread platform, covering most operating systems and environments from mobile phones to desktop computing. Sun Microsystem, as well as other major companies like Apple and IBM have implemented several JVM, or Java Virtual Machine implementations. In the mobile area, as well as gaming consoles, Java has a significant presence, being integrated in products branded by Sony or Nokia. Since 2006, there is also the possibility of Java becoming a free software customization, as a result of Sun's decision to open source the product, and also granted by the GNU Classpath project, an IBM initiative.

Another cross-platform standard is the CLR, or Common Language Runtime, which is targeted at Windows applications, while it has other possibilities for different platform implementations, such as the Mono Project. Although .NET has a pervasive influence in the mobile phone area, due to mobile products that run the Microsoft mobile editions of Windows, it is only in 2010 that Microsoft can expect to claim a more significant market share with the new release of Windows Mobile 7 (the mobile counterpart of the latest  OS Windows 7). But when it comes to open source projects popularity the first place goes to the Java development language, for which the number of contributors as well as lines committed each month is higher than other languages, including C#.

International Standards

Both .NET executable environment and format have an approved standard by the ECMA International and ISO/IEC authorities, namely the CLI or Common Language Infrastructure and the CIL or Common Intermediate Language. These standards have left out the majority of the Base Class Library as well as most new libraries (Windows Forms, ASP.NET and ADO.NET).

Java, on the other hand, remains to be standardized by ECMA and other authorities. The mother-company, Sun Microsystems owns unlimited and exclusive legal rights for modifications and licensing of Java trademarks. The company also participates in the JCP, the Java Community Process, an opportunity for anyone to propose changes to any type of Java technology, from language to APIs, through a series of consultations, forums and expert groups. Through the JCP, anyone can propose a new Platform Edition Specification or suggest changes. These suggestions and proposals are analyzed and voted by all members of the JCP community, but actual and definite standard changes in the JavaSE, JavaEE and JavaME can finally be denied or approved only by Sun Microsystems.

Next articles in this series:

1. Features and Performance
2. Marketing and International Standards
3. Case Analysis on .NET
4. Real Life Examples
5. .NET Future