OpenJDK


OpenJDK
OpenJDK6
Desarrollador
Sun Microsystems
http://openjdk.java.net/
Información general
Última versión estable OpenJDK6 Build b23
6 de junio de 2011; hace 3 meses (2011-06-06)
Género Biblioteca
Programado en C++ y Java
Sistema operativo Multiplataforma
Licencia GPL+linking exception
En español ?
OpenJDK7
Desarrollador
Sun Microsystems
http://openjdk.java.net/
Información general
Última versión en pruebas OpenJDK7 Build b147
27 de junio de 2011; hace 3 meses (2011-06-27)
Género Biblioteca
Programado en C++ y Java
Sistema operativo Multiplataforma
Licencia GPL+linking exception
En español ?

OpenJDK es la versión libre de la plataforma de desarrollo Java.

Contenido

Historia

En 1995, Sun Microsystems lanza la versión 1.0 del JDK de Java bajo el lema de "Escribe una vez, ejecuta en todas partes", iniciando un capítulo importante en la industria de desarrollo de software. En 1998 la versión 1.1 tuvo dos millones de descargas.

Aunque ya era posible crear software libre con Java, ya que es un lenguaje de programación con una especificación abierta, para su ejecución depende de la máquina virtual Java, que era software no libre. Richard Stallman llamó a esta situación como "la trampa de Java",[1] pues aunque el programa desarrollado sea software libre, este puede encontrar dificultades para distribuirse en entornos de software libre. Esto provocó que en todas las distribuciones GNU/Linux la máquina virtual java no esté incluida, pues el único mecanismo legal era descargarla de la propia web de Sun.

Se crearon diversos proyectos para implementar una máquina virtual Java con licencia libre, entre los que destacan Kaffe[2] y Harmony[3] así como GCJ[4] que permiten compilar el código fuente Java en bytecodes y en código nativo. Para el desarrollo de las librerías base se creó el proyecto GNU Classpath.[5]

Desde 1998, Sun crea un proceso de desarrollo abierto para la tecnología Java, a través del programa Java Community Process. El programa ha evolucionado desde entonces, permitiendo un desarrollo cada vez más abierto de la plataforma Java bajo la licencia JRL.[6] En 2006, la versión Java SE 6 se realizó con una gran participación de la comunidad. Sin embargo, Sun se mostraba indeciso en la licencia con la que sería liberada, aunque se consideraba utilizar la licencia Common Development and Distribution License (CDDL) utilizada por OpenSolaris.

En agosto del 2006, Sun modificó su licencia de forma que pudiera incluirse el binario de la máquina virtual Java en distribuciones GNU/Linux.

El 13 de noviembre del 2006,[7] después de 10 años de desarrollo, Sun anuncia el lanzamiento de las versiones Java SE 6 y SE 7 bajo licencia GPL versión 2.[8] [9] Al proyecto se le nombró OpenJDK e incluyó inicialmente la máquina virtual Java HotSpot, el compilador de Java javac y el sistema de ayuda JavaHelp 2.0. Anuncia también la liberación del resto de la plataforma a lo largo del primer semestre del 2007, con excepción de unos pocos componentes con problemas de licenciamiento ajenos a Sun.

Desarrollo del proyecto

El proyecto tiene su propia página web,[10] un portal para la comunidad de desarrollo,[11] blogs.[12] y cuenta con listas de correo.[13] Además tiene un canal IRC,[14] y un Wiki para promover ideas[15] y con una página para el reporte de errores.[16]

La herramienta que se utiliza para el desarrollo es NetBeans, que tiene una licencia Common Development and Distribution License (CDDL), y utiliza CVS como repositorio. El crecimiento del JDK y de NetBeans están íntimamente vinculados, pues comparten la misma comunidad de desarrollo. Para contribuir con el proyecto a través de parches, debe firmarse el convenio Sun Contributor Agreement (SCA). Los cambios en el lenguaje se controlan a través del Java Community Process.

Estructuras organizativas de decisión

La comunidad OpenJDK[17] incluye dos secciones, una pública, dónde se encuentra el proyecto OpenJDK entre otros, y una sección privada dónde solo se puede participar si se es miembro y se ha aceptado la licencia JRL.[18] Aunque los proyectos JDK6 y JDK7 se encuentran en la sección pública, mantienen una licencia JRL.

Es posible registrar un nuevo proyecto, que debe pasar por una etapa de incubación en el jdk-incubator[19] hasta que este lo suficientemente maduro.

Se pueden tomar dos roles en ésta comunidad:

  • Desarrollador, que utiliza la API y las herramientas para crear aplicaciones. No contribuye con código en el JDK.
  • Contribuidor, es aquel desarrollador que ha firmado la Sun Contributor Agreement[20] y tiene la habilidad de realizar aportaciones como parches o mejoras en el código fuente.

Desde 1998 el desarrollo de la plataforma Java de Sun se realiza mediante el programa denominado Java Community Process[21] (JCP) coordinado por la Process Management Office. Cuenta con cerca de 700 miembros, los cuales realizan propuestas a través de documentos formales llamados Java Specification Requests (JSR). Actualmente existen 926 JSR de las cuales 90 están en desarrollo para la nueva versión de la plataforma.

JCP incluye grupos de expertos que revisan los JSR que se incluyen en la lista oficial.

Existen dos comités ejecutivos (EC) para las ediciones de la plataforma Java, Standard/Enterprise y Micro Edition. Realizan las aprobaciones del proceso y de los JSR que se desarrollarán.

Radiografía

El análisis de acuerdo al modelo de estimación de costes COCOMO con el que se calcula un estimación del costo de producción del software bajo un modelo de Ingeniería de Software cerrado. Aplicando la herramienta SLOCCount:[22]

Estimación de costos javac
Concepto Valor
Total de líneas de código 90.812
Años de desarrollo 1,76
Esfuerzo persona-año 12,96
Costo estimado de desarrollo 3.073.916 dólares

Para tener un estimado de los costes se toma en consideración el salario de 56.286 dólares/año, que es el salario promedio de un programador en los Estados Unidos y luego se multiplica ese resultado por 2,40 que incluye cualquier gasto extra diferente de los programadores como pueden ser: luz, teléfono, papelería, etc.

Lenguajes de programación utilizados en javac
Lenguaje Líneas de código  %
Java 88,346 97,28%
sh 2,466 0,10%

Estas son las tablas correspondientes a HotSpot:

Estimación de costos HotSpot
Concepto Valor
Total de líneas de código 475.290
Años de desarrollo 3,40
Esfuerzo persona-año 129,37
Costo estimado de desarrollo 17.476.249 dólares
Lenguajes de programación utilizados en HotSpot
Lenguaje Líneas de código  %
cpp 376.211 79.15%
java 87.585 18.43%
ansic 8.614 1.81%
asm 1.724 0.36%
sh 1.156 0.24%

Véase también

Referencias

Enlaces externos


Wikimedia foundation. 2010.

Mira otros diccionarios:

  • OpenJDK — Тип Библиотека Разработчик Oracle (ранее Sun Mic …   Википедия

  • OpenJDK — Entwickler Sun Microsystems (Oracle) Aktuelle Version OpenJDK 7[1] (28. Juli 2011) Betriebssystem Linux, Solaris, Windows …   Deutsch Wikipedia

  • Openjdk — Développeur Sun Microsystems Dernière version …   Wikipédia en Français

  • OpenJDK — Développeur Oracle Dernière version …   Wikipédia en Français

  • OpenJDK — OpenJDK6 Developer(s) Sun Microsystems Initial release OpenJDK6 Build b05 February 12, 2008; 3 years ago (2008 02 12)[1] Stable release …   Wikipedia

  • IcedTea — For other meanings, see Iced tea (disambiguation)Infobox Software name = IcedTea6 caption = Screenshot of AWT widgets rendered in IcedTea collapsible = yes developer = Red Hat / GNU Classpath latest release version =… …   Wikipedia

  • Free Java implementations — are software projects that implement Sun Microsystem s Java technologies and are distributed under free software licences, thus making them free software. Sun released most of its Java source code as free software in May 2007, so it can now… …   Wikipedia

  • Java Class Library — The Java Class Library is a set of dynamically loadable libraries that Java applications can call at runtime. Because the Java Platform is not dependent on any specific operating system, applications cannot rely on any of the existing libraries.… …   Wikipedia

  • Comparison of the Java and .NET platforms — Contents 1 Legal issues 1.1 Standardization 1.2 License 1.2.1 Java 1.2.2 .NET …   Wikipedia

  • IcedTea — IcedTea6 Ejemplo de widgets awt renderizados por IcedTea Desarrollador Red Hat / GNU Classpath …   Wikipedia Español