n3_karaoke_GuíaDeTrabajo - Cupi2

Anuncio
Universidad de los Andes
Ingeniería de Sistemas y
Computación
Algorítmica y Programación por Objetos 1
Ejercicio de Nivel 3
Karaoke
Descripción Global
Se desea desarrollar una aplicación para administrar las canciones de un karaoke. La
aplicación tiene 4 categorías musicales (Rock, Pop, Fusión latina y Electro-house) y 9 artistas
que pertenecen a una de las diferentes categorías. Adicionalmente, la aplicación debe permitir
el manejo de listas de reproducción, donde cada lista puede tener canciones de diferentes
artistas.
Objetivos del ejercicio
El presente ejercicio usted trabajará en:
 Crear una nueva clase completa.
 Declarar e inicializar atributos.
 Declarar e inicializar constantes.
 Crear e implementar métodos.
 Utilizar estructuras condicionales.
 Utilizar estructuras repetitivas haciendo uso de los patrones de recorrido.
 Crear y manipular estructuras contenedoras de tamaño fijo.
 Crear y manipular estructuras contenedoras de tamaño variable.
Preparación
Esta sección presenta una lista de chequeo de todas las tareas necesarias para la preparación
del ejercicio. Por favor, revise que cada tarea haya sido completada antes de pasar a la
siguiente sección de esta guía de trabajo.
1. Para conocer el funcionamiento esperado de la aplicación, descargue y/o ejecute el archivo
demo del ejercicio que se encuentra en el siguiente enlace:
http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/ejercicios-del-semestre
2. Descargue el esqueleto del ejercicio
(http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/ejercicios-del-semestre)
e impórtelo a Eclipse.
No se preocupe si algunas clases le reportan errores (como marcas rojas) al importar
el ejercicio por primera vez. Estos desaparecerán cuando termine correctamente los
cambios requeridos en el mundo.
3. Lea el enunciado del problema disponible en:
n3_ karaoke/docs/specs/Descripcion.pdf.
4. Estudie el documento de requerimientos funcionales disponible en:
n3_karaoke/docs/specs/RequerimientosFuncionales.pdf.
5. Estudie el modelo del mundo diseñado para este ejercicio. Este modelo se encuentra en:
n3_ karaoke/docs/specs/ModeloConceptual.jpg.
Identifique las clases, relaciones entre clases, constantes, atributos y métodos.
6. Desde Eclipse revise la documentación de las clases del mundo. Esto le permitirá entender
para qué sirve cada método y cada uno de los atributos. El siguiente video explica cómo leer
la documentación de un método:
https://www.youtube.com/watch?v=J0aQN39k7MA
7. Revise el proyecto Java. Identifique los elementos del mundo (clases, atributos y métodos).
Desarrollo
Dentro del código del esqueleto se encuentran indicados los puntos en donde usted debe
realizar alguna modificación (añadir atributos, completar métodos, construir nuevos métodos,
etc.), por medio de comentarios de la siguiente forma:
// TODO ParteX PuntoY: Breve explicación de la modificación que debe realizar.
Donde X hace referencia a una parte de la guía de trabajo, y Y hace referencia a un punto de la
parte X. Para visualizar los TODOs vaya al menú Window -> Show View -> Tasks como se
muestra en la siguiente figura:
El siguiente vínculo muestra cómo consultar los TODOs de un ejercicio:
https://www.youtube.com/watch?v=pV54O42D2ow
Parte 1: Crear la clase Cancion
1. Cree la clase Cancion. Para crear una nueva clase en Eclipse, siga las siguientes
instrucciones:
a. Seleccione la vista Package Explorer del menú Window, opción Show View.
b. Posiciónese sobre el paquete uniandes.cupi2.karaoke.mundo de la carpeta
source.
c. Haga clic derecho sobre este paquete y seleccione la opción New > Class.
d. En la ventana que aparece, digite el nombre de la nueva clase (Cancion) y presione
el botón Finish.
e. La nueva clase Cancion aparecerá (vacía) en el paquete del mundo:
2. Adicione los atributos de la clase. En el modelo del mundo (ModeloConceptual.jpg) se
encuentran los nombres y tipos de estos atributos.
3. Adicione el método constructor. En el modelo del mundo (ModeloConceptual.jpg) se
encuentran los nombres y tipos de los parámetros que debe recibir el constructor. También
puede hacer uso de la siguiente documentación:
/**
* Crea una canción. <br>
* <b>post: </b> Se inicializaron los atributos nombre, duración, letra,
dificultad y ruta con los valores dado por parámetro.
* @param pNombre Nombre de la canción. pNombre != null y pNombre != "".
* @param pDuracion Duración en segundos de la canción. pDuracion > 0.
* @param pLetra Letra de la canción. pLetra != null y pLetra != "".
* @param pDificultad Dificultad de la canción. pDificultad >= 1 y pDificultad
<= 10.
* @param pRuta Ruta del archivo con la canción. pRuta != null y pRuta != "".
*/
4. Adicione los métodos analizadores:
 darNombre
 darDuracion
 darLetra
 darDificultad
 darRuta
5. Adicione el método toString que retorna un String con el nombre de la canción
siguiente manera: <nombre>.
Ejemplo: Hasta el techo
Parte 2: Completar la clase Artista
Completar los TODOs que comienzan por: //TODO Parte2 PuntoY
Parte 3: Completar la clase Karaoke
Completar los TODOs que comienzan por: //TODO Parte3 PuntoY
de la
Validación
En esta sección se explica cómo validar el desarrollo del ejercicio. Para comprobar el completo
y correcto funcionamiento de su ejercicio usted debe:
1. Ejecutar el programa e interactuar con todas las opciones disponibles en la interfaz. Los
resultados obtenidos deben ser iguales a aquellos mostrados en el video demo.
Ejecutar las pruebas automáticas disponibles en el ejercicio. En el siguiente video:
https://youtu.be/h3r7wSFaIOo) se explica cómo efectuar esas pruebas. Alternativamente (por fuera de
Eclipse), ejecute los programas: clean, cleanTest, build y luego buildTest que se encuentran en n3_
karaoke/bin/win/ (para Windows) o en n3_karaoke/bin/mac/ (para MAC) y enseguida ejecute el
programa runTest, haciendo doble clic en estos archivos. Estas pruebas deben presentar resultados en
verde (0 errores y 0 fallas) cuando el ejercicio ha sido completado correctamente
Entrega
Este ejercicio debe ser realizado de manera INDIVIDUAL.
1. Indente el código fuente de todas las clases del mundo. En el siguiente enlace:
https://youtu.be/BH9H0e-Z56E encuentra un video que explica cómo indentar el código
fuente de su ejercicio.
2. Construya el archivo entregable con su ejercicio desarrollado y validado completamente.
En el siguiente video: https://youtu.be/a9KOHfX5Gfw se explica detalladamente el
proceso para producir el archivo comprimido del ejercicio y enviarlo a SicuaPlus. No
olvide revisar que su entrega cumple con lo especificado en las normas del curso
(presentes
en
el
siguiente
enlace:
http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/normas-administrativas). Esto
incluye renombrar el archivo a entregar con su login de la siguiente forma:
n<nivel del ejercicio>_<login estudiante>.zip
Por ejemplo: n3_tsuarez.zip
La no indentación del código fuente o el nombramiento incorrecto del ejercicio en
su entrega es una acción penalizada en la plantilla de calificación del mismo.
3. Entregue el archivo del ejercicio vía SicuaPlus, de acuerdo con las normas, fecha y hora
de entrega.
Descargar