martes, 9 de septiembre de 2014

Introduccion a Java


Es difícil escribir una buena introducción para uno de los mas famosos y potente lenguajes de programasen de todos los tiempos (Para la relativamente corta historia de la programacion). Estoy por completo seguro, que ya habías oído hablar de Java anteriormente, pues lo puedes encontrar en practicamente todos los dispositivos que tenemos en nuestros dias; desde los microchips para programar el funcionamiento de lavadoras, hornos de microhondas, refrigeradores, sistemas de seguridad, relojes, televisores etc. Y si tomamos en cuenta que el 70% del sistema operativo Android esta hecho en Java.

Ademas de programar microcontroladores, tambien podemos desarrollar aplicaciones de consola, aplicaciones con interfaz grafica, aplicaciones moviles y aplicaciones para servidor. Todo esto lo hace uno de los lenguajes de programacion mas prosperos de nuestros dias, haciendo que uno se  pregunte, ¿que es lo que lo ha llevado a ser tan aceptado?.

Un poco de historia.

James Gosling
En los 70s y 80s el lenguaje más aceptado por los desarrolladores de aplicaciones era el C, el cual es un lenguaje que en un principio se orientaba más a el desarrollo de sistemas operativos, además combinaba el lenguaje ensamblador, lo cual le daba mucha potencia la hora de programar microcontroladores, de hecho en  ocasiones fue usado como interprete para otros lenguajes de programación, pues no requería de muchas instrucciones de lenguaje máquina para poder ser compilado y ejecutado.

El problema con C, era que cuando el proyecto comenzaba a ser de grandes dimensiones, costaba mucho trabajo el detectar un error y darle mantenimiento al código era todo una odisea.

Fue en los 80s que apareció C++, el cual en realidad es una extensión de C, de hecho el nombre indica incremento de C, y soluciono el problema de los grandes proyectos insostenibles con programas modulares e independientes, dando paso al paradigma orientado a objetos, el único problema es que aún estaba a sujeto que el compilador fuera compatible con el procesador donde se ejecutaba, lo cual constituía una gran limitante a la hora de desarrollar una aplicación y querer correrla en otra CPU. 

Para 1989 la compañía Sus Microsystems estaba trabajando en un nuevo lenguaje a objetos, que pudiera ser independiente de la plataforma en que fuera ejecutado, 18 meses después Sun dio a luz a la primera versión de Java, De hecho, en ese momento, ni siquiera se llamó Java; se llamó Oak ya que crecía un roble a fuera de la oficina de James Gosling, el cual fue el director del equipo de desarrollo de java. Posteriormente se darían cuenta de que Oak ya era una marca comercial y decidieron darle su nombre actual. 

En esos primeros años Oak no dio mucho de qué hablar, el propósito que la empresa tenía en mente, era que el lenguaje se pudiera implementar principalmente en la electrónica. Posteriormente en 1995 Oak cambio de nombre a java y se lanzó al público, en poco tiempo se hizo muy popular, pues ningún otro lenguaje presentada tanta flexibilidad en cuanto a la multiplataforma.

Una de las más grades bondades de Java, era que había adoptado un modelo que lo hizo perfecto para la red Internet, el modelo bytecode. Las aplicaciones de Visual C++ eran de un tamaño considerable, usualmente solo eran ejecutadas en el ordenador en que residían y no tenían mucha portabilidad, si tuviéramos que descargar toda esa información como parte de un contenido web, nos tardaríamos horas en poder entrar a un sitio.


Los programas Java, por el contrario, se construyen de forma diferente. El propio lenguaje Java está implementado como la máquina virtual de Java (JVM), que es la aplicación que actualmente ejecuta un programa Java. Cuando JVM se instala en un ordenador, éste puede ejecutar programas Java. Los programas Java, por lo tanto, no necesitan ser autosuficientes, y no tienen por qué incluir todo el código máquina que se ejecuta en el ordenador. En cambio, los programas Java son compilados creando bytecodes compactos y son estos bytecodes lo que JVM lee e interpreta para ejecutar el programa. Cuando descarga una applet Java de la red Internet, lo que realmente está descargando

es un archivo de bytecodes.


De esta forma, su programa Java puede ser muy pequeño, ya que todo el código máquina necesario para ejecutarlo está ya en el ordenador de destino y no tiene que descargarse. Para distribuir Java entre una gran variedad de ordenadores, Sun sólo tuvo que rescribir JVM para que funcionara en esos ordenadores. Dado que su programa está almacenado en un archivo de bytecode, se ejecutará en cualquier ordenador en el que JVM esté instalado. Aunque en un principio se suponía que los programas Java eran interpretados por JVM, es decir, ejecutados bytecode por bytecode, la interpretación podía ser un proceso lento. Por esta razón, Java 2 incorpora la compilación al instante Just in Time (JIT) en JVM. El compilador JIT realmente lee los bytecodes por secciones y los compila de forma interactiva en lenguaje máquina, por lo que el programa puede ejecutarse más rápido (todo el programa Java no se compila de una vez, ya que Java va realizando comprobaciones en tiempo de ejecución en varias secciones del código). Desde su punto de vista, esto quiere decir que su programa Java se ejecutará más rápido con el nuevo compilador JIT. Utilizar bytecodes significa que los programas Java son muy compactos, lo que les hace ideales para descargarlos en la red Internet.




Hasta aquí esta introducción de java, la verdad el tema es muy extenso y para mencionar todos tendrá que utilizar más de un post, pero si te intereso, te dejo algunas ligas en la parte de abajo, donde podrás encontrar más recursos para poder incursionar de manera adecuada en el mundo de java, te dejo libros para descargar y algunos tutoriales para que aprendas más sobre la sintaxis, clases, objetos, librerías y demás, espero que te diviertas y recuerda que siempre tendremos algo que contarte.

Libros.

 Tutoriales.

Codigofacilito.com

No hay comentarios:

Publicar un comentario

El pequeño cerdo capitalista.

Hace ya varios años que se del libro del pequeño cerdo capitalista, lo he visto en supermercados y librerías, incluso ya había leído ...