12/10/2016
Edificio Eléctrica
1
12/10/2016
2
12/10/2016
2
12/10/2016
3
12/10/2016
Deberes/consultas breves.
10%
10%
Prueba (s) rápidas. (15 min)
15%
15%
Prueba en laboratorio sobre el desarrollo de un programa
25%
Evaluación escrita o práctica (laboratorio)
25%
Desarrollo y defensa de un proyecto de software.
25%
25% 25% 25%
4
12/10/2016
22 personas
5 grupos
En los grupos deben haber por lo menos 1 de 1era matrícula
3 grupos de 4 2 grupos de 5
5
12/10/2016
6
12/10/2016
Java es un lenguaje de programación creado por Sun Microsystem S.A. a principios de los años 90.
Se creó como una herramienta de programación para Set-topbox para el Green-Project de Sun Microsystem.
Creado para uso con electrodomésticos
Desarrollaron un código neutro que no dependía del electrodoméstico => MAQUINA HIPOTÉTICA VIRTUAL
7
12/10/2016
Sencillo
Orientado a Objetos
Distribuido
Interpretado
Robusto
Seguro
Arquitectura neutra
Multithread (multihilo)
Similar en sintaxis a C/C++ y en semántica a SmallTalk
Elimina ciertas características de C y C++:
Punteros Referencia. No usa typedef y #define. No sobrecarga operadores. Los datos son tratados como objetos y con
interfaces a los objetos.
8
12/10/2016
Desarrollado para trabajar en un entorno conectado en red.
Proporciona librerías y herramientas para que los programas puedan ser distribuidos.
Traduce código fuente a código intermedio.
No
se interrumpe fácilmente.
Evita sobre escribir o corromper memoria mediante punteros.
Manejo
de excepciones.
Aplicaciones seguras ya que no acceden a zonas delicadas de memoria o de sistema.
El
código es compilado a un fichero objeto de formato independiente de la arquitectura de la máquina en que se ejecutará.
Ejecución de varias tareas en forma simultánea. Proporciona una serie de clases que facilitan su utilización. Mejor rendimiento interactivo y mejor comportamiento en tiempo real.
9
12/10/2016
1. Debería usar la metodología de la 2. Debería permitir la ejecución de . 3. Debería incluir por defecto
.
4. Debería diseñarse para . 5. Debería y tomar lo mejor de otros lenguajes orientados a objetos, como C++.
ProgramaJava APIJava M áquinaVirtual deJava
Plataform a Java
Plataform abasadaenhardw are
10
12/10/2016
Máquina que emula por software a una máquina real.
Ejecuta programas compilados en Java.
Dispone
de un thread (hilo) que rastrea las operaciones de
memoria.
Es
un conjunto de funciones, procedimientos o clases que un sistema operativo, librería o servicio proporciona para soportar peticiones realizadas por un programa.
Es
un entorno básico, proporciona un compilador, herramientas, módulos de ejecución y la API de Java. Estos elementos permiten al usuario escribir, probar, implementar y ejecutar applets y aplicaciones.
Está
compuesto por el
y el
Es una plataforma multiusuario y distribuida.
Permite crear aplicaciones para empresas que proveen servicios en la Web.
11
12/10/2016
Es
un conjunto de tecnologías y especificaciones destinados a dispositivos embebidos, tales como: celulares, PDA, impresoras, TV.
Es
el software que se requiere para ejecutar cualquier
aplicación desarrollada en Java.
Es una distribución en la cual reside el JRE, contiene herramientas como el compilador, el generador de documentación (javadoc), el depurador, etc.
12
12/10/2016
Analiza
la sintaxis del código fuente.
Análisis
sintáctico: Estructura de las líneas de código.
Análisis
semántico: El significado de la línea programada.
Si
no existen errores genera bytecodes.
Ejecuta Los
bytecodes creados por el compilador.
bytecodes tiene extension .class.
13
12/10/2016
Un es un traductor que toma el programa fuente y lo traduce y ejecuta línea a línea. Basic, Java, Smalltalk.
Un Compilador de un programa que traduce los programas escritos en lenguaje de alto nivel a lenguaje máquina. C, C++, Pascal, Fortran, Cobol.
Programa Fuente
Programa Fuente
Intérprete
Compilador
Traduc.y ejec. Línea a línea
Programa Objeto
14
12/10/2016
Entorno
de trabajo integrado para facilitar el proceso completo de desarrollo de aplicaciones.
Incluye
soporte para: Diseño Programación Documentación Verificación
Existen
entornos de distribución libre como: Netbeans Eclipse
Productos
comerciales: JBuilder JCreatorPro
15
12/10/2016
Contiene: Editor
de código Compilador Depurador Constructor de interfaz gráfica
GUI
16
12/10/2016
Descargar
el paquete. Instalar de JDK. Instalar Eclipse. JRE (JVM, Librerías) JDK (Compilador, generador De código, debugger)
Seleccionar
carpeta de trabajo (workspace) File > Switch WorkSpace
17
12/10/2016
Java: http://docs.oracle.com/javase/8/
Creación de un proyecto Codificación Depuración Ejecución
18
12/10/2016
19
12/10/2016
20
12/10/2016
21
12/10/2016
En eclipse se pueden establecer puntos de interru interrupci pción ón (break (breakpoi points nts)) con el fin de analizar errores, en caso de que existan.
22
12/10/2016
23
12/10/2016
24
12/10/2016
….
25
12/10/2016
Sensible a mayúsculas/minúsculas.
Soporta comentarios.
Emplea identificadores, variables y constantes.
Incluye palabras reservadas.
Tiene reglas sobre tipos de datos.
26
12/10/2016
Nombres que se asignan a variables, métodos, clases y objetos. El primer caracter puede ser: A-Z, a-z, _ , $. No se permite vocales acentuadas ni la letra ñ.
Un identificador no puede ser una palabra reservada.
27
12/10/2016
•
•
•
•
Boolean
Char
byte,
short, int, long
float, double
Son punteros a objetos
Zona de memoria cuyos valores van a cambiar durante la ejecución.
;
Zona de memoria cuyos valores no cambian.
final = ;
28
12/10/2016
double promedio = 10.0/4.0; int promedio = 10/5; int promedio = 10 /3; double promedio = 7/3;
String cadena = 5; //
int a = 2; double a = 2; int a = 4.56; int a = (int) 4.56; double a = 2/3; double a = 2/3.0; double a = (double) 2/3;
29
12/10/2016
String numero = 5; String numero = Integer.toString(5); String numero = “” + 5;
– int numero = “5”; – int numero = Integer.parseInt (“5”);
30
12/10/2016
+ * / = > <
Suma Resta Multiplicación División Equivalente Mayor que Menor que
31
12/10/2016
+= -= *= /= %=
a+=b A-=b a*=b a/=b a%=b
a=a+b a=a-b a=a*b a=a/b
& | ^ ~
AND OR XOR NOT
32
12/10/2016
Son usados para marcar el final de una instrucción o indicar el comienzo y el fin de un conjunto de instrucciones.
Las instrucciones terminan con punto y coma
Las cadenas de caracteres (strings) se colocan dentro de comillas dobles ( ).
Las llaves , los paréntesis usan para segmentar código.
, los corchetes
se
Primera letra en minúscula y la primera letra de cada palabra en mayúscula. contador, numeroAccesos
Todo en mayúsculas, si tiene dos palabras se separa cada palabra por _. PI
DIMENSION_FIGURA
Primera letra en mayúscula de cada palabra. Empleado, EstadoDeCuentas
33
12/10/2016
34
12/10/2016
35
12/10/2016
36
12/10/2016
37
12/10/2016
Termina un lazo sea while o For
38
12/10/2016
Termina la iteración en curso de una lazo (while o for) y pasa directamente a la prox. iteración
Termina la iteración en curso de una lazo (while o for) y pasa directamente a la prox. iteración
39
12/10/2016
Permiten ejecutar múltiples veces unas instrucciones.
La cantidad de veces se puede establecer mediante:
40
12/10/2016
41
12/10/2016
42
12/10/2016
Debe usarse para lazos con variables de control y de una manera uniforme.
Es conveniente declarar la variable de control en el lazo.
Es conveniente que la expresión de incremento sea eso.
Es conveniente que la expresión de permanencia sea simple
Nunca cambiar el valor de la variable de control en las instrucciones
43
12/10/2016
44
12/10/2016
45
12/10/2016
46
12/10/2016
•
47
12/10/2016
El acceso a los elementos del arreglo se realiza mediante un índice encerrado en corchetes.
Si el nombre del array es , entonces ] es el nombre del elemento que está en la posición es el nombre del elemento que está en la posición , etc.
. =
= y
, ] =
=
,
=
,
=
,
.
48
12/10/2016
•
Todo arreglo tiene una variable llamada contiene la longitud de dicho arreglo
que
49
12/10/2016
50
12/10/2016
•
51
12/10/2016
Permiten construir programas modulares.
Programas grandes construidos en base a pequeños métodos.
Pueden ser desarrollados y probados de manera individual.
Permiten reusar código evitando redundancia.
El usuario no necesita conocer cómo fue implementado (Abstracción)
52
12/10/2016
Tipo de retorno
Nombre de la función
Argumentos de entrada
Llamada a la Función
Función
53
12/10/2016
Función
Llamada a la Función Llamada a la Función
54
12/10/2016
55
12/10/2016
56
12/10/2016
Existen dos tipos de subprogramas: Funciones y procedimientos.
Pasaron a llamarse métodos con la programación orientada a objetos.
Representa una porción de código agrupada con un
Puede ser llamado cuantas veces se requiera.
Un procedimiento puede recibir parámetros de entrada
Si puede imprimir en pantalla o salida.
57
12/10/2016
Dado que no retornan valor, todos ellos deben utilizar la palabra reservada
58
12/10/2016
Crear un procedimiento llamado hola que despliegue por pantalla “hola todos”.
Crear un procedimiento llamado saludo que reciba un parámetro de tipo String llamado nombre e imprima un mensaje con el siguiente formato “Hola + (valor de la variable nombre)”.
Crear un procedimiento que reciba un número e imprima todos los números entre el cero y dicho número incluyendo los extremos, si el número ingresado es cero o menor debe imprimir “error”.
Crear un procedimiento que reciba dos números positivos, identifique el menor de ellos e increméntelo de 10% en 10% hasta llegar al número más alto posible antes de alcanzar al mayor de ellos, e imprima cada uno de los incrementos realizados.
Crear un procedimiento que simule el comportamiento de un reloj digital, imprima desde las 00:00 hasta las 23:59 avanzando en intervalos de minuto
Una función es muy similar a un procedimiento, con la salvedad de que puede retornar algún valor.
La función utiliza la palabra reservada retorno del resultado del proceso.
siempre debe estar presente y su ejecución también significa el final de la función.
Una vez que se retorna el resultado significa que la función ha finalizado
La función puede retornar cualquier tipo de datos conocido por el lenguaje
para realizar el
59
12/10/2016
1. Cálculo de la edad. 2. Generación del correo. 3. Presentación de la persona en impresión
60
12/10/2016
Para unir todo el método será el encargado llamar a todas las funciones y dar el orden lógico de e jecución.
61