- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
Buen día a todos
mis lectores, hoy les tengo la primera parte (Parte 2 aquí) de un interesante proyecto de varias
partes, se trata del inicio de un pequeño juego para computadora, lo mejor de
todo, es que está diseñado para aprender los conceptos básicos de la
programación orientada a objetos, así que si eres principiante en Java ¡Esto es
perfecto para ti! No se necesitan conocimientos avanzados del lenguaje ni de la
programación orientada a objetos (POO) en general, aquí les va...
En este articulo,
vamos a saltar directos a comenzar nuestra propia clase. En el proceso, vamos a
aprender acerca de objetos, métodos y parámetros.
Prerrequisitos
Para poder
continuar, necesitarás que el siguiente software esté instalado en tu
computadora:
- Plataforma Java (Descargar), Edición estándar (Java SE por sus siglas en inglés)
- Greenfoot versión 2.1.0 o una más nueva. Asegúrate de que tengas una versión suficientemente buena de Greenfoot. Puedes revisar la versión que tienes usando el artículo de menú About Greenfoot.
Creando nuestro propio proyecto
Greenfoot llama a
sus proyectos scenarios. Así que la
primera cosa que haremos, es crear un nuevo scenario.
- Inicia Greenfoot.
- Greenfoot usualmente abre el último scenario en el que trabajaste. Ciérralo seleccionando la función Close del menú Scenario.
- Selecciona New del menú Scenario.
- En la caja de dialogo New Scenario, pon de nombre turtle al nuevo scenario y da click en OK.
Deberías ahora tener una nueva ventana scenario
que es principalmente gris, como se muestra a continuación:
Ahora tenemos el
caparazón de un nuevo scenario, un
lugar donde podemos empezar a trabajar. No tenemos un mundo aún para hacer que
cosas pasen en él, y no tenemos actores que puedan hacer cosas.
Las dos clases
que se ven en el lado derecho de la ventana, World (Mundo en inglés) y Actor, son superclases.
Ellas no son ni un mundo especifico ni un actor especifico, son mejor dicho
descripciones de todos los mundos y actores posibles.
Vamos a crear un mundo específico y actores creando subclasses de éstas. Las subclases
representan especializaciones de las superclases. Vamos a comenzar haciendo un
mundo.
Creando
un nuevo mundo
- Da click derecho en la clase World (La caja color beige) y selecciona la función New Subclass.
Una caja de dialogo nos pide un nombre y una imagen
para la nueva clase como se muestra a continuación:
- Nombra a tu clase TurtleWorld, y selecciona una imagen de la categoría Backgrounds de la librería de imágenes. Para los pantallazos en este artículo, se seleccionó una imagen de fondo llamada weave.jpg.
- Da click en OK entonces click en el botón Compile en la ventana principal de Greenfoot. Deberías ver aparecer un mundo en la ventana Greenfoot con tu fondo seleccionado como se ve a continuación:
Ahora que hemos creado un mundo, estamos listos para
crear actores para ponerlos dentro del mundo.
Una
Nota Lateral Sobre Compilar
Cuando programamos, escribimos código Java.
Desafortunadamente, las computadoras no pueden ejecutar el código Java
directamente. Necesitan sus instrucciones en un lenguaje de máquina
especializado.
Afortunadamente, hay una solución fácil: El
compilador. Un compilador es un software que puede trasladar código Java en
lenguaje máquina. Cada vez que creamos una nueva clase o haces cambios al
código fuente de una clase existente, la clase necesita ser trasladada
nuevamente a lenguaje máquina. Puedes hacer esto fácilmente dando click en el
botón Compile.
En Greenfoot, una clase aparece a rayas si no ha
sido compilada desde el último cambio como se muestra a continuación:
Una vez que damos click en el botón Compile y
la clase es trasladada, las rayas desaparecen, y la clase está lista para usar:
Creando
un actor
Ahora tenemos un mundo en el que nuestros actores
pueden vivir. De todas formas, no tenemos un actor para hacer nada aún. Así que
vamos a hacer un actor.
- Click derecho en la clase Actor y selecciona la función New subclass.
- En la caja de dialogo resultante, nombre la nueva clase Turtle, y selecciona la imagen turtle2.png de la categoría Animals como se muestra en la imagen (bajo el punto 4).
- Click OK. Ahora tenemos una nueva clase Turtle en nuestro scenario. Nota que esta clase está inicialmente rayada (eso significa, sin compilar).
- Click en el botón Compile para compilar la clase.
Nota que por convención, los nombres de las clases Java siempre comienzan
con letra mayúscula.
Creando Objetos
Ahora tenemos una clase actor (Turtle), pero no tenemos objetos actor todavía. Click derecho en la clase Turtle y selecciona new Turtle(). Esto crea un objeto
tortuga—que es, un actor real—el cual se puede poner entonces en el mundo.
Eso es. Acabas de crear tu primera tortuga. Nota que se pueden
crear tantas tortugas como quieras. Haz la prueba.
Programando tus
objetos
- Click en el botón Run. Notarás que nada pasa al presionar tal botón, nuestra tortuga sólo se sienta ahí, sin hacer nada. Eso es porque no hemos programado a nuestra tortuga para que haga algo. Así que aquí es donde la diversión comienza. Vamos ahora a comenzar a programar en Java para hacer a la tortuga actuar.
- Abre el editor para Turtle haciendo doble click en la caja de clase Turtle. Verás algo de código para la clase Turtle como se muestra a continuación:
Nos vamos a concentrar en el método act. Ésa es la parte
del código que se ve así:
Esta parte del código especifica lo que la tortuga hace cuando actúa.
El código entre las llaves { } es
ejecutado cada vez que la tortuga actúa. En este caso, todo lo que está escrito
aquí es lo siguiente:
// Add your action code here.
La doble barra al inicio de la línea marca esta línea como un
comentario. Es ignorado por el sistema Java y es sólo un recordatorio para el
programador humano. En otras palabras, este método act no contiene código
alguno. Ése es el porqué de que nuestra tortuga no haga nada.
Vamos a cambiar eso.
- Reemplazar el comentario con una instrucción de tal manera que nuestro método act se mire así:
- Compila, crea una nueva tortuga, y trata de dar click en el botón Act y en el botón Run.
Así que, ¿qué acabamos de hacer?
La instrucción move(2); le dice a la tortuga que se mueva 2 pixeles adelante. La tortuga hace esto cada vez que actúa. Cuando das click en el botón Act, el método act es ejecutado una sola vez, así que la tortuga se mueve un poquito (2 pixeles) a la derecha. Dando click al botón Run se llama al método act una y otra vez (hasta que lo pauses otra vez), así que la tortuga se sigue moviendo. - Experimenta con valores diferentes de 2. ¿Qué pasa cuando usamos 20 en lugar de 2?
- Trata con otra instrucción reemplazando la instrucción move(2); con esta instrucción:
Recuerda: Cambia el código,
compila, crea una nueva tortuga, y entonces ejecuta (Run). Experimenta con diferentes valores aquí también.
Métodos y Parámetros
Así que, ¿qué acabamos de hacer?
Hemos llamado (o invocado) a un método llamado move y a un método
llamado turn, y hemos pasado un parámetro, 2, para cada uno de ellos.
Un método es un poco del comportamiento que un objeto sabe ejecutar,
y todos los actores conocen los métodos move y turn (quiere decir que ellos saben cómo moverse y
girar).
Ambos métodos esperan un parámetro,
el cual es un poco de información adicional que les dice exactamente qué tan
lejos moverse o qué tanto girar. Amos métodos esperan un numero como parámetro,
y nosotros suplimos ése número escribiéndolo entre paréntesis después del
nombre del método. Y cada instrucción en Java es finalizada con un punto y coma
(;).
Errores
Quizá te hayas dado cuenta que necesitas escribir el código muy
precisamente. Teniendo siquiera un carácter mal hace que el programa completo
no trabaje. El compilador entonces reporta un mensaje de error, y necesitas
arreglar el código. Si no has visto un mensaje de error aún, trata ahora. Por
ejemplo, borra el punto y coma (;)
después de tu instrucción y trata de compilar. Verás a lo que me refiero.
Secuencias de
instrucciones
Puedes escribir múltiples instrucciones, tantas como quieras, en
el método act. De hecho, puedes escribir una tras otra:
Intenta esto. Además, pon varias tortugas en el mundo, y
experimenta con diferentes valores en los parámetros para los métodos move y turn:
Resumen
En este artículo, aprendimos los primeros pasos para escribir tu
propio código Java, que demuestran los siguientes principios:
- Que el comportamiento de un objeto está especificado en la clase del objeto.
- Más precisamente, el comportamiento de un objeto está especificado en una definición de método en la clase del objeto.
- Las clases Actor en Greenfoot tienen un método llamado act que especifica su comportamiento principal.
- El cuerpo del método (la parte entre las llaves { } ) contiene el código que determina que hace el método cuando es llamado.
- Las instrucciones pueden ser especificadas llamado a los métodos existentes (como move y turn en nuestro ejemplo).
- Las llamadas a los métodos consisten del nombre del método que estás llamando seguido por parámetros en paréntesis.
- Todas las instrucciones son terminadas con un punto y coma (;).
- Podemos además escribir secuencias de instrucciones.
Escrito por: Michael Kölling.
Fuente: Java Magazine.
Entradas Relacionadas:
Aprender Java creando un juego (Parte 6)
Aprender Java creando un juego (Parte 5)
Aprender Java creando un juego (Parte 4)
Aprender Java creando un juego (Parte 3)
Aprender Java creando un juego (Parte 2)
Entradas Relacionadas:
Aprender Java creando un juego (Parte 6)
Aprender Java creando un juego (Parte 5)
Aprender Java creando un juego (Parte 4)
Aprender Java creando un juego (Parte 3)
Aprender Java creando un juego (Parte 2)
aprender java creando un juego
Greenfoot
java
Java Greenfoot
Java magazine
java poo
Juegos
Juegos en java
poo
Principiantes java
Programación
Video juegos
Video juegos Greenfoot
- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
Comentarios
Eres un máquina, gracias por la aportación, no conicia Greenfoot, espero saques una 2ª parte.
ResponderEliminarSaludos
Hola Anónimo, de hecho hay ya 6 partes en mi blog, están en la parte de arriba donde pone "Entradas relacionadas:" (en color azul) o igual aquí en la barra lateral donde pone "Archivo del blog" en septiembre saludos y gracias por la visita :D.
EliminarMuchas gracias, y la verdad que sí, ojala yo hubiera aprendido de ésa manera desde el comienzo, aunque igual no se me complicó mucho aprender programación, saludos y de nuevo gracias :D.
ResponderEliminar