• No se han encontrado resultados

2. Introducción a la Programación en Java. Algoritmos y Desarrollo de Programas I

N/A
N/A
Protected

Academic year: 2021

Share "2. Introducción a la Programación en Java. Algoritmos y Desarrollo de Programas I"

Copied!
76
0
0

Texto completo

(1)

2. Introducción a la

Programación en Java

(2)

Objetivos

 Al finalizar esta sesión, el

estudiante:

 Sabrá qué es Java y para qué tipos de

programas puede ser utilizado.

 Conocerá los datos más importantes

sobre el desarrollo histórico de Java.

 Podrá crear, compilar y ejecutar

programas en Java utilizando

herramientas de la línea de comandos y ambientes integrados de desarrollo.

(3)

Objetivos (cont.)

 Cuando finalice esta lección, el

estudiante:

 Podrá identificar los elementos de un

lenguaje de programación, en particular de Java.

 Sabrá lo que es un método y cómo

Java utiliza clases como contenedores de métodos.

 Podrá escribir programas que muestren

mensajes en la pantalla utilizando interfaces de texto.

(4)

Objetivos (cont.)

 Cuando finalice esta lección, el

estudiante:

 Podrá escribir programas que muestren

mensajes en la pantalla utilizando cajas de diálogo.

 Sabrá la diferencia entre

documentación interna y

documentación externa y cómo usar la herramienta javadoc.

(5)

¿Qué es Java?

 En nuestro curso utilizaremos un lenguaje

de programación moderno conocido como

Java.

 Java puede usarse para crear dos tipos de

programas:

Aplicaciones – programas tradicionales que

se ejecutan en la computadora

Applets – pequeños programas que se

ejecutan dentro de una página Web. Para verlos hace falta un browser como Internet Explorer o Firefox

(6)

Historia de Java

 Java surge de un equipo de trabajo

de Sun Microsystems en 1991.

 La idea original era crear un

lenguaje universal para que con un mismo aparato de control remoto se pudieran manejar diferentes

equipos de entretenimiento.

 El lenguaje original, creado por James Gosling, se llamaba Oak,

por un árbol que Gosling veía desde su oficina.

(7)

Historia de Java (cont.)

 Con el tiempo, el nombre del

lenguaje se cambia a Java en honor al café, una de las bebidas favoritas de los programadores.

 El grupo de trabajo de Sun se dio

cuenta de lo efectivo que podría ser este lenguaje en Internet y lo

utilizan para desarrollar un Web

(8)

Historia de Java (cont.)

 Lo novedoso de HotJava es que se

podían correr applets escritos en Java que permitían animaciones e interacción con el usuario.

El browser fue demostrado en una

conferencia mundial de Sun que se ofreció en 1995.

 Este es el año en que surge la

(9)

Historia de Java (cont.)

 Java ha seguido desarrollándose a través

de los años.

 Las siguientes son las versiones de Java:

 Java 1.0 en 1995  Java 1.1 en 1997

 Java 1.2 en 1998, también conocido como Java 2  Java 1.3 en 2000

 Java 1.4 en 2002

 Java 1.5 en 2004, también conocido como Java 5  Java 1.6 en 2006, también conocido como Java 6

(10)

Ediciones de Java (cont.)

 Para ejecutar un programa en Java,

lo mínimo que se necesita es que la computadora contenga el

Ambiente de Ejecución de Java

(JRE, Java Runtime Environment).

 El JRE se instala de forma

automática la primera vez que se accede a una página Web que

(11)

Ediciones de Java (cont.)

 Los programadores necesitamos

además un conjunto de programas que nos permita crear aplicaciones y applets en Java.

Éste se conoce como el Kit para Desarrollo de Java (JDK, Java

Development Kit).

 Existen diferentes ediciones del JDK

que se pueden obtener, totalmente gratis, de Sun Microsystems: Java SE, Java EE y Java ME.

(12)

Ediciones de Java (cont.)

Java SE (Java Standard Edition)

 Provee todo lo necesario para la creación

de aplicaciones y applets.

Java EE (Java Enterprise Edition)  Permite crear aplicaciones para

empresas que proveen servicios por el Web.

Java ME (Java Micro Edition)  Permite crear aplicaciones para

productos como teléfonos celulares y enseres eléctricos.

(13)

Un programa en Java

 El siguiente es un programa simple que

muestra el mensaje “Hello, world!”:

public class HelloWorld {

public static void main(String[] args) { System.out.println(″Hello, world!″); }

(14)

Creación del programa

 Para escribir el programa se usa un editor de texto y se guarda en un

archivo.

 El programa se conoce como

código fuente (source code) y el

archivo es el archivo fuente (source file).

La extensión .java se usa para los

(15)

Creación del programa (cont.)

 La siguiente ventana muestra el

código fuente del programa escrito usando Notepad:

(16)

Creación del programa (cont.)

 La siguiente ventana muestra el código

fuente del programa escrito usando el editor de Eclipse:

(17)

Compilación y ejecución del programa

 Para poder ejecutar (correr) un

programa es necesario traducir el

código fuente a lenguaje de máquina.

Un compilador es un programa que

traduce el código fuente a un código

ejecutable en lenguaje de máquina.La extensión .exe se utiliza

normalmente para indicar que un archivo es ejecutable, pero no en Java.

(18)

Compilación y ejecución del programa

(cont.)

 A diferencia de la mayoría de los

compiladores, el compilador de Java traduce las instrucciones a un código intermedio que se conoce como byte

code.

La extensión .class es usada para

identificar el archivo que contiene la

versión en byte code del archivo fuente.

 Este código intermedio es luego

interpretado y ejecutado por otro programa que se conoce como Java

(19)

Text Editor Java Complier Java Virtual Machine HelloWorldApp.java (Source File) HelloWorldApp.class (Byte Code File) Step 1

Step 2

Step 3

Compilación y ejecución del programa

(cont.)

(20)

Compilación y ejecución del programa

(cont.)

 Existen varias alternativas para

compilar y ejecutar un programa en Java:

Puede hacerse mediante comandos

desde el command prompt del sistema operativo.

Puede hacerse desde un ambiente

integrado de desarrollo (IDE,

(21)

Compilación y ejecución del programa

(cont.)

 En un IDE se integran un editor de

texto, compilador, depurador y

otras herramientas a las cuales se accede por un conjunto de menús.

 Los IDE que más se utilizan para

Java son Eclipse y NetBeans, los cuales estudiaremos en éste y el próximo curso.

(22)

Compilación y ejecución del programa

(cont.)

 Para compilar y ejecutar un programa

desde el command prompt es necesario hacer tres cosas:

1. Indicarle al sistema operativo dónde está

el compilador y el JVM:

set path=C:\Program Files\Java\jdk1.6.0_07\bin

2. Compilar el programa:

javac HelloWorldApp.java

3. Invocar el JVM para ejecutar el

programa:

(23)

Compilación y ejecución del programa

(cont.)

 La siguiente ventana muestra cómo

se compila y ejecuta el programa desde el command prompt:

(24)

Compilación y ejecución del programa

(cont.)

Para compilar y ejecutar un

programa desde Eclipse (un

(25)

Compilación y ejecución del programa

(cont.)

 La siguiente ventana muestra cómo se

compila y ejecuta el programa desde Eclipse:

(26)

Elementos comunes en los lenguajes

de programación

 Los lenguajes de programación,

incluyendo Java, incluyen una serie de elementos comunes:  Palabras reservadas  Identificadores  Signos de puntuación  Operadores  Reglas de Sintaxis

(27)

Elementos comunes en los lenguajes

de programación (cont.)

 Usaremos el siguiente programa

para identificar estos elementos:

public class PayrollApp {

public static void main(String[] args) { int hours = 40;

double payRate = 25.0, grossPay; grossPay = hours * payRate;

System.out.print(″Gross Pay: $″); System.out.println(grossPay);

} }

(28)

Elementos comunes en los lenguajes

de programación (cont.)

Las palabras reservadas

(keywords) tienen un significado especial en el lenguaje.

En el programa aparecen: public,

class, static, void, int y double.

 No pueden ser utilizadas para

ninguna otra cosa que no sea para lo que fueron definidas.

 En Java las palabras reservadas se

escriben usando sólo letras minúsculas.

(29)

Elementos comunes en los lenguajes

de programación (cont.)

Los identificadores son palabras

que el programador utiliza para nombrar cosas tales como

programas, clases, variables y rutinas (métodos), entre otros.

 En el programa aparecen:

PayRollApp, String y System para el programa y otras clases

args, hours, payRate, grossPay y out para las variables

(30)

Elementos comunes en los lenguajes

de programación (cont.)

 En Java los identificadores que

corresponden a las clases

comienzan con letra mayúscula.

 Los identificadores que

corresponden a las variables y a los métodos se escriben comenzando con letra minúscula y usando una letra mayúscula al comienzo de cada nueva “palabra”.

(31)

Elementos comunes en los lenguajes

de programación (cont.)

Java es un lenguaje sensitivo a mayúsculas y minúsculas (case

sensitive).

 Esto quiere decir que todos los

identificadores tienen que escribirse tal como fueron definidos.

Por ejemplo, grossPay y GrossPay

(32)

Elementos comunes en los lenguajes

de programación (cont.)

Los signos de puntuación sirven

propósitos específicos, tales como marcar el final de una instrucción o indicar el

comienzo y el fin de un conjunto de instrucciones.

 En Java las instrucciones terminan con punto y

coma (‘;’).

En Java las cadenas de caracteres (strings) se

colocan dentro de comillas dobles (‘″’).

 En el programa aparecen otros signos de

puntuación tales como las llaves (‘{’ y ‘}’), los paréntesis (‘(’ y ‘)’), los corchetes (‘[’ y ‘]’) y el punto (‘.’).

(33)

Elementos comunes en los lenguajes

de programación (cont.)

Los operadores son símbolos o

que llevan a alguna operación con datos, también conocidos como

operandos.

Algunos ejemplos de operadores aritméticos son:

+ para sumar dos números

- para restar dos números

* para multiplicar dos números

(34)

Elementos comunes en los lenguajes

de programación (cont.)

 Algunos operadores pueden

utilizarse para varias cosas.

Por ejemplo, el operador + puede

ser utilizado para:

 Sumar dos números

 Indicar que un número es positivo  Concatenar (unir) dos cadenas de

caracteres

 A estos operadores se les llama operadores sobrecargados.

(35)

Elementos comunes en los lenguajes

de programación (cont.)

Un operador importante es el =,

que requiere una variable a la izquierda y una expresión a la derecha:

grossPay = hours * payRate;

Este operador, llamado operador de asignación, evalúa la expresión

de la derecha y asigna el resultado a la variable de la izquierda.

(36)

Elementos comunes en los lenguajes

de programación (cont.)

Las reglas de sintaxis indican

cómo escribir correctamente los programas.

 Estas reglas indican cómo se

pueden utilizar las palabras

reservadas y los operadores y cómo los signos de puntuación deben

aparecer.

 Un programa con errores de sintaxis

(37)

Elementos fundamentales de un

programa en Java

 Consideremos de nuevo este

programa:

public class PayrollApp {

public static void main(String[] args) { int hours = 40;

double payRate = 25.0, grossPay; grossPay = hours * payRate;

System.out.print(″Gross Pay: $″); System.out.println(grossPay);

} }

(38)

Elementos fundamentales de un

programa en Java (cont.)

 Todo programa en Java debe tener

por lo menos una clase.

Una clase (class) es un contenedor

de rutinas (llamadas métodos en Java).

 En un archivo fuente se puede tener

más de una clase pero sólo una puede tener el atributo public.

(39)

Elementos fundamentales de un

programa en Java (cont.)

 Cuando un archivo fuente en Java

contiene una clase pública, el

nombre de la clase pública tiene que ser el mismo del archivo.

 En el ejemplo, la clase pública que

representa el programa se llama

PayrollApp.

 Por lo tanto, el archivo fuente se

(40)

Elementos fundamentales de un

programa en Java (cont.)

 La definición de una clase comienza

con un encabezado que contiene la palabra class.

 Todas las definiciones e instrucciones

que pertenecen a una clase están encerrados entre llaves: { }

 Estas definiciones e instrucciones son

conocidas como el cuerpo de la

(41)

Elementos fundamentales de un

programa en Java (cont.)

 En el programa de ejemplo se

definió esta clase:

public class PayrollApp {

cuerpo de la clase PayrollApp }

(42)

Elementos fundamentales de un

programa en Java (cont.)

 Como se indicó anteriormente, una

clase es un contenedor de métodos.

Un método (method) es un

contenedor de instrucciones que llevan a cabo una tarea.

 Toda aplicación tiene que tener un

método principal de nombre main que es el punto de comienzo de la aplicación.

(43)

Elementos fundamentales de un

programa en Java (cont.)

 En el programa de ejemplo se definió

el método main:

public class PayrollApp {

public static void main(String[] args) { cuerpo del método main

} }

El método main siempre lleva el

mismo encabezado.

 Durante el curso se explicarán los

(44)

Elementos fundamentales de un

programa en Java (cont.)

 Los métodos también llevan un

encabezado y el cuerpo del método

(method body) se coloca dentro de llaves.

Los métodos contienen enunciados

(statements) que son las instrucciones que se le dan a la computadora.

 Existen dos tipos principales de

enunciados:

 Enunciados de declaración  Enunciados ejecutables

(45)

Elementos fundamentales de un

programa en Java (cont.)

Los enunciados de declaración

(declaration statements) permiten indicar el tipo de datos, nombre y, posiblemente, un valor inicial para cada variable.

(46)

Elementos fundamentales de un

programa en Java (cont.)

 Nuestro programa contiene los

siguientes enunciados de declaración (resaltados):

public class PayrollApp {

public static void main(String[] args) {

int hours = 40;

double payRate = 25.0, grossPay;

grossPay = hours * payRate;

System.out.print(″Gross Pay: $″); System.out.println(grossPay);

} }

(47)

Elementos fundamentales de un

programa en Java (cont.)

Los enunciados ejecutable

(executable statements) permiten que la computadora lleva a cabo instrucciones tales como:

Obtener un valor del usuario (input)

 Asignarle a una variable el resultado de

una expresión (process)

 Mostrar un valor en la pantalla

(48)

Elementos fundamentales de un

programa en Java (cont.)

 Nuestro programa contiene los

siguientes enunciados ejecutables (resaltados):

public class PayrollApp {

public static void main(String[] args) { int hours = 40;

double payRate = 25.0, grossPay;

grossPay = hours * payRate; // Process

System.out.print(″Gross Pay: $″); // Output System.out.println(grossPay); // Output }

(49)

Los métodos print y println

Java provee la clase System que

contiene una referencia a la pantalla llamada out.

La variable out reconoce los

métodos print y println que se utilizan para mostrar valores en la pantalla (una operación de output).

La clase System es un contenedor

de definiciones y métodos pero no es una aplicación ya que no

(50)

Los métodos print y println (cont.)

Los clase System y los métodos print y

println pertenecen a lo que se denomina

como la Interfaz de Programación de

Aplicaciones (Java API, Application

Programming Interface).

Un API es una biblioteca (library) que

contiene una serie de clases para llevar a cabo ciertas operaciones.

 Las clases y los métodos en el Java API

están disponibles para todos los programas en Java.

(51)

Los métodos print y println (cont.)

Para mostrar en la pantalla (out) el

mensaje:

Programming is Fun!

se puede utilizar el método println de la siguiente manera:

System.out.println(″Programming is Fun!″);

 Como el mensaje es una cadena de

caracteres, éste debe colocarse entre comillas dobles (‘″’).

(52)

Los métodos print y println (cont.)

El método println muestra un

valor en la pantalla y mueve el

cursor al inicio de la próxima línea.

El método print muestra un valor

en la pantalla pero no mueve el cursor.

 Por ejemplo, otra forma de mostrar

el mensaje Programming is Fun! es:

System.out.print(″Programming″); System.out.println(″ is Fun!″);

(53)

Los métodos print y println (cont.)

El método println es una forma

especial del método print.

 Por ejemplo, el siguiente enunciado

System.out.println(″Programming is Fun!″);

es equivalente a

System.out.print(″Programming is Fun!\n″);

 El segundo enunciado utiliza la

secuencia de escape \n (newline)

para indicar que se debe mover el cursor al inicio de la próxima línea.

(54)

Los métodos print y println (cont.)

Existen varias secuencias de escape

(escape sequences) que controlan cómo se muestran los valores en la pantalla

pero las veremos cuando las necesitemos.

La secuencia \n se puede colocar en

cualquier lugar de una cadena de caracteres.

 Por ejemplo,

System.out.println(″Programming\n is Fun!″);

muestra lo siguiente:

Programming is Fun!

(55)

Los métodos print y println (cont.)

 En el programa del ejemplo se

calcula el salario de un empleado asumiendo que trabajó 40 horas, a $25 por hora:

grossPay = hours * payRate;

System.out.print(″Gross Pay: $″); System.out.println(grossPay);

 El resultado saldrá así en la

pantalla:

(56)

Los métodos print y println (cont.)

 Otra forma de mostrar varios valores en

una sola línea es usar el operador +, como muestra este ejemplo:

System.out.println(″Gross Pay: $″ + grossPay);  Cuando uno de los valores es un caracter

o una cadena de caracteres, al operador

+ se le llama concatenación.

 Este operador simplemente une los dos

valores.

 El resultado saldrá así en la pantalla: Gross Pay: $1000.0

(57)

Cajas de diálogo

 Otra forma de mostrar mensajes en la

pantalla es usando cajas de diálogo.

Una caja de diálogo (dialog box) es una

ventana que muestra un mensaje o solicita datos.

 Las principales cajas de diálogo son:

Message Dialog – muestra un mensajeInput Dialog – solicita un valor al usuarioConfirm Dialog – le hace al usuario una

(58)

Cajas de diálogo (cont.)

 A continuación se muestran los tres

tipos de cajas de diálogo:

Message Dialog:

Input Dialog:

(59)

Cajas de diálogo (cont.)

 Para mostrar cajas de diálogo se usan

los métodos showMessageDialog,

showInputDialog y showConfirmDialog.  Estos métodos se definen en la clase

JOptionPane.

Como ocurre con la clase System, la

clase JOptionPane es un contenedor de definiciones y métodos pero no es una aplicación ya que no contiene el método

(60)

Cajas de diálogo (cont.)

 Para tener acceso a la clase

JOptionPane y a sus métodos hay

que colocar la siguiente instrucción al inicio del programa:

import javax.swing.JOptionPane;

 Este enunciado le indica al

compilador de Java dónde se

encuentra la clase JOptionPane.

La clase JOptionPane es parte del

(61)

Cajas de diálogo (cont.)

 Los paquetes permiten agrupar

clases relacionadas y el paquete

javax.swing contiene las clases

que permiten crear aplicaciones con

interfaces gráficas para los usuarios (GUI, Graphical User

(62)

Cajas de diálogo (cont.)

El método main de todo programa

que use cajas de diálogo debe terminar con el siguiente

enunciado:

System.exit(0);

 Este enunciado permite que el

programa termine su ejecución después de cerrar la ventana de diálogo.

(63)

El método showMessageDialog

El método showMessageDialog permite

mostrar un mensaje en una caja de diálogo.

 Por ejemplo:

JOptionPane.showMessageDialog(null,

(64)

El método showMessageDialog

(cont.)

El método showMessageDialog

requiere dos argumentos (valores):

El primero normalmente es null para

que la caja se muestre en el centro de la pantalla

 El segundo es el mensaje

 Existen versiones de este método

que permiten indicar el título y el ícono que se muestran.

(65)

El método showMessageDialog

(cont.)

 El siguiente programa muestra el

mensaje “Hello, World!” usando una caja de diálogo:

import javax.swing.JOptionPane;

public class HelloWorldGUIApp {

public static void main(String[] args) {

JOptionPane.showMessageDialog(null, "Hello, World!"); System.exit(0);

} }

(66)

Documentación interna

 El código fuente de todo programa

debe estar documentado con comentarios descriptivos y

explicativos.

 Los comentarios son anotaciones

que hace el programador para explicar líneas o secciones de código.

 Son para las personas que van a

ver el código ya que el compilador los ignora.

(67)

Documentación interna (cont.)

 Existen tres formas de hacer

comentarios en Java:

 Comentarios de una sola línea

 Comentarios de más de una línea  Comentarios de documentación

(68)

Documentación interna (cont.)

Para escribir un comentario de una sola

línea se usan los símbolos //:

// Esto es un comentario.

Para escribir un comentario de varias

líneas se comienzan con /* y se finaliza

con */:

/*

* Esto es un comentario * de dos líneas.

(69)

Documentación interna (cont.)

 El tercer tipo de comentario se conoce en

Java como comentario de

documentación.

 Se usan para describir las clases y los

métodos.

 Esta forma de comentario comienza con

/** y termina con */

/**

* Esto es un comentario de

* documentación de dos líneas. */

(70)

Documentación interna (cont.)

/**

* This program computes the gross pay for an employee * that works 40 hours at $25 an hour.

* @author Tony Gaddis

* @version 1.0, September 08, 2008 */

public class PayrollApp {

/**

* The application's entry point. */

public static void main(String[] args) {

/*

* Declare the numbers of hours worked during the * week, the pay rate and the gross pay.

*/

int hours = 40;

double payRate = 25.0, grossPay;

// Compute and display the gross pay.

grossPay = hours * payRate;

(71)

Documentación interna (cont.)

 Como se puede observar en el

programa anterior, los comentarios de documentación pueden contener unas etiquetas precedidas por el

símbolo @.

@author – permite indicar el nombre del

autor del programa

@version – permite indicar la versión y

la fecha del programa

 Estas etiquetas son procesadas por

(72)

Documentación externa y javadoc

 Los comentarios de documentación

pueden ser leídos y procesados por

javadoc, un programa que viene

en el JDK.

javadoc puede leer el código fuente

(source code) y generar archivos en HTML que documentan el código

(73)

Documentación externa y javadoc

(cont.)

Los archivos generados por javadoc

pueden ser vistos con un browser como Internet Explorer o Firefox.

La herramienta javadoc puede

ejecutarse desde el command

prompt y desde Eclipse.

Desde el command prompt se

puede ejecutar javadoc así:

(74)

Documentación externa y javadoc

(cont.)

 Desde Eclipse, se puede ejecutar javadoc seleccionando Project – Generate Javadoc.  El documento generado se almacenará en un folder llamado doc.

(75)

Documentación externa y javadoc

(cont.)

 A continuación se muestra la documentación

(76)

Documentación externa y javadoc

(cont.)

 Además de la documentación

generada por javadoc, cualquier otro manual que escriba el

programador y que no forme parte del código fuente constituye la

documentación externa del

programa.

 Este tipo de documentación externa

incluye los manuales de análisis, diseño y operación del programa.

Referencias

Documento similar

Volviendo a la jurisprudencia del Tribunal de Justicia, conviene recor- dar que, con el tiempo, este órgano se vio en la necesidad de determinar si los actos de los Estados

Aunque soy consciente de que es una propuesta discutible creo que es mucho más productivo que esforzarse en desarrollar nuevas teorías desde nuestro propio campo acudir

Tras establecer un programa de trabajo (en el que se fijaban pre- visiones para las reuniones que se pretendían celebrar los posteriores 10 de julio —actual papel de los

Por PEDRO A. EUROPEIZACIÓN DEL DERECHO PRIVADO. Re- laciones entre el Derecho privado y el ordenamiento comunitario. Ca- racterización del Derecho privado comunitario. A) Mecanismos

Porcentaje de radiación solar interceptada (RSI; 0,35 - 2,5 µm) y de radiación fotosintéticamente activa interceptada (RFAI) a lo largo del ciclo de cultivo para las

Parallel processes typically need to exchange data.. There are several ways this can be accomplished, such as through a shared memory bus or over a network, however the actual

“La unificación de la clasificación de empresas otorgada por las CC.AA.”, “La unificación de criterios en la acreditación de los servicios de prevención de riesgos

En cuarto lugar, se establecen unos medios para la actuación de re- fuerzo de la Cohesión (conducción y coordinación de las políticas eco- nómicas nacionales, políticas y acciones