Download INTRODUCCION A JAVA Breve Historia de Java La historia de Java

Document related concepts
no text concepts found
Transcript
Escuela Profesional de Ingeniería de Sistemas e Informática
INTRODUCCION A JAVA
Breve Historia de Java
La historia de Java, se remonta al año 1991, donde un grupo de ingenieros de Sun,
liderados por James Gosling y Patrick Naughton, deseaban diseñar un pequeño lenguaje
de computadoras que se pudiera utilizar en dispositivos de consumo como los
conmutadores de TV por cable. Se dio al proyecto el nombre clave “Green”.
Los requisitos de código pequeño, compacto y neutro respecto a las plataformas llevaron
al equipo a retomar el trabajo de Niklaus Wirth, el inventor de Pascal, quien fue el primero
en diseñar un lenguaje transportable que generaba el código intermedio a una maquina
hipotética (virtual). Basando su lenguaje en C++ en lugar de Pascal, el equipo construyo
un lenguaje orientado a objetos, y le puso el nombre de Java.
La parte de Internet llamada World Wide Web (www) se iba haciendo cada vez más
grande. La clave de la web es el navegador que traduce la página de hipertexto a la
pantalla. En 1995, el grupo lanzo el navegador HotJava (escrito en Java), para mostrar la
potencia de Java, con la novedad de poder incrustar pequeños programas dentro de las
paginas (applets).
Sun publico la primera versión de Java a principios de 1996. Su sucesor, la versión 1.1,
mejoro mucho la capacidad de introspección y añadía un nuevo modelo de eventos para
la programación de GUI. La versión 1.2, reemplazo el antiguo y sencillo juego de
herramientas para gráficos y GUI por unas versiones sofisticadas y escalables. Sun le
puso el nombre de Java 2 Standard Edition software Development Kit versión 1.2.
Además de la “Standard Edition” se presentaron otras dos ediciones: la “Micro Edition”
para dispositivos empotrados como teléfonos móviles y la “Enterprise Edition” para el
procesamiento efectuado en el servidor.
Las versiones 1.3 y 1.4 de la Standard Edition son mejoras incrementales respecto a la
versión original de Java 2, con una biblioteca estándar en constante crecimiento y, por
supuesto, una buena cantidad de corrección de errores. A lo largo de este periodo de
tiempo, Java paso a ser la plataforma de elección para aplicaciones ejecutadas en el
servidor.
1
Escuela Profesional de Ingeniería de Sistemas e Informática
La versión 5.0 es la primera actualización habida desde la versión 1.1 que mejora de
forma significativa el lenguaje Java. (Originalmente esta versión tenía el número 1.5, pero
el número de versión paso a ser 5.0). Se añadieron los tipos genéricos, los bucles “for
each”, el empaquetado y los metadatos.
La Tecnología Java
Java no ha sido nunca solo un lenguaje. Java es toda una plataforma, con una enorme
biblioteca, con una gran cantidad de código reutilizable, y con un entorno de ejecución
que ofrece servicios tales como seguridad, adaptabilidad entre sistemas operativos, y
recolección automática de basura.
Como programador, uno necesita un lenguaje que tenga una sintaxis agradable y una
semántica comprensible. Java encaja bien con este perfil, pero también los hacen muchos
otros lenguajes que también están disponibles. Algunos lenguajes ofrecen adaptabilidad,
recolección de basura y cosas similares, pero no tiene una biblioteca demasiado potente y
nos obligan a partir de cero si deseamos buenos gráficos o redes o acceso a bases de
datos. En este sentido, Java lo tiene todo: un buen lenguaje, un entorno de ejecución de
alta calidad y una amplia biblioteca. Esta combinación es lo que hace a Java una
propuesta atractiva para los programadores.
Características de Java
Estas características han sido recogidas de sus propios creadores:
Sencillo
Deseábamos construir un sistema que se pudiera programar de forma sencilla sin
necesidad de gran cantidad de formación esotérica, y que aproveche las prácticas que
son el estándar de la actualidad. Por tanto aunque observamos que C++ no resultaba
adecuado, diseñamos Java de modo que se pareciese lo más posible a C++ , con el
objeto de hacer el sistema fuera más fácil de entender. Java carece de muchas
características de C++ que utilizan solo raramente, se entienden mal e inducen a
confusión, produciendo, en nuestra experiencia, más daños que beneficios
Orientado a Objetos
Dicho en términos sencillos, el diseño orientado a objetos es una técnica de programación
que se centra en los datos (esto es, los objetos) y en las interfaces de esos objetos. Para
hacer una analogía con la carpintería, un carpintero “orientado a objetos” se preocuparía
2
Escuela Profesional de Ingeniería de Sistemas e Informática
mas por la silla que está haciendo que por las herramientas que utilizara para hacerla; un
carpintero “no orientado a objetos” se preocuparía sobre todo por las herramientas. Las
capacidades orientadas a objetos de Java son, en esencia las de C++
Distribuido
Java posee una extensa biblioteca de rutinas para tratar protocolos TCP/IP como HTTP y
FTP. Las aplicaciones de Java pueden abrir objetos y acceder a objetos a través de la
red empleando URL con tanta facilidad como acceder a un sistema local de ficheros.
Robusto
Java está diseñado para escribir programas que deben resultar fiables en múltiples
sentidos. Java hace hincapié en la comprobación temprana de posibles problemas,
efectúa después una comprobación dinámica (en el momento de la ejecución), y elimina
las situaciones proclives a error… La mayor diferencia individual entre Java y C++ es que
Java tiene un modelo de punteros que elimina la posibilidad de efectuar escrituras
superpuestas en memoria, corrompiendo los datos.
Seguro
Java está diseñado para utilizarse en entornos distribuidos o de red. Con este fin, se ha
hecho mucho hincapié en la seguridad. Java permite construir sistemas libres de virus y
manipulaciones.
Neutro respecto a la arquitectura
El compilador genera una forma de ficheros objeto neutro respecto a la arquitectura: el
código compilado se puede ejecutar en muchos procesadores, siempre y cuando cuenten
con la presencia del entorno de ejecución de Java. El compilador de Java consigue esto
generando instrucciones de bytecode, que nada tiene que ver con una arquitectura de
computadoras concreta. Mas bien, están diseñadas para ser fáciles de interpretar en
cualquier maquina y fáciles de traducir a código maquina sobre la marcha.
Adaptable
A diferencia de C y C++ , no existen aspectos de la especificación que sean
“dependientes de la implementación”. Los tamaños de los datos primitivos están
especificados, así como también el comportamiento que tiene la aritmética que se les
aplica.
Las bibliotecas que forman parte del sistema definen interfaces adaptables. Por ejemplo,
existe una clase abstracta Window, e implementaciones de la misma para UNIX, Windows
y Macintosh.
3
Escuela Profesional de Ingeniería de Sistemas e Informática
Interpretado
El
intérprete de Java puede ejecutar directamente bytecodes de Java en cualquier
maquina a la que se haya adaptado el interprete. Como el enlazado es un proceso más
incremental y ligero, el proceso de desarrollo puede ser mucho más rápido y exploratorio.
De alto rendimiento
Aunque el rendimiento de los bytecodes interpretados suele ser más aceptable, existen
situaciones en que se necesita un rendimiento superior. Los bytecodes se pueden traducir
sobre la marcha (durante la ejecución) a código máquina para la CPU concreta en que se
está ejecutando la aplicación.
Multihilo
Los beneficios de la ejecución multihilo son una
mejor respuesta interactiva y un
comportamiento de tiempo real.
Dinámico
En muchos sentidos, Java es un lenguaje más dinámico que C o C++. Se ha diseñado
para adaptarse a entornos cambiantes. Las bibliotecas pueden añadir libremente nuevos
métodos y variables de ejemplar sin que sus clientes se vean afectados. En java, obtener
información sobre el tipo durante la ejecución es algo sencillo.
4
Escuela Profesional de Ingeniería de Sistemas e Informática
Entorno de Desarrollo
Dentro del JDK del Java, vienen las herramientas que permiten compilar y ejecutar
nuestros programas en Java (javac y java).
Sin embargo, existen los denominados IDEs (Entornos de Desarrollo Integrado), que
facilitan las tareas de edición, compilación, ejecución y depuración de los programas.
El IDE con el que vamos a trabajar en este curso es el Netbeans.
Requisitos del sistema para trabajar con el NetBeans
En la siguiente pagina web, se especifican los requisitos mínimos y recomendados que
debe tener tu sistema para poder ejecutar el NetBeans:
http://netbeans.org/community/releases/68/relnotes.html
Configuration minima


Microsoft Windows XP Professional SP3:
o
Processor: 800MHz Intel Pentium III or equivalent
o
Memory: 512 MB
o
Disk space: 750 MB of free disk space
Microsoft Windows Vista SP1:
o
Processor: 800MHz Intel Pentium III or equivalent
o
Memory: 512 MB
o
Disk space: 750 MB of free disk space
Configuración recomendada


Microsoft Windows XP Professional SP3:

Processor: 2.6 GHz Intel Pentium IV or equivalent

Memory: 2 GB

Disk space: 1 GB of free disk space
Microsoft Windows Vista SP1:

Processor: 2.6 GHz Intel Pentium IV or equivalent

Memory: 2 GB

Disk space: 1 GB of free disk space
5
Escuela Profesional de Ingeniería de Sistemas e Informática
Descarga e Instalación
Descarga
En esta página podrás encontrar las herramientas de software necesarias para este
curso:
http://java.sun.com/javase/downloads/widget/jdk_netbeans.jsp
Luego de concluir con los siguientes pasos, tendrás el archivo que instala el IDE y el JDK
de Java en un solo proceso.

En Plataform: Seleccionar Windows

Hacer clic en Download
6
Escuela Profesional de Ingeniería de Sistemas e Informática

Hacer clic sobre “Skip this Step”

Hacer clic sobre: “jdk-6u18-nb-6_8-windows-ml.exe”

Descargar el archivo “jdk-6u18-nb-6_8-windows-ml.exe”.

Ejecutar el archivo “jdk-6u18-nb-6_8-windows-ml.exe”.
7
Escuela Profesional de Ingeniería de Sistemas e Informática
Creación del primer programa en Java
Desde Inicio, ejecutamos el programa NetBeans
Creamos el primer proyecto, con ayuda del IDE.
Opcion: File > New Project
Seleccionamos: Java Application
Ponemos nombre al proyecto: Introduccion
Seleccionamos una ubicación para su almacenamiento
Ponemos el nombre a la clase: Ejemplo01
8
Escuela Profesional de Ingeniería de Sistemas e Informática
Hacemos clic sobre el botón Finish
Codificamos nuestra clase
En el editor del Netbeans, escribimos la instrucción que permita imprimir un mensaje
de bienvenida.
Ejecutamos el programa con <shift><F6>
9
Escuela Profesional de Ingeniería de Sistemas e Informática
Comentarios sobre el programa:
El código que pongamos dentro de las llaves del método main, será lo que se ejecute,
en este caso la impresión del saludo en la ventana de salida.
Tenga cuidado al escribir el código, debido a que Java distingue las mayúsculas de las
minúsculas.
También ponga atención de finalizar la instrucción con el símbolo de punto y coma “;”.
Creación de otra clase en el mismo proyecto
Para crear una nueva clase (con método main), dentro del paquete introducción, hacemos
clic con el botón derecho del mouse sobre el paquete y seleccionamos la plantilla “Java
Main Class”:
10
Escuela Profesional de Ingeniería de Sistemas e Informática
Ponemos nombre a la nueva clase: “Ejemplo02”:
11
Escuela Profesional de Ingeniería de Sistemas e Informática
Codificamos la impresión en consola de un nuevo mensaje “Este es otro ejemplo”, y
ejecutamos el programa con <shift><F6>:
Para el resto de programas de esta unidad, vamos a seguir adicionando mas clases de la
misma forma que lo hemos hecho en el Ejemplo02.
12
Escuela Profesional de Ingeniería de Sistemas e Informática
Ejemplo 1.03
En esta clase, el programa debe solicitar que el usuario que ingrese un nombre y luego
imprimirá un saludo con el nombre del usuario incluido.
1. import javax.swing.*;
2.
3. public class Ejemplo03 {
4.
public static void main(String[] args) {
5.
6.
String nombre;
7.
nombre = JOptionPane.showInputDialog(“¿Cual es tu nombre? “);
8.
System.out.println(“Bienvenido a Java “+nombre);
9.
10.
}
11.
12.
}
Bienvenido a Java JUAN PEREZ
En la línea 3, importamos el paquete que nos permitirá utilizar el método
showInputDialog para solicitar los datos por teclado.
En la línea 6, declaramos la variable nombre, de tipo cadena y en la línea 7 le
asignamos el valor ingresado por el usuario.
Finalmente, en la línea 8, se imprime el mensaje “Bienvenido a Java”, concatenado
con el nombre ingresado.
13