miércoles, 29 de julio de 2009

Origen del Lenguaje Java

Por Emilio Román Chávez

Definitivamente en la actualidad existen varios lenguajes de programación de propósito general que sobresalen con respecto a los demás, entre los cuales se encuentran Visual Basic .NET, C # .NET y obviamente Java. En cualquiera de estos lenguajes se puede invertir tiempo, dinero y esfuerzo con la seguridad de que su inversión le rendirá frutos tarde o temprano y que el desarrollo tecnológico de los mismos está asegurado, fundamentalmente debido a las compañías que los crearon y que evidentemente los respaldan como lo son Microsoft y Sun Microsystems.


En el caso de Java, surge debido a que se necesitaba un lenguaje de programación que eliminara la forma de programar como se hacía en Fortran y Basic, es decir, un nuevo estilo de programación. Este cambio de paradigma o forma de realizar programas, de la programación estructurada a la programación orientada a objetos, comenzó hace más de 30 años con un lenguaje llamado Simula67. El lenguaje C++ fue un intento de retomar estos principios y emplearlos dentro de las restricciones de C. No es necesario utilizar un diseño orientado a objetos para programar en C++, razón por la que muchas veces las aplicaciones en este lenguaje no son realmente orientadas al objeto, perdiendo así los beneficios que este paradigma aporta.


Java fue diseñado en 1990 por James Gosling, de Sun Microsystems, como software para dispositivos electrónicos de consumo. Curiosamente, todo este lenguaje fue diseñado antes de que diese comienzo la era World Wide Web, puesto que fue diseñado para dispositivos electrónicos como calculadoras, hornos de microondas y la televisión interactiva. En los primeros años de la década de los noventa, Sun Microsystems decidió intentar introducirse en el mercado de la electrónica de consumo y desarrollar programas para pequeños dispositivos electrónicos. Tras unos comienzos dudosos, Sun decidió crear una filial, denominada FirstPerson Inc., para dar margen de maniobra al equipo responsable del proyecto. Inicialmente Java se llamó Oak (roble en inglés), aunque tuvo que cambiar de denominación, debido a que dicho nombre ya estaba registrado por otra empresa. Se dice este nombre se le puso debido a la existencia de tal árbol en los alrededores del lugar de trabajo de los promotores del lenguaje.


Con respecto al nombre del lenguaje, existen tres teorías: La primera dice que el nombre está formado por las iniciales de sus creadores: James Gosling, Arthur Van Hoff y Andy Bechtolsheim. La segunda dice que se trata de las iniciales de la frase Just Another Vague Acronym y la tercera dice que es el nombre del tipo de café que tomaban sus diseñadores, proveniente de Java. De ahí que su logotipo oficial es una taza estilizada de café humeante.


Tres de las principales razones que llevaron a crear Java son:

1. Creciente necesidad de interfaces mucho más cómodas e intuitivas que los sistemas de ventanas que proliferaban hasta el momento.

2. Fiabilidad del código y facilidad de desarrollo. Gosling observó que muchas de las características que ofrecían C o C++ aumentaban de forma alarmante el gran coste de pruebas y depuración. Por ello en los sus ratos libres creó un lenguaje de programación donde intentaba solucionar los fallos que encontraba en C++.

3. Enorme diversidad de controladores electrónicos. Los dispositivos electrónicos se controlan mediante la utilización de microprocesadores de bajo precio y reducidas prestaciones, que varían cada poco tiempo y que utilizan diversos conjuntos de instrucciones. Java permite escribir un código común para todos los dispositivos.


Por todo ello, en lugar de tratar únicamente de optimizar las técnicas de desarrollo y dar por sentada la utilización de C o C++, el equipo de Gosling se planteó que tal vez los lenguajes existentes eran demasiado complicados como para conseguir reducir de forma apreciable la complejidad de desarrollo asociada a ese campo. Por este motivo, su primera propuesta fue idear un nuevo lenguaje de programación lo más sencillo posible, con el objeto de que se pudiese adaptar con facilidad a cualquier entorno de ejecución. Basándose en el conocimiento y estudio de gran cantidad de lenguajes, este grupo decidió recoger las características esenciales que debía tener un lenguaje de programación moderno y potente, pero eliminando todas aquellas funciones que no eran absolutamente imprescindibles.


El proyecto Green fue el primero en el que se aplicó Java, y consistía en un sistema de control completo de los aparatos electrónicos y el entorno de un hogar. Con este fin se construyó un ordenador experimental denominado *7 (Star Seven). Este era un dispositivo inalámbrico que permitía controlar dispositivos electrónicos, por medio del uso de una pantalla touch-screen animada, el corazón de toda esta interfaz, era Duke. Duke le dio algo así como una personalidad a la interfaz, Duke era "el agente de Software", era el que "hacia" las cosas que el usuario pedia por medio de la pantalla animada. Uno podía arrastrar a Duke hacia el icono del televisor, y entonces parecía todo la programación del televisor, o podía arrástralo al icono del teléfono y aparecía la agenda telefónica. En aquel tiempo donde el contenido en el internet era estático, ver a Duke dando vueltas por la pantalla era realmente impresionante. Duke podía moverse e interactuar con toda la interfaz, incluso tenia un maletín para llevar las cosas importantes dentro. Duke, la mascota oficial de Java se muestra a continuación:

Más tarde Java se aplicó a otro proyecto denominado VOD (Video On Demand) en el que se empleaba como interfaz para la televisión interactiva que se pensaba iba a ser el principal campo de aplicación de Java. Ninguno de estos proyectos se convirtió nunca en un sistema comercial, pero fueron desarrollados enteramente en un Java primitivo. Una vez que en Sun se dieron cuenta de que a corto plazo la televisión interactiva no iba a ser un gran éxito, instaron a FirstPerson a desarrollar nuevas estrategias que produjeran beneficios. Entre ellas se encontraba la aplicación de Java a Internet, la cual no se consideró productiva en ese momento. Aunque muchas de las fuentes consultadas señalan que Java no llegó a caer en un olvido, lo cierto es que tuvo que ser Bill Joy (cofundador de Sun y uno de los desarrolladores principales del sistema operativo Unix de Berkeley) el que sacó a Java del letargo en que estaba sumido. Joy juzgó que Internet podría llegar a ser el campo adecuado para disputar a Microsoft su primacía en el terreno del software, y vio en Oak el instrumento idóneo para llevar a cabo estos planes. Para poder presentarlo en sociedad se tuvo que modificar el nombre de este lenguaje de programación y se tuvo que realizar una serie de modificaciones de diseño para poderlo adaptar al propósito mencionado. Así Java fue presentado en sociedad en agosto de 1995. Algunas de las razones que llevaron a Bill Joy a pensar que Java podría llegar a ser rentable son:


* Java es un lenguaje 100% orientado a objetos: Esto es lo que facilita abordar la resolución de cualquier tipo de problema.

* Es un lenguaje sencillo, aunque sin duda potente.

* La ejecución del código Java es segura y fiable: Los programas no acceden directamente a la memoria del ordenador, siendo imposible que un programa escrito en Java pueda acceder a los recursos del ordenador sin que esta operación le sea permitida de forma explícita. De este modo, los datos del usuario quedan a salvo de la existencia de virus escritos en Java. La ejecución segura y controlada del código Java es una característica única, que no puede encontrarse en ninguna otra tecnología.

* Es totalmente multiplataforma: Es un lenguaje sencillo, por lo que el entorno necesario para su ejecución es de pequeño tamaño y puede adaptarse incluso al interior de un navegador.


Las consecuencias de la utilización de Java junto a la expansión universal de Internet, de nuevos y potentes dispositivos móviles, consolas de juegos y telefonía celular hacen de Java uno de los lenguajes más exitosos de la actualidad.


Si quieres recibir más artículos como este, suscribete a Java en mi Tecnológico por Email... es gratis!

1 comentario:

  1. Muy buena la informacion, estaria bien alguna informacion acerca de los paradigmas de programacion es que aveses es confuso.
    gracias y Suerte!

    ResponderEliminar