Diapositivas de los dos primeros días del curso de "Introducción a la programación" para el Máster IPECC de Desarrollo de Videojuegos para Dispositivos Móviles de la Universidad de Alcalá.
Con la participación de Electronic Arts En colaboración con la Universidad de Alcalá Módulo 4: Creación y diseño de videojuegos móviles Introducción
a
la
programación
5
Introducción
a
la
programación
–
Enrique
López
Mañas
Conceptos
clave:
lenguaje
• Idioma
ar?ficial
para
expresar
procesos
computacionales
• Diferentes
lenguajes
• Diferentes
?pos
6
Introducción
a
la
programación
–
Enrique
López
Mañas
Conceptos
clave:
entorno
• Conjunto
de
herramientas
de
desarrollo
• No
sólo
programación
• Diferentes
entornos
para
diferentes
lenguajes
• SDK’s
8
Introducción
a
la
programación
–
Enrique
López
Mañas
Conceptos
clave:
compilar
• Compilar:
conver?r
el
programa
(código
fuente)
en
una
aplicación
(fichero
ejecutable)
• Diferentes
plataformas
de
compilación.
• (Generalmente)
código
depende
de
la
plataforma
11
Introducción
a
la
programación
–
Enrique
López
Mañas
Introducción
a
la
programación
• Variables
• Funciones
• Tipos
de
datos
• Operadores
• Expresiones
y
sentencias
• Estructuras
de
control
• Estructuras
de
datos
• Excepciones
• OO
(Orientación
a
objetos)
35
Introducción
a
la
programación
–
Enrique
López
Mañas
Ejercicio
• Abrir
Eclipse
• Crear
un
método
que
sume
dos
números
y
los
escriba
con
System.out.println();
39
Introducción
a
la
programación
–
Enrique
López
Mañas
Estructuras
de
control
• Ejecutan
código
basándose
en
condiciones
• „Si
ocurre
X,
entonces
haz
Y.
Si
no,
haz
Z“
• „Haz
X
hasta
que
ocurra
Y“
• „Haz
X
mientras
ocurra
Z“
44
Introducción
a
la
programación
–
Enrique
López
Mañas
Ejercicio
• Abrir
Eclipse
• Declarar
una
variable
x
con
valor
igual
a
50.
• Reducir
su
valor
mediante
un
bucle
„while“
y
un
bucle
„for“
hasta
0.
46
Introducción
a
la
programación
–
Enrique
López
Mañas
Estructuras
de
Datos
• No
sólo
datos
primi?vos
–
Hay
datos
complejos
• Arrays
• Tipos
complejos
de
Java
• (Más
adelante)
Tipos
definidos
por
el
usuario
49
Introducción
a
la
programación
–
Enrique
López
Mañas
Ejercicio
• Rellenar
un
array
de
dos
dimensiones
usando
dos
bucles
for
y
pintar
los
valores
por
pantalla
51
Introducción
a
la
programación
–
Enrique
López
Mañas
Ejercicio
• Rellenar
un
ArrayList
con
los
datos
que
teníamos
en
el
array
del
ejercicio
anterior.
52
Introducción
a
la
programación
–
Enrique
López
Mañas
Estructuras
de
datos
• Clases
personalizadas
(introducción
muy
rápida)
• Uso
de
OO.
• Creación
de
clases
mul?-‐atributo
complejas
con
propios
métodos
55
Introducción
a
la
programación
–
Enrique
López
Mañas
Orientación
a
Objetos
(POO)
• Paradigma
de
desarrollo
básico
• Permite
representar
sistemas
complejos
• Objetos:
elemento
con
atributos
y
comportamiento
• Reu?lización,
conexión
entre
sistemas
56
Introducción
a
la
programación
–
Enrique
López
Mañas
Orientación
a
Objetos
(POO)
• Otra
idea:
descomponer
programas
en
piezas
más
pequeñas
y
manejables
(un
coche
se
compone
de
ruedas,
volante,
etc)
• Nuestros
objetos
serán
„Clases“
63
Introducción
a
la
programación
–
Enrique
López
Mañas
Ejercicio
• Diseñar
y
programar
clases
para
representar
una
empresa
que
con?ene
trabajadores
(usar
array
o
ArrayList)
64
Introducción
a
la
programación
–
Enrique
López
Mañas
Orientación
a
Objetos
(POO)
• Conceptos:
– Encapsulación:
organización
de
datos
y
métodos
– Herencia:
creación
de
clases
a
par?r
de
otras
ya
existentes
– Polimorfismo:
(varias
formas)
sobrecarga
de
métodos
con
mismo
nombre
y
dis?nta
funcionalidad.
65
Introducción
a
la
programación
–
Enrique
López
Mañas
Orientación
a
Objetos
-‐
Herencia
• Mecanismo
para
extender
clases
a
casos
más
par?culares.
• Ejemplo:
– Un
edificio
à
Un
hospital
– Un
vehículo
à
una
furgoneta
– Un
persona
à
un
niño
66
Introducción
a
la
programación
–
Enrique
López
Mañas
Orientación
a
Objetos
-‐
Herencia
• La
clase
hija
hereda
de
la
clase
padre.
• Puede
sobreescribir
o
ampliar
sus
métodos.
• Hereda
todos
los
atributos.
• Una
„furgoneta“
es
también
un
„vehículo“
• Herencia
simple
68
Introducción
a
la
programación
–
Enrique
López
Mañas
Ejercicio
• Crear
la
clase
Taxista,
que
hereda
de
persona.
• El
taxista
?ene
licencia
• El
taxista
?ene
un
coche.
• Crear
programa
de
ejemplo
69
Introducción
a
la
programación
–
Enrique
López
Mañas
Orientación
a
objetos
–
Clases
abstractas
• No
se
pueden
crear
objetos
de
clases
abstractas.
• Se
usan
para
representar
„ideas“
o
„conceptos“
73
Introducción
a
la
programación
–
Enrique
López
Mañas
Acceso
en
Java
Misma clase Otra clase mismo paquete Subclase de otro paquete Otra clase de otro paquete public X X X X protected X X X default X X private X
Con la participación de Electronic Arts En colaboración con la Universidad de Alcalá Gracias
por
su
atención
Contacto
para
dudas
y
sugerencias
Enrique
López
Mañas
[email protected] @eenriquelopez