
1. Historia de JAVA
A finales de los años ochenta Sun Microsystems decide introducirse en el mercado de la electrónica de consumo y más concretamente en los equipos domésticos, incluyendo la televisión interactiva. Java, nace como un lenguaje ideado en sus comienzos para programar electrodomésticos, los cuales poseen una reducida potencia de cálculo y memoria. Este lenguaje es sencillo y capaz de generar códigos de tamaño muy reducido.
Debido a la existencia de distintos tipos de CPUs y a los continuos cambios, era importante conseguir una herramienta independiente del tipo de CPU utilizada. Desarrollaron un código "neutro" que no dependía del tipo de electrodoméstico, el cual se ejecutaba sobre una "máquina hipotética o virtual" denominada Java Virtual Machine (JVM). Era la JVM quien interpretaba el código neutro convirtiéndolo a código particular de la CPU utilizada. Esto permitía lo que luego se ha convertido en el principal lema del lenguaje: "Write Once, Run Everywhere". A pesar de los esfuerzos realizados por sus creadores, ninguna empresa de electrodomésticos se interesó por el nuevo lenguaje.
En sus primeras versiones, se llamó OAK.
2. Objetivos de diseño de los creadores de JAVA
LENGUAJE FAMILIAR:
Java no sería un lenguaje totalmente nuevo, se parecería a lo que conocemos como C++, así que no le sería tan complicado recalar en los programadores escépticos.
LENGUAJE ORIENTADO A OBJETOS:
Para que un lenguaje pueda considerarse orientado a objetos debe soportar como mínimo las características de:
-encapsulación
-herencia
-polimorfismo
-enlace dinámico.
LENGUAJE ROBUSTO:
Uno de los problemas más comunes en los lenguajes de programación es la posibilidad de escribir programas que pueden bloquear el sistema. Algunas veces este bloqueo puede ser inmediato, pero en otras ocasiones llega a aparecer inesperadamente porque, por ejemplo, la aplicación accede a zonas de memoria que no estaban siendo ocupadas por otros programas hasta ese momento. Un ejemplo claro de lenguaje no robusto es C.
Al escribir código en C o C++ el programador debe hacerse cargo de la gestión de memoria de una forma explícita, solicitando la asignación de bloques a punteros y liberándolos cuando ya no son necesarios.
En Java, los punteros, la aritmética de punteros y las funciones de asignación y liberación de memoria (malloc( ) y free( ) ) no existen. En lugar de los punteros se emplean referencias a objetos, los cuales son identificadores simbólicos. El gestor de memoria de Java lleva una contabilidad de las referencias a los objetos. Cuando ya no existe una referencia a un objeto, éste se convierte en candidato para la recogida de basura (garbage collection).
Existen 3 versiones de la plataforma Java numeradas 1.0, 1.1 y 1.2. Las 3 versiones difieren en la extensión de la API. La versión 1.2 es compatible con la 1.1 y la versión 1.1 es compatible con la 1.0, pero no al revés. En cada nueva versión se han agregado nuevas clases para facilitar la programación de aplicaciones.
El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel, que suelen inducir a muchos errores, como la manipulación directa de punteros o memoria.
Los documentos web pueden contener variedad de texto, gráficos de todas clases y proporcionar enlaces hipertexto hacia cualquier lugar de la red. Los navegadores utilizan documentos escritos en lenguaje HTML. La combinación actual de navegadores HTML/WWW están limitados pues, a texto y gráficos. Si se quiere reproducir un sonido o ejecutar un programa de demostración, primero hemos de bajarnos (download) el fichero en cuestión y luego utilizar un programa en nuestro ordenador capaz de entender el formato de ese fichero, o bien cargar un módulo (plug-in) en nuestro navegador para que pueda interpretar el fichero que hemos bajado.
En la actualidad es un lenguaje muy extendido y cada vez cobra más importancia tanto en el ámbito de Internet como en la informática en general. Está desarrollado por la compañía Sun Microsystems con gran dedicación y siempre enfocado a cubrir las necesidades tecnológicas más punteras.
Una de las principales características por las que Java se ha hecho muy famoso es que es un lenguaje independiente de la plataforma. Eso quiere decir que si hacemos un programa en Java podrá funcionar en cualquier ordenador del mercado. Es una ventaja significativa para los desarrolladores de software, pues antes tenían que hacer un programa para cada sistema operativo, por ejemplo Windows, Linux, Apple, etc. Esto lo consigue porque se ha creado una Máquina de Java para cada sistema que hace de puente entre el sistema operativo y el programa de Java y posibilita que este último se entienda perfectamente.
Java elimina muchas de las características de otros lenguajes como C++, para mantener reducidas las especificaciones del lenguaje y añadir características muy útiles como el garbage collector (reciclador de memoria dinámica). No es necesario preocuparse de liberar memoria, el reciclador se encarga de ello y como es un thread de baja prioridad, cuando entra en acción, permite liberar bloques de memoria muy grandes, lo que reduce la fragmentación de la memoria.
Java reduce en un 50% los errores más comunes de programación con lenguajes como C y C++ al eliminar muchas de las características de éstos, entre las que destacan: •
aritmética de punteros •
no existen referencias •
registros (struct) •
definición de tipos (typedef) •
macros (#define) •
necesidad de liberar memoria (free)
Aunque, en realidad, lo que hace es eliminar las palabras reservadas (struct, typedef), ya que las clases son algo parecido.
Además, el intérprete completo de Java que hay en este momento es muy pequeño, solamente ocupa 215 Kb de RAM.
http://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n_Java
Esta página nos habla sobre Java e indica que es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. La tecnología Java se creó como una herramienta de programación para ser usada en un proyecto de set-top-box en una pequeña operación denominada the Green Project en Sun Microsystems en el año 1991.Java se ha convertido en un lenguaje con una implantación masiva en todos los entornos (personales y empresariales). El control que mantiene Sun sobre éste genera reticencias en la comunidad de empresas con fuertes intereses en Java (pe IBM, Oracle) y obviamente en la comunidad de desarrolladores de software libre.
http://manual-java.com/manualjava/introduccion-java.html
La página nos ayuda a conocer sobre el uso principal que se hace de Internet e incluso de las redes internas (corporativas) es correo electrónico (e-mail), aunque actualmente hay un auge sorprendente de la navegación web . Los documentos web pueden contener variedad de texto, gráficos de todas clases y proporcionar enlaces hipertexto hacia cualquier lugar de la red. Los navegadores utilizan documentos escritos en lenguaje HTML. La combinación actual de navegadores HTML/WWW están limitados pues, a texto y gráficos. Si se quiere reproducir un sonido o ejecutar un programa de demostración, primero hemos de bajarnos (download) el fichero en cuestión y luego utilizar un programa en nuestro ordenador capaz de entender el formato de ese fichero, o bien cargar un módulo ( plug-in ) en nuestro navegador para que pueda interpretar el fichero que hemos bajado. El lenguaje Java y los navegadores con soporte Java, proporcionan una forma diferente de hacer que ese navegador sea capaz de ejecutar programas.
http://www.monografias.com/trabajos42/manual-de-java/manual-de-java2.shtml#introlenguaje
En esta dirección podemos encontrar una breve reseña histórica del lenguaje JAVA, que surgió en 1991 cuando un grupo de ingenieros de Sun Microsystems trataron de diseñar un nuevo lenguaje de programación destinado a electrodomésticos. El principal objetivo del lenguaje Java es llegar a ser el "nexo universal" que conecte a los usuarios con la información, esté ésta situada en el ordenador local, en un servidor de Web, en una base de datos o en cualquier otro lugar.
http://www.desarrolloweb.com/articulos/497.php
En esta dirección electrónica podemos encontrar información referente a Java, que es un lenguaje de programación con el que podemos realizar cualquier tipo de programa. Java fue pensado originalmente para utilizarse en cualquier tipo de electrodoméstico pero la idea fracasó.Actualmente Java se utiliza en un amplio abanico de posibilidades y casi cualquier cosa que se puede hacer en cualquier lenguaje se puede hacer también en Java y muchas veces con grandes ventajas.
http://www.unav.es/cti/manuales/Java/indice.html#1.2
En esta página está una reseña histórica, los objetivos y nos da una breve enseñanza sobre el lenguaje JAVA.La gran novedad que aporta Java dentro de las nuevas generaciones de navegadores es la capacidad de desplazar el control de la interactividad de los servidores hacia las máquinas de los usuarios que se utilizan para recorrer Internet. Por la misma estructura del lenguaje, los nuevos navegadores permiten la telecarga de "applets", pequeños fragmentos de programas compactos, precompilados, que pueden entonces interpretar de modo distinto los datos telecargados para producir por ejemplo animaciones, sonido y especialmente la verdadera interactividad.
http://sunsite.dcc.uchile.cl/java/
Aquí Ud. encontrará información útil acerca de Java: Tutoriales, kit de desarrollo, especificaciones del lenguaje, documentación de la API, etc. Existen 3 versiones de la plataforma Java numeradas 1.0, 1.1 y 1.2. Las 3 versiones difieren en la extensión de la API. La versión 1.2 es compatible con la 1.1 y la versión 1.1 es compatible con la 1.0, pero no al revés. En cada nueva versión se han agregado nuevas clases para facilitar la programación de aplicaciones.