martes, 13 de octubre de 2009

Notas sobre Java (Teoría)

Java es uno de los lenguajes más populares para aplicaciones basadas en web y dispositivos que se comunican por red.

Historia.

En 1991 se creo un proyecto interno en Sun Microsystem denominado Green. El plan era desarrollar un lenguaje basado en C++ que en un inicio se llamo Oak, culpa de un roble que se podía ver desde la oficina de James Gosling, su creador. Pero ya existia un lenguaje con ese nombre, por lo que mas adelante se le llamo Java, cuando un grupo de generentes visitaron una cafetería local.

Java fue creado para el mercado de dispositivos electrónicos inteligentes. Por desgracia, la proyección de Sun fue errónea y este tipo de dispositivos no se desarrollaban tan rápido. Así que el proyecto corrió con la suerte de ser cancelado. En 1993 exploto la popularidad de Internet y los chicos de Sun se dieron cuenta de que Java podía agregarle Dinamismo a las estaticas paginas creadas en html vil y villano.

En 1995, Sun Microsystem dio a conocer Java dentro de una conferencia y su fuerte fue los actuales y extintos Apples dentro de las paginas de Internet y se gano el corazón del mundo de los negocios, así como aplicaciones para dispositivos móviles como los celulares y radiolocalizadores.

Java se divide en tres ediciones que son:

  • Java Standar Edition (Java SE).
  • Java Enterprise Edition (Java EE) Orientada a las aplicaciones de redes a gran escala y aplicaciones basadas en web.
  • Java Micro Edition (Java ME) Orientada al desarrollo de aplicaciones para dispositivos moviles con memoria limitada.
Entorno de desarrollo en Java

La programación en Java pasa por 5 etapas:

  • Edición
  • Compilación
  • Carga
  • Verificación
  • Ejecución
Etapa 1

En esta primer etapa, es la parte donde escribiremos el programa ayudados por un editor. Posterior mente guardaremos el archivo bajo la extención '.java'.


Por ejemplo, suelo usar los editores vi o emacs para entornos Linux, pero para el campo de guerra necesitamos poder. Para ello existen los Entornos de desarrollo integrado (IDE's).


Entre los mas populares tenemos:
Etapa 2

Para compilar un archivo .java, es necesario hacerlo con el archivo javac, que es el compilador.

Por ejemplo, supongamos que trabajamos con vi para hacer un pequeño programa y es hora de saber si podemos seguir o nos detenemos a ver errores. Desde una shell podemos hacer lo siguiente:

[Sugizo@old ~]$javac HolaMundo.java

si no detecta ningun error, nos generara un archivo '.class' a la cual llamamos 'Byte Code' que será lo que la Maquina Virtual de Java (JVM) usara para hacer las tareas que hemos escrito.

Para ejecutar este programa es tan fácil como escribirn en nuestra terminal lo siguiente:

[Sugizo@old ~]$java HolaMundo

Y veremos en terminal o por Interface grafica de usuario (GUI) el resultado.

Etapa 3

Para poder ejecutar el programa, este debe cargarse primero a memoria, de lo que se encarga el cargador de clases. el cargador también carga cualquiera de los .class de las librerías que el programa use.

Etapa 4

A medida en que se cargan las clases, existe un componente interno conocido como el verificador de Byte Code que examina las clases para asegurar que sean correctos y no violen las restricciones de seguridad.

Etapa 5

En este punto, la JVM ejecuta los Byte Code. Antes esta parte era la mas pesada ya que la Maquina virtual interpretaba bytecode por bytecode, ahora es mas eficiente gracias a algo llamado Just in time (JIT), esto hace que se interpreten a medida de que busca puntos activos del programa. Es decir, partes del codigo que se ejecutan con frecuencia.

Ahora bien, instalar Java en Windows es tan fácil como dar doble click. Pero para hacerlo desde linux, basta seguir estas instrucciones.

Besitos.