Debe introducir al menos 3 caracteres en el buscador.
Inicio / Wikis / Cursos gratis / Introducción al lenguaje JAVA - Introducción a Java

Introducción al lenguaje JAVA - Introducción a Java

 ***** (10 opiniones)
Creative Commons Curso gratis de Unav - 21 de Septiembre de 2005
Temas Relacionados: JavaOrientación a objetos
2. Introducción a Java

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!

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).

LENGUAJE DE ALTO RENDIMIENTO ( MÚLTIPLES THREADS ):

Una de las características del lenguaje es que soporta la concurrencia a través de threads. En ocasiones puede interesarnos dividir una aplicación en varios flujos de control independientes, cada uno de los cuales lleva a cabo sus funciones de manera concurrente. Cuando los distintos flujos de control comparten un mismo espacio lógico de direcciones, se denominan threads.

LENGUAJE PORTABLE:

El principal objetivo de los diseñadores de Java, y dado el gran crecimiento de las redes en los últimos años, fue el de desarrollar un lenguaje cuyas aplicaciones una vez compiladas pudiesen ser inmediatamente ejecutables en cualquier máquina y sobre cualquier sistema operativo. Por ejemplo, un programa desarrollado en Java en una estación de trabajo Sun que emplea el sistema operativo Solaris, debería poderse llevar a un PC que utilice sistema operativo Windows NT.

LENGUAJE LO MÁS SIMPLE POSIBLE:

Los diseñadores de Java trataron de mantener las facilidades básicas del lenguaje en un mínimo y proporcionar un gran número de extras con las librerías de clases.

LENGUAJE SEGURO:

Se pretendía construir un lenguaje de programación que fuese seguro, esto es, que no pudiera acceder a los recursos del sistema de manera incontrolada. Por este motivo se eliminó la posibilidad de manipular la memoria mediante el uso de punteros y la capacidad de transformación de números en direcciones de memoria ( tal y como se hace en C ) evitando así todo acceso ilegal a la memoria. Esto se asegura porque el compilador Java efectúa una verificación sistemática de conversiones.

3. Lo nuevo en 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.

El lenguaje Java, visto desde un navegador de Internet, es pues un lenguaje que no es ni totalmente interpretado, ni totalmente compilado. El lenguaje se transforma en un código elemental parecido al ensamblador, llamado también p-code o byte-code.

Posee la particularidad de ser compacto y por tanto puede ser compilado (traducido a lenguaje máquina) muy rápidamente, en el transcurso de la propia ejecución del programa. El p-code constituye una capa intermedia que facilita enormemente la portabilidad de un entorno o de una máquina a otra. La facilita hasta el punto de lograrla desaparecer.

Aparece entonces la "máquina virtual". Una máquina virtual es una capa lógica que hace creer al programa Java que se ejecuta en un ordenador real (con registros, memoria y procesador), cuando en realidad sólo ve una reconstrucción lógica de un ordenador.

Para ejecutar un programa Java compilado (que está en p-code), es preciso también que cuente con una implementación de la máquina virtual específica donde se desea ejecutar, la cual efectúa la transformación del p-code en un programa comprensible para la máquina.

Autor y licencia de 'Introducción al lenguaje JAVA - Introducción a Java'
Unav Extraído de: http://www.unav.es/cti

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.

Wikis relacionados con 'Introducción al lenguaje JAVA - Introducción a Java'

La idea es dar una guía ordenada para el estudio de este lenguaje, muy poderoso... Más »
A diferencia de la orientación a procedimientos (OP), la orientación a objetos (OO) no concibe... Más »
Si su programa es software libre, básicamente es ético--pero hay una trampa de la que... Más »
Introducción al lenguaje Java: cuando usted comience a programar en Java, y en especial para... Más »
Aún cuando estés trabajando en un equipo windows puedes desarrollar aplicaciones libres, en este tutorial... Más »
Gente Wiki
Ruben Salgado
Hola!!! soy publicista especializado en gerencia de marketing, actualmente me desempeño como consultor de pymes en las áreas de comunicación...
Luis Eduardo Carrillo Villamizar
Soy contador público y deseo perfeccionar mis conocimientos en la actividad inmobiliaria que desarrollo paralelamente a mi profesión de contador.
Derecho inmobiliario, Gestión de fincas,...
Carlos De Castro Lozano
Soy profesor del departamento de informática de la universidad de córdoba. Imparto las asignaturas de sistemas multimedia e interación persona-ordenador...
Jose Maria Peña
Profesor de dibujo y comunicación audiovisual en secundaria. Estoy licenciado en Bellas Artes y varios cursos diseño y audiovisuales. Amante...
Arte digital, Retoque fotográfico,...
Paul Amoretti Ismodes
Economista, con maestria en administración tributaria, especialidad en tributación municipal, diplomado en proyectos y en finanzas, con estudios de derecho....
Asesoría jurídica, Control de costes,...
Fernando Cabrera Espinoza
Soy docente universitario en la carrera de derecho; fiscal y articulista en un diario sobre temas de derecho; sigo...
Cine, Religión,...
Suscribirse
Concurso de proyectos educativos
¿Estás seguro de que deseas eliminar este capítulo?