Escolar Documentos
Profissional Documentos
Cultura Documentos
NRO. PRÁCTICA: 4 TÍTULO PRÁCTICA: Tabla de Posiciones (Herencia, Clases Abstractas e Interfaces).
OBJETIVO ALCANZADO: Entender y realizar aplicaciones con la ayuda de los Diagramas de Clases,
también con el uso de controladores y uso de paquetes(para mayor ordenamiento), para dar solución a los
problemas que se presentan en la vida cotidiana y así ayudar a las personas. Además aplicando los
conceptos de Herencia, Clases Abstractas e Interfaces en los mismos.
ACTIVIDADES DESARROLLADAS
Se desea desarrollar un sistema que permita generar la tabla de posiciones de un campeonato nacional
de futbol. De los equipos se conoce su código, nombre, estadio, director técnico, y cada equipo puede
entrenar (), jugar (), viajar (), y descansar (). Se pide generar 12 equipos. Cada equipo jugará 11 partidos,
de los resultados de cada partido se conoce el número de goles del equipo A y número de goles del equipo
B. Los resultados se deberán generar automáticamente de manera aleatoria. Por cada partido ganado el
equipo obtendrá 3 puntos, 1 punto por partido empatado y 0 puntos por partido perdido. Al final el sistema
permitirá generar la tabla de posiciones ordenada de mayor a menor por el número de puntos de cada
equipo.
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Diagrama de Clases
MODELO - CLASES
Las clases son las estructuras fundamentales de mi sistema, las cuales tendrán atributos y métodos para
interactuar con los controladores y lograr el objetivo planteado en el problema.
1. Crearemos un paquete, en el cual crearemos las clases principales para el sistema, para llevar ordenado
mi sistema. Las cuales son las siguientes: Equipo, Jugar.
El nombre del paquete es escrito en minúsculas y es el dominio del lugar donde se hace el sistema.
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
El paquete quedara escrito al principio antes de las importaciones e inicio del código. Así:
2. 2. Para las clases, tendremos que definir los atributos (siempre privados) y sus respectivos getters (para
devolver) y setters (para asignar), en la creación de los atributos también se les asignara el tipo de dato a
manejar.
Se utiliza la palabra reservada (this) cuando el atributo se llama igual que la variable nueva en donde voy a
ingresar el valor.
3. 3. Esto se hará para todas las clases creadas, las diferencias radicaran en los atributos, pero los métodos
getters y setters serán de la misma manera.
Además en esta aplicación se hará uso de la Herencia, Clases Abstractas e Interfaces. La clase Equipo
heredara a las demás clases.
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
CONTROLADORES
Paquete:
4. Se crearan controladores para la clase principal que creamos al principio del programa, la misma que
tendrá las siguientes acciones: Crear, Actualizar, Listar, Ordenar y Jugar.
Algo que debemos tomar en cuenta que siempre un controlador llevara una lista.
Método Crear
Me permite añadir los equipos, a la lista creada anteriormente. De allí el uso de (add) que significa añadir. En
este problema le llamare para pasarle la información de los equipos que ya tengo.
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Método Actualizar
Me permite cambiar las características de un equipo, pasándole como parámetro el equipo, este recorrerá la
lista de empleados buscando el equipo igual al que ingresamos y luego proceder a cambiar las
características, en este caso los puntos, goles, partidos ganados, partidos perdidos y partidos empatados.
Método Listar
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Métodos Extras
r
Este método me permite ordenar la lista de Equipos de acuerdo al número de puntos obtenidos en los
partidos, es un método de ordenamiento el de burbuja mejorada.
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Método Jugar
Este método llamar al controlador de la clase Jugar, en la cual se realizar el método de jugar, lo llamo aquí
ya que es el equipo el que juega.
Método jugarPartido
Como podemos ver este método me permite hacer que se jueguen los partidos entre los equipos y se
generen los puntos, los goles, los partidos perdidos-ganados-empatados.
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
También se deberá importar todo lo necesario para que funcionen los métodos en cada controlador, de la
siguiente manera.
VISTAS
En este paquete mandare a imprimir los resultados de mi sistema, aquí realizare todo lo referente a lo que el
sistema creado me mostrara, así como los menú pedidos para el problemas.
Para mayor comprensión dividiré en otras clases y con métodos para imprimir lo referente a las clases
principales que creamos al principio. Como ejemplo pondré la vista de Equipo.
5. Utilizaré una clase abstracta “VistaAbstracta” para definir los métodos que utilizare en la VistaEquipo,
así como también el menú.
6. Luego en la clase VistaEquipos sobreescribo los métodos declarados en mi clase abstracta, de esta
forma poder utilizar estos métodos para hacer mis cálculos y el menú, sobre el menú como ya lo cree en la
clase abstracta solo utilizo una palabra reservada de java “super” para llamar al método menú que cree en
la clase abstracta, esto ira dentro de mi while para poder con la ayuda de un switch hacer que funcione mi
menú.
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Quedaria asi;
Luego debo sobre escribir los métodos que van dentro de mi menú: Método crear()
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Método ordenar()
Para este método solo llamo a mis métodos ya creados para ordenar.
CLASE PRINCIPAL
7. En esta clase instanciare mi clase VistaEquipo y llamare a los métodos de la misma, con esto obtendré mi
menú que me permitirá pasarle los datos a mi lista e imprimirlos y luego generar la tabla de posiciones.
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
RESULTADO(S) OBTENIDO(S):
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
CONCLUSIONES:
- Que el tema en estudio es muy importante para dar solución a problemas que se presentan en
la vida diaria, relacionados a la programación orientada a objetos.
- Los temas de Herencia, Clases Abstractas e Interfaces son muy importantes en Java.
RECOMENDACIONES:
- Que se debe practicar más sobre la programación de los diagramas de clases, para entender sobre
el tema.
- Que es necesario apoyarse en el Libro Base de la Materia (Programación), para adquirir más
destrezas sobre el tema.
Resolución CS N° 076-04-2016-04-20