martes, 9 de abril de 2013

Introducción al lenguaje de programación Java.

Java es un lenguaje de programación creado para satisfacer una necesidad de la época, planteada por nuevos requerimientos hacia los lenguajes existentes. Con la aparición de Java se desarrolló  notablemente la programación orientada a objetos (POO), lo cual permite fabricar programas de forma más parecida al pensamiento humano.  Simplifica el problema dividiéndolo en objetos y permitiendo centrarse en cada objeto, para de esa forma eliminar la complejidad. Cada objeto se programa de forma autómata y esa es la principal virtud.

Características que se le atribuyen a Java como súper-lenguaje:

  • Simple: Java ofrece toda la funcionalidad de un lenguaje potente, pero sin las características menos usadas y más confusas de éstos.
  • Orientado a Objetos: Soporta las características fundamentales del paradigma, todo en Java es clase u objeto.
  • Distribuido: Java se ha construido con extensas capacidades de interconexión.. Existen librerías de rutinas para acceder e interactuar con protocolos como http y ftp. Esto permite a los programadores acceder a la información a través de la red con tanta facilidad como a los ficheros locales.
  • Robusto: Java realiza verificaciones en busca de problemas tanto en tiempo de compilación como en tiempo de ejecución.
  • Arquitectura neutral: El compilador Java compila su código a un fichero objeto de formato independiente de la arquitectura de la máquina en que se ejecutará. Cualquier máquina que tenga el sistema de ejecución (run-time) puede ejecutar ese código objeto, sin importar en modo alguno la máquina en que ha sido generado.
  • Seguro: La máquina virtual hace chequeos para asegurarse de la autenticidad del código.
  • Portable: Los tipos de datos se implementan siempre de igual forma. El sistema de ventana sirve en cualquier Sistema Operativo.
  • Multihilo: Java permite muchas actividades simultáneas en un programa.
  • Dinámico: Java se beneficia todo lo posible de la tecnología orientada a objetos. Java no intenta conectar todos los módulos que comprenden una aplicación hasta el tiempo de ejecución.

Java es un lenguaje sencillo de aprender. Su sintaxis es la de C++ “simplificada”. Los creadores de Java partieron de la sintaxis de C++ y trataron de eliminar todo lo que resultase complicado o fuese fuente de errores en este lenguaje. La herencia múltiple, la aritmética de punteros, la gestión de memoria dinámica (que en Java se realiza de modo transparente para el programador gracias al recogedor de basura) son ejemplos de puntos complicados del lenguaje C++ que en Java se han eliminado o simplificado. Esta decisión de diseño, intencionada, tenía como objetivo atraer a desarrolladores con conocimientos de C++ al nuevo lenguaje de programación, objetivo que fue alcanzado.

Java es completamente independiente de la máquina y el sistema operativo en el que se ejecuta. El código generado por el compilador Java es independiente de la arquitectura: podría ejecutarse en un entorno UNIX, Mac o Windows; en un procesador Sparc, x86, PowerPC, ARM, tanto de 32 como de 64 bits. El motivo de esto es que el que realmente ejecuta el código generado por el compilador no es el procesador del ordenador directamente, sino que se ejecuta mediante una máquina virtual, que es la que genera código máquina adecuado para cada arquitectura.

Además, Java es portable a nivel de código fuente. El párrafo anterior, aborda la portabilidad de Java a nivel de binario: un mismo programa compilado puede ejecutarse en distintas arquitecturas. Pero además en el lenguaje Java no hay aspectos dependientes de la implementación, todas las implementaciones de Java siguen los mismos estándares en cuanto a tamaño y almacenamiento de los datos, y en cuanto al modelo de memoria que ven las aplicaciones.

Java es un lenguaje de programación robusto y seguro. Estas características surgen en buena medida de ser un lenguaje que no es ejecutado directamente por la CPU, sino que es ejecutado por la máquina virtual. Esta máquina virtual puede controlar los permisos que se le otorgan a una determinada aplicación y garantizar que dichos permisos no son violados. Por ejemplo, Java proporciona soporte para la creación de Applets. Estos son programas diseñados para ser ejecutados de modo automático cuando un usuario visita una página web. Si el Applet no estuviese restringido en lo que puede hacer al ejecutarse, podría comprometer nuestra máquina. Sin embargo, Java garantiza que ningún Applet puede escribir o leer de nuestro disco o mandar información del usuario que accede a la página a través de la red (como, por ejemplo, la dirección de correo electrónico). En general no le permite realizar cualquier acción que pudiera dañar la máquina o violar la intimidad del que visita la página web.

¿Te ha gustado este Post? Compártelo con tus amigos.

No hay comentarios:

Publicar un comentario

IconIconIcon