Capítulo 1
El origen de Java Síntesis del Manual de Referencia Java 2 Cuarta edición – Herbert Schildt
Linaje de Java El nacimiento de la programación moderna: C La necesidad de C++ Todo está dispuesto para Java La creación de Java ¿Por qué Java es importante para Internet? Applets y aplicaciones Java Seguridad Portabilidad La magia de Java: el bytecode Las palabras de moda de Java Simple Orientado a objetos Robusto Multihilo Arquitectura neutral Interpretado y de alto rendimiento Distribuido Dinámico La revolución continúa Java no es HTML mejorado
Instituto Tecnológico de Pachuca – Roberto Hernández Pérez. Rev. Jun 2013
El origen de Java
El origen de Java Java es una mezcla de los mejores elementos de su rica herencia combinados con los conceptos innovadores que requiere su entorno único. La innovación y el desarrollo de los lenguajes de programación tienen lugar por dos motivos fundamentales:
La adaptación a los cambios de entorno y usos. La implementación de refinamientos y mejoras en el arte de la programación.
Linaje de Java
Java está relacionado con C++, que es un descendiente directo de C. Java ha heredado la mayor parte de su carácter de estos dos lenguajes.
El nacimiento de la programación moderna: C
La creación de C fue el resultado directo de la necesidad de un lenguaje de alto nivel, estructurado, eficiente y que pudiera reemplazar al código ensamblador en la creación de programas. Cuando se diseña un lenguaje de programación se realizan una serie de balances comparativos, tales como:
Facilidad de uso frente a potencia Seguridad frente a eficiencia Rigidez frente a extensibilidad
La creación de C, es considerada por muchos como el comienzo de la era moderna en los lenguajes de programación. C es un lenguaje diseñado por y para programadores.
Instituto Tecnológico de Pachuca – Roberto Hernández Pérez. Rev. Jun 2013
1-2
El origen de Java
La necesidad de C++
Los distintos métodos de planteamiento de la programación han cambiado radicalmente desde la intervención del ordenador. Para proporcionar al programador mas herramientas que le permitieran manejar la creciente complejidad. C es uno de los mejores lenguajes de programación, su capacidad para gestionar la complejidad no tiene límite.
Todo está dispuesto para Java
C era un lenguaje que se podía utilizar para crear una amplia gama de programas. Sin embargo, como en el pasado, surgieron una vez más, fuerzas que dieran lugar a una evolución de los lenguajes de programación. En pocos años la World Wide Web e internet alcanzaron una masa crítica. Este evento daría lugar a otra evolución Informática.
La creación de Java
Java fue concebido por James Gosling, Patrick Naughton, Chris Warth, Ed Frank y Mike Sheridan en Sun Microsystems, Inc. en 1991. Tardo dieciocho meses en desarrollar su primera versión. El lenguaje se llamo en un principio <<Oak>> pero fue renombrado como <<Java>> en 1995. Mientras se trabajaban distintos aspectos de Java, surgió un segundo, y definitivamente más importante, factor, que tendría un papel crucial en el futuro de Java. Este factor fue, naturalmente, la World Wide Web. Si el mundo de la Web no se hubiese desarrollado al mismo tiempo, Java podría haber sido simplemente un lenguaje de utilidad para la programación de dispositivos electrónicos de consumo. El cambio de entorno que dio lugar a la aparición de Java fue la necesidad de programas independientes de la plataforma destinados a su distribución en internet. También encarna cambios en la forma en que los programadores plantean el desarrollo de sus programas.
Instituto Tecnológico de Pachuca – Roberto Hernández Pérez. Rev. Jun 2013
1-3
El origen de Java
¿Por qué Java es importante para Internet?
Internet ha ayudado a Java a situarse como líder de los lenguajes de programación. Java amplía el universo de los objetos que pueden moverse libremente en el ciberespacio. En una red, entre el servidor y un ordenador personal se transmiten dos amplias categorías:
La información pasiva La información dinámica
Es decir programas activos. Antes de la aparición de Java, el ciberespacio estaba cerrado a la mitad de las entidades que ahora viven en el, permite controlar y abre las puertas de una nueva excitante forma de programación: las applets.
Applets y aplicaciones Java
Se puede utilizar Java para crear dos tipos de programas:
Aplicaciones Applets
Una aplicación es un programa que se ejecuta en el ordenador del usuario y bajo el sistema operativo de ese ordenador. Java para crear aplicaciones no es muy diferente, lo que hace Java verdaderamente importante es su capacidad para crear applets. Una applet es una aplicación diseñada para ser transmitida por internet y ejecutada por un navegador compatible con Java. Las applets no tendrían valor alguno si Java no fuera capaz de controlar los dos problemas asociados con ellas:
Seguridad Portabilidad
Seguridad
Java ante los problemas de recibir virus y programas que recopilan información privada responde proporcionando un <<cortafuegos>> entre una aplicación de la red y el ordenador local. Java consigue esta protección limitando el programa Java al entorno de ejecución de Java, y no permitiéndole el acceso a otras partes del ordenador.
Instituto Tecnológico de Pachuca – Roberto Hernández Pérez. Rev. Jun 2013
1-4
El origen de Java
Portabilidad
Para que cualquier programa se pueda transferir dinámicamente a los distintos tipos de plataformas conectados a internet, es necesario un medio que permita generar código ejecutable y portable.
La magia de Java: el bytecode
La clave que permite a Java resolver:
Seguridad Portabilidad
Es que la salida del compilador Java no es un código ejecutable, sino un bytecode. Un bytecode es un conjunto de instrucciones altamente optimizado diseñado para ser ejecutado por una maquina virtual que emula al intérprete Java (JVM), es decir, el interprete de Java es un interprete bytecode. El hecho de que un programa Java sea interpretado permite resolver los problemas más importantes asociados a la transferencia de programas de internet.
Traducir un programa Java a bytecode hace que su ejecución en una gran variedad de entornos resulte mucho más sencilla, y la razón es para cada plataforma, solo es necesario implementar el interprete Java.
Las palabras de moda de Java Java esta completa sin tener en cuenta las palabras de moda de Java. Las consideraciones clave fueron resumidas por el equipo de Java en la siguiente lista de términos:
Simple Seguro Portable Orientado a objeto Instituto Tecnológico de Pachuca – Roberto Hernández Pérez. Rev. Jun 2013
1-5
El origen de Java
Robusto Multihilo Arquitectura neutral Interpretado Alto rendimiento Distribuido Dinámico
Simple
Java fue diseñado con la finalidad de que su aprendizaje y utilización resultaran sencillos para el programador.
Orientado a objetos
Java ha tomado prestadas muchas ideas de entornos de orientación de objetos de las últimas décadas, consiguiendo un equilibrio espectacular entre el modelo purista (<<todo es un objeto>>) y el modelo pragmático (<<quédate fuera de mi camino>>).
Robusto
El entorno multiplataforma de la Web es muy exigente con un programa, ya que este se debe ejecutar de forma fiable en una gran variedad de sistemas. Por este motivo, la capacidad para crear programas robustos tuvo una alta prioridad en el diseño de Java. Para ganar fiabilidad, Java restringe al programador en unas pocas áreas clave, y así consigue encontrar rápidamente los errores en el desarrollo del programa.
Instituto Tecnológico de Pachuca – Roberto Hernández Pérez. Rev. Jun 2013
1-6
El origen de Java
Multihilo
Java fue diseñado para satisfacer los requerimientos del mundo real, de crear programas de red interactivos. Java proporciona la programación Multihilo que permite la escritura de programas que hagan varias cosas simultáneamente.
Arquitectura neutral
Los diseñadores de Java tomaron decisiones difíciles en el lenguaje y en el interprete Java (Java virtual Machine, JUM) en un intento de mejorar esta situación. Su meta era <<escribir una vez; ejecutar en cualquier sitio, en cualquier momento y para siempre>>. Ese objeto se consiguió en gran parte.
Interpretado y de alto rendimiento
Java permite la creación de programas que se pueden ejecutar en diferentes plataformas por medio de la compilación en una representación intermedia llamada código bytecode. Este código pude ser interpretado en cualquier sistema que tenga un intérprete Java.
Distribuido
Java fue ideado para el entorno distribuido de internet, ya que gestiona los protocolos TCP/IP.
Dinámico
Los programas Java se transportan con cierta cantidad de información que se utiliza para verificar y resolver el acceso a objetos en el tiempo de ejecución. Esto permite enlazar el código dinámicamente de una forma segura y viable. Instituto Tecnológico de Pachuca – Roberto Hernández Pérez. Rev. Jun 2013
1-7
El origen de Java
La revolución continúa
A diferencia de otros lenguajes de programación que normalmente se van estableciendo a base de pequeñas mejoras incrementales, Java ha continuado evolucionando a un ritmo explosivo. Las facilidades que añadía Java era más significativas y substanciales de lo que cabria pensar teniendo el gran número asignado a la versión. Incorporaba muchas bibliotecas de elementos nuevas, redefinía la forma en que los eventos eran gestionados por las applets, y reconfiguraba muchas características de la biblioteca.
Java no es HTML mejorado
Como Java se utiliza en la creación de páginas Web, mucha gente confunde Java con HTML (Hipertext Markup Language), o piensan que Java no es más que una mejora de HTML, y esto es un error de concepto .La única conexión que HTLM tiene con Java es que proporciona la etiqueta applet, que permite ejecutar applets.
Instituto Tecnológico de Pachuca – Roberto Hernández Pérez. Rev. Jun 2013
1-8