Java es un lenguaje de programación orientado a objetos que se incorporó al ámbito de la informática en los años noventa. La idea de Java es que pueda realizarse programas con la posibilidad de ejecutarse en cualquier contexto, en cualquier ambiente, siendo así su portabilidad uno de sus principales logros. Fue desarrollado por Sun Microsystems, posteriormente adquirido por Oracle. En la actualidad puede utilizarse de modo gratuito, pudiéndose conseguir sin problemas un paquete para desarrolladores que oriente la actividad de programar en este lenguaje. Puede ser modificado por cualquiera, circunstancia que lo convierte en lo que comúnmente se denomina “código abierto”.
Cuando se programa con un lenguaje, se utiliza un tipo de código que la máquina es incapaz de reconocer. Es por ello que se requiere de un proceso de compilación, esto es, de “traducir” el lenguaje utilizado para que la máquina sea capaz de reconocerlo y procesarlo. Cada vez que un código requiere ser ejecutado en un ambiente distinto, deberá compilarse nuevamente. Con el desarrollo de Java se intentó evitar este tipo de circunstancia, haciendo que el código corriera en cualquier ambiente. El modo en que se logró este objetivo es desarrollando una máquina virtual que ejecutase el código compilado; esto significa que la “traducción” ya no se hace para que sea comprendida por un determinado sistema operativo; se hace para que la interprete la “máquina virtual”, que puede correr en cualquier sistema operativo. De esta manera, solo es necesario realizar una compilación, que podrá ser utilizada en cualquier entorno que tenga instalada la máquina virtual java.
Como en cualquier lenguaje de estas características, existen diversos entornos de desarrollo que tienen como función facilitar el proceso de programar con Java. Algunos ejemplos al respecto pueden ser Eclipse, JCreator, NetBeans, Jbuilder, etc. Estos ofrecen un lugar para escritura de código, señalización de errores, compilación, etc. Son gratuitos, por los que pueden obtenerse en la red con facilidad.
En la actualidad, este lenguaje de programación ha ganado una enorme popularidad como consecuencias de su portabilidad, su simpleza y sus grandes posibilidades de utilización. Está especialmente extendido su uso en dispositivos móviles, circunstancia que se profundizará en el futuro. No obstante, el lenguaje también tiene sus detractores; por ejemplo, una crítica recurrente se relaciona con un rendimiento deficiente. Futuras innovaciones al respecto, no obstante, pueden solucionar el problema de forma definitiva. En defensa del lenguaje puede decirse que ha logrado la mayoría de los objetivos para los que se desarrolló.