Sei sulla pagina 1di 49

Conceptos fundamentales de Java

2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

Objetivos
En esta leccin se abordan los siguientes objetivos:
Comparar y definir una animacin y un escenario
Escribir un guin grfico
Crear un diagrama de flujo de un guin grfico
Describir la herencia y cmo se transmiten los rasgos
de las superclases a las subclases

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

Objetivos
En esta leccin se abordan los siguientes objetivos:
Describir cmo implantar la abstraccin de procedimientos
Demostrar cmo declarar un procedimiento
Identificar y utilizar tcnicas de abstraccin de
procedimientos para simplificar el desarrollo de la animacin

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

Movimiento de objetos
Los animadores profesionales comienzan su proceso con el
desarrollo de un escenario, o una historia, que proporciona
un objetivo a la animacin.
Ejemplos:

Una historia que representa un conflicto y una resolucin.


Una leccin que ensea un concepto matemtico.
Un proceso para simular o demostrar.
Un juego para entretenimiento o formacin.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

Ejemplos de escenarios y animaciones


Definir el escenario, y la animacin para representar el escenario,
es el primer paso de la programacin de la animacin.
Tipo de escenario Escenario

Animacin

Historia

Un gato necesita ayuda para


bajar de un rbol.

Un bombero sube al rbol para


salvar al gato.

Leccin

Memorizar smbolos qumicos


es difcil.

Un juego cronometrado para


hacer coincidir smbolos
qumicos con sus definiciones.

Proceso

Un coche tiene un neumtico


desinflado.

Una demostracin que muestre


cmo cambiar un neumtico en
un coche virtual.

Juego

Un avin debe evitar los


objetos que se encuentran en
su ruta conforme vuela.

Un juego interactivo para pilotar


un avin alrededor de los
objetos del cielo.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

Qu es un guin grfico?
Un guin grfico identifica las especificaciones de diseo del
escenario de la animacin: Aspecto de los objetos, cmo se
mueven, hablan, interactan, etc.
Una vez definido el escenario, se puede comenzar a
desarrollar el guin grfico de la animacin.
Para planificar una animacin se utilizan dos tipos de guiones
grficos:
Visual: Muestra una serie de imgenes ilustradas que representan las
principales escenas de la animacin.
Textual: Lista detallada y ordenada de las acciones que realiza cada uno
de los objetos en cada escena de la animacin.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

Formatos de guin grfico


Los guiones grficos se crean en los siguientes formatos:
Elaborados con papel y lpiz.
Creado mediante herramientas digitales como un programa de
procesamiento de textos, programa de dibujo o pintura, o una
presentacin.
Creado mediante comentarios en el editor de cdigos de Alice 3.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

Guiones grficos visuales


El guin grfico visual ayuda al lector a comprender:

Los componentes de una escena.


La configuracin de la escena inicial.
Los objetos en movimiento y estticos de la escena.
Las acciones que se llevarn a cabo.
Las interacciones del usuario que se producirn durante la ejecucin
de la animacin.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

Ejemplo de guin grfico visual

Chico y chica sentados en


un banco del parque. El
chico se va, pero deja en el
banco su telfono.

La chica ve el telfono
mvil. Ella piensa: "Hey!
That boy forgot his phone!"

JF 2-5
Declaracin de procedimientos

La chica dice en voz alta:


"Hey! You forgot your
phone!" El chico se gira y
vuelve al banco. l dice:
"Oh! thank you!".

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

10

Guiones grficos textuales


Un guin grfico textual ayuda al lector a comprender las
acciones que se llevarn a cabo durante la animacin.
Los objetos en movimiento y estticos se pueden identificar
fcilmente dentro de las sentencias de accin, pero puede ser
necesaria una descripcin ms detallada si tambin
participan otros programadores en la implantacin de
cualquier escena.
Un algoritmo es una lista de acciones para llevar a cabo una tarea o
resolver un problema. En informtica, un guin grfico textual es un
algoritmo.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

11

Ejemplo de guin grfico textual 1


Programar las siguientes acciones en orden:
Chico y chica sentados en un banco del parque.
El chico se pone de pie y se aleja, dejando su telfono celular en el
banco del parque.
La chica dirige la mirada hacia el telfono.
La chica piensa: "Hey! That boy forgot his phone!"
La chica dice en voz alta: "Hey! You forgot your phone!"
El chico se detiene y gira.
El chico regresa caminando hacia el banco del parque y dice: "Oh!
Thank you!".

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

12

Ejemplo de guin grfico textual 2


En este ejemplo se muestra cmo puede desarrollar el guin
grfico escribiendo en primer lugar comentarios en el editor
de cdigos del programa.
Posteriormente, puede desarrollar la animacin directamente
a partir del guin grfico.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

13

Componentes del guin grfico textual


Componente

Definicin

Ejemplos

Escena

Lugar (o "mundo" en Alice 3) donde se


desarrolla la historia.

Parque, biblioteca,
escuela, hogar

Objetos

Personajes en movimiento o estticos


que se programan para moverse y
actuar.

Animales, coches,
personas, rboles

Acciones

Instrucciones sobre cmo debe actuar


cada objeto en la escena.

Caminar 2 metros, girar a


la izquierda, decir: "Hello!"

Interacciones
del usuario

Formas en que el usuario que est


visualizando la animacin puede
manipular los objetos de la animacin.

Comandos del teclado o


clics del mouse para hacer
que los objetos se muevan

Especificaciones
de diseo

Cmo se deben mostrar los objetos y


el escenario en la animacin.

Tamao, posicin,
ubicacin, color

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

14

Creacin de un diagrama de flujo de un


guin grfico
La creacin de un diagrama de flujo de un guin grfico lo
ayudar a organizar el flujo de las acciones y condiciones de
la animacin.
Verdadero
La chica dice: "Hey
you forgot phone"

El chico deja
el telfono
en el banco

El chico se detiene, gira,


vuelve al banco, dice:
"Thank you"
JF 2-5
Declaracin de procedimientos

Falso
La chica no hace nada

El chico contina
caminando
Fin

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

15

Uso de guiones grficos para organizar


el programa
Los guiones grficos textuales se pueden utilizar para generar
sentencias de comentarios del programa y organizar el
desarrollo del programa.
Los guiones grficos tambin pueden ayudar a los
programadores a identificar acciones repetitivas de un objeto
y acciones idnticas que pueden realizar varios objetos.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

16

Caractersticas hereditarias
Vamos a examinar cmo un dlmata hereda sus
caractersticas:
Las caractersticas de la clase Dog (clase principal o "superclase")
incluyen cuatro patas, dos ojos, pelo y la capacidad de ladrar.
Las caractersticas de la clase de raza Dalmatian (clase secundaria o
"subclase", que es un subjuego de la clase Dog) incluyen piel blanca,
puntos negros y otras caractersticas.
Clase Dog (superclase)
Clase Dalmatian
(subclase)

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

17

Herencia de clases
Al igual que los animales en el mundo real, los objetos en el
mundo de la programacin heredan las caractersticas de su
clase, incluidos todos los mtodos (procedimientos y
funciones) de la clase.
Por ejemplo, todos los objetos de la clase de cuadrpedos de
Alice heredan las caractersticas de los cuadrpedos de cuatro
patas, una cabeza, un cuerpo, etc.
Dentro de esta superclase de cuadrpedos, existen subclases
para perros, gatos, lobos, leones, vacas, etc.
Cada subclase agrega caractersticas que identifican ms
especficamente a los objetos dentro de ella.
JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

18

Identificacin de comportamientos
repetitivos en el guin grfico
Comprender que las subclases pertenecen a superclases le
ayudar, como programador, a identificar comportamientos
repetitivos en el guin grfico.
Por ejemplo:
Si desea programar un perro, un gato y un len caminando, debe
programar el comportamiento repetitivo de caminar en el nivel de
superclase, o cuadrpedo.
El resultado es que todas las subclases (perro, gato, len) pueden
utilizar la caracterstica hereditaria de caminar y no tiene que
programar el comportamiento repetitivo de caminar para cada uno
de los objetos de forma individual.
JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

19

Herencia
Cuando se crea un objeto Dalmatian, hereda los
procedimientos, las funciones y las propiedades de la clase
de cuadrpedo y la subclase Dalmatian que puede ver en el
editor de cdigos.
Herencia significa que cada objeto de
la subclase hereda las propiedades y
mtodos de su superclase.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

20

Creacin de mtodos hereditarios


Adems de los mtodos predefinidos, puede crear sus
propios mtodos y que se muestren, o estn disponibles
para, cualquier objeto de la subclase.
Los mtodos hereditarios se mostrar siempre al principio
de la lista de mtodos predefinidos una vez que se crean.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

21

Separador myFirstMethod
El separador myFirstMethod se muestra por defecto cuando
se abre el editor de cdigos.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

22

Jerarqua de clases
Hacer clic en el men desplegable de jerarquas de clase a la
izquierda del separador myFirstMethod (indicado con una
flecha que apunta hacia abajo) para ver la lista de clases y
subclases de la animacin.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

23

Visualizacin de los mtodos de clase


Seleccionar una superclase o subclase para ver los
procedimientos, las funciones y las propiedades definidos
en la clase seleccionada.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

24

Abstraccin de procedimientos
Revisar el cdigo existente o el guin grfico textual para
identificar y planificar los mtodos que necesite declarar en
el programa.
Es posible que sea necesario implantar la abstraccin
procesal si un objeto de Alice tiene que realizar una accin,
pero no hay ningn procedimiento hereditario que la realice.
Identificar un comportamiento repetitivo y crear un mtodo
para este:
Simplifica el cdigo, lo que facilita su lectura.
Permite que varios objetos de una clase utilicen el mismo mtodo.
Permite que las subclases de una superclase utilicen el mtodo.
JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

25

Abstraccin de procedimientos definida


Un ejemplo de abstraccin de procedimientos es la extraccin
de una sentencia de programacin repetitiva o prolongada de
myFirstMethod y su colocacin en su propio mtodo para que
el cdigo sea ms fcil de leer, comprender, y la reutilizar por
parte de varios objetos y varias clases.
La abstraccin de procesos es el proceso de bsqueda de cdigo de
programacin, con la identificacin de sentencias de programacin
repetitivas y su extraccin para sus propios mtodos, lo que facilita su
compresin y uso.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

26

Ejemplo 1 de abstraccin de procesos


Uno o varios objetos pueden realizar el mismo movimiento
repetitivo.
Para la animacin de un pez nadando, es necesaria la escritura
de varios procedimientos repetitivos que se deben repetir para
cada uno de los peces de la escuela, lo que ocupa una gran
cantidad de espacio en myFirstMethod.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

27

Ejemplo 2 de abstraccin de procesos


A veces, un procedimiento necesario para realizar una accin
no est disponible por defecto.
Por ejemplo, un pjaro necesita volar, pero no hay ningn
procedimiento fly disponible para los objetos de pjaro.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

28

Cundo se produce la abstraccin


de procesos
La abstraccin de procesos se puede producir antes o
despus de crear las sentencias de programacin.
Sin embargo, al desarrollar el guin grfico en primer lugar,
el programador puede identificar ms fcilmente los
procedimientos que sern necesarios antes de que
comience la programacin.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

29

Ejemplos de cundo se debe declarar


un procedimiento
Declarar un procedimiento cuando:
Los movimientos no tienen un procedimiento por defecto, como un
pjaro volando.
Varios objetos o varias clases necesitan utilizar movimientos, como por
ejemplo, los cuadrpedos para dar saltos hacia arriba y hacia abajo.
Movimientos simples necesitan muchas sentencias de programacin,
como por ejemplo una persona que mueva las partes del cuerpo al
caminar.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

30

Ejemplo 1 de declaracin de un
procedimiento
Para volar, un pjaro gira sus hombros y avanza al mismo
tiempo. Este movimiento repetitivo se puede extraer a su
propio procedimiento de vuelo.
Do together:

Do together:

Bird turns right shoulder backward


Bird turns left shoulder backward
Bird moves forward

Bird flies
Bird moves forward

Do together:
Bird turns right shoulder forward
Bird turns left shoulder forward
Bird moves forward
JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

31

Ejemplo 2 de declaracin de un
procedimiento
Cada objeto bunny se mueve hacia arriba y hacia abajo para
simular un movimiento de salto.
Este movimiento repetitivo utilizado por todos los objetos
bunny se puede extraer a su propio procedimiento de salto.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

32

Pasos para declarar un procedimiento


En la jerarqua de clases, seleccionar la clase que debe
heredar el procedimiento.
Todas las subclases heredarn el procedimiento tambin.
(Estas se insertan con sangrado bajo su superclase.)
Hacer clic en el botn Add Procedure.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

33

Pasos para declarar un procedimiento


Especificar un nombre para el procedimiento y hacer clic en
OK.
Se abrir un nuevo separador con el nombre del
procedimiento.
Escribir el cdigo para el procedimiento.
Agregar el nuevo procedimiento a myFirstMethod
directamente, de modo que cuando se pruebe la animacin
en myFirstMethod, se pruebe tambin la animacin en el
nuevo procedimiento.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

34

Pasos para agregar el procedimiento al


separador myFirstMethod antes de la
programacin
Hacer clic en el separador myFirstMethod.
Seleccionar la instancia para la que desea codificar el
procedimiento en el men de instancia.
En el separador Procedures, buscar el procedimiento
declarado y arrastrarlo a myFirstMethod.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

35

Pasos para agregar el procedimiento al


separador myFirstMethod antes de la
programacin
Volver al procedimiento haciendo clic en el separador de la
parte superior del editor de cdigos con el nombre del
procedimiento.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

36

Pasos para agregar un Procedimiento


declarado para el cdigo
Seleccionar la instancia del objeto al que desea agregar el
procedimiento declarado.
Buscar el procedimiento declarado en la lista del separador
Procedures del panel de mtodos.
Los procedimientos declarados estn disponibles en el
separador Procedures de todos
los objetos que los heredan.
Arrastrar el procedimiento
declarado para el cdigo.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

37

Pasos para acceder y editar los


procedimientos declarados
En el men de instancia, seleccionar la instancia en la que
se ha declarado el procedimiento.
Hacer clic en Edit a la izquierda del nombre del
procedimiento.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

38

Pasos para acceder y editar los


procedimientos declarados
Crear o editar las instrucciones de programacin para el
procedimiento.
Hacer clic en el botn Run para probar y depurar segn sea
necesario.
Cuando haya terminado de editar el procedimiento, hacer
clic en el separador myFirstMethod para volver.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

39

Identificacin de oportunidades para


los procedimientos declarados
Durante la programacin, identificar continuamente
oportunidades para declarar procedimientos mediante
tcnicas de abstraccin de procedimientos.
Por ejemplo, en myFirstMethod, los peces se sacuden hacia
arriba y hacia abajo repetidamente.
Como resultado, se debe declarar un procedimiento "bob".

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

40

Abstraccin de procedimientos y uso del


portapapeles
Despus de haber escrito varias instrucciones de
programacin en el separador myFirstMethod, puede
determinar que el cdigo servir mejor al programa si
estuviera en un procedimiento declarado.
Para ahorrar tiempo, puede arrastrar las instrucciones de
programacin al icono del portapapeles.
A continuacin, despus de crear el procedimiento declarado,
puede arrastrar las instrucciones de programacin del
portapapeles al procedimiento declarado.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

41

Uso de procedimientos hereditarios


Los procedimientos declarados
en el nivel de superclase estn
disponibles para los dems
objetos de esa clase.
Por ejemplo, un
procedimiento "bipedWave"
creado para que playingCard
salude con la mano se podra
utilizar tambin para hacer
que Alice salude con la mano
tambin.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

42

Declaracin de un procedimiento en el
nivel de superclase
Declarar el procedimiento
"bipedWave" en el nivel de superclase
de bpedo de modo que playingCards y
Alice lo utilicen.
Otros bpedos que se puedan agregar
ms adelante podran tener acceso
tambin a este procedimiento.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

43

Identificador de objeto this


Cuando se crea un procedimiento declarado, el identificador
de objeto, this, se utiliza para indicar que la instancia que
llama al procedimiento es this.

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

44

Ejemplo de identificador de objeto this


Si se selecciona Alice en el men de instancia y, a
continuacin, se agrega el procedimiento bipedWave a
myFirstMethod; this hace referencia a Alice en el
procedimiento declarado.

Si se selecciona playingCard en el men de instancia y, a


continuacin, se agrega el procedimiento bipedWave a
myFirstMethod; this hace referencia ahora a playingCard en
el procedimiento declarado.
Bsicamente, this siempre hace referencia a la instancia de la
clase que llama al procedimiento.
JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

45

Terminologa
Trminos clave que se han utilizado en esta leccin:
Algoritmo
Procedimientos declarados
Herencia
Abstraccin de procedimientos
Escenario
Guin grfico

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

46

Resumen
En esta leccin, debe haber aprendido a:
Comparar y definir una animacin y un escenario
Escribir un guin grfico
Crear un diagrama de flujo de un guin grfico
Describir la herencia y cmo se transmiten los rasgos de
las superclases a las subclases

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

47

Resumen
En esta leccin, debe haber aprendido a:
Describir cmo implantar la abstraccin de procedimientos
Demostrar cmo declarar un procedimiento
Identificar y utilizar tcnicas de abstraccin de
procedimientos para simplificar el desarrollo de la animacin

JF 2-5
Declaracin de procedimientos

Copyright 2015, Oracle y/o sus filiales. Todos los derechos reservados.

48

Potrebbero piacerti anche