Activitats
Descomposició d'un partit de futbol
L’objectiu d’aquesta activitat és entendre com funciona la descomposició de problemes seguint l’orientació a objectes.
Relacioneu les preguntes següents, relatives al procés de descomposició en objectes d’un partit de futbol de primera divisió, amb les respostes correctes.
- Quants objectes jugador hi ha?
- Pot variar el nombre d’objectes jugador?
- Té sentit que hi hagi objectes arbitre:?
- Té sentit que hi hagi les classes Defensa o Porter?
- Té sentit que el número de la samarreta sigui un atribut de jugador?
- I si dos jugadors es poden canviar la samarreta entre ells?
- Té sentit que un objecte arbitre tingui una operació rebreTargeta?
El joc del Pacman
L’objectiu d’aquesta activitat és practicar la descomposició de problemes seguint l’orientació a objectes.
Descomposar en objectes una pantalla del joc del Pacman. Usar noms descriptius pels objectes.
El joc dels vaixells
L’objectiu d’aquesta activitat és aprendre a descompondre en objectes un problema; en aquest cas, el joc dels vaixells.
En el joc dels vaixells poden participar-hi dos jugadors. Cada un té dos taulers, que només ell pot veure (el contrincant, no), i cada taulell és una quadrícula de dues dimensions. Les files s’identifiquen amb un nombre i les columnes amb una lletra, de manera que, en total, a cada tauler hi ha un nombre de caselles igual a files*columnes i cada casella es pot identificar clarament amb una coordenada (per exemple, A-3, F-4…). Les dimensions dels taulers de tots dos jugadors han de ser idèntiques.
Abans de començar la partida, cada jugador ubica dins un dels seus taulers:
- Un portaavions, que ocupa 4 caselles.
- Dos destructors, que ocupen 3 caselles.
- Tres fragates, que ocupen 2 caselles.
- Quatre submarins, que ocupen 1 casella.
L’única restricció és que no es poden ubicar vaixells en diagonal (només horitzontalment i verticalment).
Per torns, cada jugador diu la coordenada associada a una casella. El contrincant mira el seu tauler i respon “aigua” si en aquesta casella no hi ha cap vaixell, “tocat” si n’hi ha una part, o “tocat i enfonsat” si aquesta casella és l’última que falta perquè un vaixell estigui tocat en totes les caselles. El jugador que ha dit la coordenada pot enregistrar tota aquesta informació al seu segon tauler, on no ha situat els vaixells.
Guanya qui enfonsa primer tots els vaixells del contrincant.
Enumereu tots els objectes que componen una partida en curs, suposant que els diferents jugadors ja han ubicat els vaixells en els taulers respectius, d’acord amb la metodologia d’orientació a objectes. Indiqueu algun atribut dels objectes identificats.
Servei de transports
L’objectiu d’aquesta activitat és practicar la descomposició en objectes d’un problema, concretament, un servei de transports (un servei de metro metropolità o uns ferrocarrils de rodalies).
En aquest cas, es tracta d’un enunciat obert, no hi ha una descripció prèvia específica, i l’estudiant pot triar el grau de complexitat a partir del nivell de detall que vulgui assolir.
Enumereu tots els objectes que componen el problema i, per a cada un, enumereu alguns atributs que es considerin importants, si n’hi ha.
Per fer l’exercici, les indicacions següents poden ser útils com a orientació:
- Alguns aspectes que es poden tenir en compte per establir els elements que componen l’escenari són la maquinària, les infraestructures i el personal.
- Una justificació per a aquesta tasca pot ser crear l’aplicació que s’executa en la central de control del sistema o un videojoc, com els d’estratègia de tipus Tycoon.
El blackjack
L’objectiu d’aquesta activitat és aprendre a descompondre en classes un problema. En aquest cas, el joc del blackjack tal com es descriu a continuació.
El blackjack és un joc de cartes típic de casinos. Un crupier gestiona una taula de joc, on diversos jugadors competeixen en paral·lel contra el crupier, però no entre ells. Es pot considerar que en una partida de blackjack s’estan fent N partides en paral·lel jugador contra crupier, si bé el crupier usa les mateixes cartes contra tots els jugadors. L’objectiu és apropar-se, el màxim possible, al valor 21 amb la suma dels valors de les cartes, però sense passar-se, amb la particularitat que totes les figures valen 10 i l’as es pot comptar com a 1 o 11, a elecció de qui l’ha rebut.
Primer de tot, cada jugador de la taula aposta un cert nombre de fitxes.
A continuació, el crupier reparteix dues cartes a cada jugador i a ell mateix. Les cartes del jugador són visibles, però el crupier només en mostra una.
A partir d’aquest moment, cada jugador pot demanar noves cartes, fins que consideri que en té suficients o es passi. En aquest darrer cas, el jugador perd la partida automàticament.
Quan tots els jugadors que encara no han passat en tenen prou, tots ells i el crupier mostren les cartes. Els jugadors que s’han apropat a 21 més que el crupier guanyen l’aposta, i la resta la perden.
Enumereu totes les classes que componen el joc, de manera que, a partir d’aquesta tasca, més endavant sigui possible crear una aplicació de casino en línia.
Finalment, enumereu les classes de l’exercici que es podrien usar si volem fer qualsevol joc de cartes tipus casino (pòquer, bacarà…).
Gestió de la docència
L’objectiu d’aquesta activitat és practicar la generació de mapes d’objectes per entendre els enllaços entre objectes.
Es parteix d’una aplicació de gestió de la docència d’una institució educativa on s’han identificat les classes: Estudiant
, Assignatura
, Professor
i Curs
.
Genereu un mapa d’objectes de certa complexitat que mostri un possible escenari dels objectes dins el programa.
Un MUD
L’objectiu d’aquesta activitat és aprendre a fer el procés complet de disseny d’una aplicació mitjançant l’orientació a objectes.
Els MUD (Multi User Dungeon, masmorra multijugador) són jocs en línia, tradicionalment amb una interfície d’usuari en text. El jugador porta un personatge que es mou per diferents localitzacions, on ha de superar certes dificultats i lluitar contra monstres. Tant el personatge del jugador com els enemics tenen un conjunt de propietats (força, destresa, saviesa, professió, nivell de lluita…) que estableix la seva capacitat per tenir èxit quan emprenen qualsevol acció.
Aquests jocs estan inspirats en les aventures conversacionals antigues i es poden considerar clarament els precursors dels MMORPG (Massively Multiplayer Online Role-playing Game, joc de rol en línia massiu multijugador).
Apliqueu les fases de disseny per crear un MUD. Si és necessari, per fer aquesta tasca cerqueu informació sobre què és un MUD, i així podreu entendre quin és el problema concret a resoldre.
Per a cada classe, definiu tots els atributs necessaris i algunes de les operacions que es considerin adients, i ubiqueu-les correctament d’acord amb el principi de cohesió. Finalment, genereu un mapa d’objectes d’una certa envergadura en què es visualitzi un moment concret del joc.
Implicacions de les decisions de disseny
L’objectiu d’aquesta activitat és raonar sobre les implicacions que suposa optar per diferents solucions possibles donat un mateix problema.
Expliqueu quines implicacions té, donat un joc del Monopoly, el fet que els diners que té un jugador es representin mitjançant objectes, les instàncies de la classe Bitllet, o mitjançant un atribut diners: enter en la classe Jugador.