Usuario:ManuelRomero/ProgramacionWeb/Distancia2018/Objetos/practica
De WikiEducator
< Usuario:ManuelRomero | ProgramacionWeb/Distancia2018/Objetos
Revisión a fecha de 10:32 27 feb 2019; ManuelRomero (Discusión | contribuciones)
- En este tema tenemos dos prácticas
1.- Implementar el juego de masterMind orientado a objetos
2.- Implementar una calculadora Real/Racional orientada a objetos
Practica 1
- Consiste en hacer el juego de mastermind cuya especificación ya se facilitó
- En este caso lo vamos a implementar orientado a objetos
- Tras un análisis hemos creado dos clases para nuestra aplicación
|
- Vamos a ver cómo las podremos usar en nuestro programa
- Arranca el programa y necesitamos una clave
- Tenemos dos situaciones
1.-Es la primera vez que accedo
Genero la clave La guardo en variable de sesión para próxima sesión
2.-Ya tengo clave
La leo de la variable de sesión. Para probar este requisito visualizaré la clave.
- De todo ello debe encargarse el método estático obtener_clave
//Recupera un objeto de la clase Clave y lo retorna //La clave puede ser que la tenga que recuperar o generar static public function obtener_clave():Clave { return $clave; }
- Cada vez que presiones jugar
- Creamos un objeto de la clase Juego con la jugada
- El méotodo de Jugada llamado jugar analiza el juego y me devuelve un bool que indica si la jugada ha terminado o no.
Recibirá como parámetro la instancia de la clase Clave
public function juega(Clave $clave):bool{ }
- Las varialbe de sesión
- Iremos almacenando un array de jugadas en una variable de sesion
- Igualemnte almacenaremos la Clave en una variable de sesión
- Recuerada que los objetos hay que serializarlos para guardarlos en variables de sesión.
- Tanto para escribirlos
- Como para leerlos
- Deberíamos tener algo parecido a
$jugada = new Jugada(...); .... $jugadas = unserialize($_SESSION['jugadas']); .... $jugada->jugar($clave); .... $jugadas[]=$jugada; .... $_SESSION['jugadas']=serialize($jugadas);