• Like
Introduccion java
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Introduccion java

  • 117 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
117
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
3
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 1 2. Introducción a la Programación en Java Algoritmos y Desarrollo de Programas I
  • 2. 2 2 Objetivos  Cuando finalice esta lecció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. 3 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. 4 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. 5 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. 6 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. 7 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 browser, que llaman HotJava.
  • 8. 8 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 primera versión pública, Java 1.0.
  • 9. 9 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. 10 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 contiene un applet.
  • 11. 11 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. 12 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. 13 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. 14 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 archivos fuente en Java.
  • 15. 15 15 Creación del programa (cont.)  La siguiente ventana muestra el código fuente del programa escrito usando Notepad:
  • 16. 16 16 Creación del programa (cont.)  La siguiente ventana muestra el código fuente del programa escrito usando el editor de Eclipse:
  • 17. 17 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. 18 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 Virtual Machine (JVM).
  • 19. 19 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. 20 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, Integrated Development Enviroment).
  • 21. 21 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. 22 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 FilesJavajdk1.6.0_07bin 2. Compilar el programa: javac HelloWorldApp.java 3. Invocar el JVM para ejecutar el programa: java HelloWorldApp
  • 23. 23 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. 24 24 Compilación y ejecución del programa (cont.)  Para compilar y ejecutar un programa desde Eclipse (un IDE), se presiona el botón Run:
  • 25. 25 25 Compilación y ejecución del programa (cont.)  La siguiente ventana muestra cómo se compila y ejecuta el programa desde Eclipse:
  • 26. 26 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. 27 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. 28 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. 29 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  main y println para los métodos
  • 30. 30 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. 31 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 serían dos identificadores distintos.
  • 32. 32 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. 33 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  / para dividir dos números
  • 34. 34 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. 35 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. 36 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 no puede compilarse ni ejecutarse.
  • 37. 37 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. 38 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. 39 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 tiene que llamar PayrollApp.java
  • 40. 40 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 clase (class body).
  • 41. 41 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. 42 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. 43 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 componentes de este encabezado.
  • 44. 44 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. 45 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. 46 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. 47 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 (output)
  • 48. 48 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. 49 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 contiene el método main.
  • 50. 50 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. 51 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. 52 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. 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. 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(″Programmingn is Fun!″); muestra lo siguiente: Programming is Fun!
  • 55. 55 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: Gross Pay: $1000.0
  • 56. 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. 57 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 mensaje  Input Dialog – solicita un valor al usuario  Confirm Dialog – le hace al usuario una pregunta de tipo Sí/No/Cancelar
  • 58. 58 58 Cajas de diálogo (cont.)  A continuación se muestran los tres tipos de cajas de diálogo:  Message Dialog:  Input Dialog:  Confirm Dialog:
  • 59. 59 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 main.
  • 60. 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 paquete javax.swing.
  • 61. 61 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 Interface).
  • 62. 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. 63 63 El método showMessageDialog  El método showMessageDialog permite mostrar un mensaje en una caja de diálogo.  Por ejemplo: JOptionPane.showMessageDialog(null, ″This is a message dialog box.″);
  • 64. 64 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. 65 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. 66 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. 67 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. 68 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. 69 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. 70 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; System.out.println("Gross Pay: $" + grossPay); }
  • 71. 71 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 una herramienta llamada javadoc.
  • 72. 72 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 externamente.
  • 73. 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í: javadoc PayrollApp.java
  • 74. 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. 75 Documentación externa y javadoc (cont.)  A continuación se muestra la documentación generada:
  • 76. 76 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.