El lenguaje de programación Java fue concebido por James Gosling en 1991 en Sun Microsystems bajo el nombre inicial de Oak, como parte del "Proyecto Green" cuyo objetivo original era crear software para dispositivos electrónicos de consumo. Sin embargo, su enfoque cambió drásticamente con el auge de Internet a mediados de la década, y fue lanzado oficialmente en 1995 bajo el nombre de Java, destacando su principio de "Escribe una vez, ejecuta en cualquier lugar" (Write Once, Run Anywhere), gracias a la compilación a bytecode que se ejecuta en la Java Virtual Machine (JVM). Esta característica, junto con su naturaleza orientada a objetos, su robustez y seguridad, lo catapultó rápidamente como el lenguaje dominante para aplicaciones empresariales, móviles (especialmente con Android) y web, manteniendo su relevancia y siendo gestionado por Oracle Corporation tras la adquisición de Sun en 2009.
Características
Nombre Java
Fabricante Originalmente Sun Microsystems; actualmente Oracle Corporation
Generación No aplica (Es un lenguaje/plataforma de software)
Lanzamiento 1995 (Primera versión pública: JDK 1.0)
Unidades vendidas No aplica (Es un software libre/licenciado)
CPU No aplica (Se ejecuta en la Java Virtual Machine - JVM)
Memoria RAM Requisito mínimo variable (típicamente 128 MB para el JRE)
ROM No aplica (Es bytecode en el disco, no una ROM)
Formato de ROM Ficheros .class (bytecode) empaquetados en .jar o .war
Tipo de Producto Lenguaje de Programación Orientado a Objetos y Plataforma de Software
Periodo de Ventas 1995 – Presente
Total de Unidades Vendidas No aplica (Su uso es incalculable, instalado en miles de millones de dispositivos)
Los juegos Java para celular (J2ME o MIDP) fueron pioneros en el gaming móvil, siendo su principal ventaja la portabilidad universal, ya que permitían la filosofía de "escribir una vez, ejecutar en cualquier lugar" en una vasta gama de teléfonos antiguos de diferentes fabricantes, haciéndolos muy accesibles en mercados emergentes y con bajos recursos, a pesar de sus gráficos sencillos. No obstante, su gran desventaja radicaba en las limitaciones de rendimiento debido a la Máquina Virtual Java (JVM) y el garbage collector, lo que generaba latencia y pausas notorias, además de las restricciones en la complejidad gráfica y de sonido, y la dificultad para adaptarse a las múltiples resoluciones de pantalla, una limitación que finalmente llevó a su obsolescencia frente a las apps nativas de Android e iOS.