tp2 - informe parcial (1)
TRANSCRIPT
-
7/23/2019 TP2 - Informe Parcial (1)
1/10
FIUBA - 7507
Algoritmos y programacin 3
Trabajo prctico 2: Algo42 Full
Informe Parcial
1ercuatrimestre, 2011
(trabajo grupal)
Nombre Padrn E-ail
Awad, Lucas Javier 92277 lucasawad@gmailcom
!art"#e$, %asto# Alberto 91&'& gasto#marti#e$90@livecomar
ossi, ederico !art"# 920'* +edericomrossi@gmailcom
-
7/23/2019 TP2 - Informe Parcial (1)
2/10
!ndice
Introd"ccin########################################################################################################################################3
bjetivo del trabajo&
-o#sig#a&
.#tregables/
orma de e#trega/
ecas de e#trega/
ruebas /
$oc"mentacin###################################################################################################################################%
upuestos*
.lecci3# del modelo e#tre los dispo#ibles del 417
articularidades e#co#tradas al tra#s+ormar el modelo del 417
!odelo de domi#io7
5etalles de impleme#taci3#'
.6cepcio#es95iagramas !L9
&'ec(list de correccin####################################################################################################################)0
Algoritmos 8 programaci3# &4 2: Algo&!a# 2;10
-
7/23/2019 TP2 - Informe Parcial (1)
3/10
I
ntrod"ccin*b+eti,o del traba+o
Aplicar los co#ceptos e#se pruebas
u#itarias 8 de i#tegraci3# completas, 8 eleme#tos de docume#taci3# ?ue se detalla# e# este e#u#ciado
Introduccin
La empresa Rezagos Militares oft!are Inc"# crea$ora $e gran$es %&itos en el campo $e juegos $e 'i$eo# est
encaran$o un pro(ecto para realizar un simula$or $e batalla $e a'iones para ser utiliza$o como soft!are $eentrenamiento $e la Fuerza A%rea Argentina ( )a elegi$o a su grupo $e trabajo para realizar el $ise*o (
$esarrollo $e su nue'a e inno'a$ora i$ea"
.l juego co#siste e# u# avi3# de combate ?ue debe combatir #aves e#emigas
Los escenarios $eben tener 2 componentes principales: el fon$o ( los elementos m+'iles# como a'iones
enemigos# armas enemigas# objetos especiales# el a'i+n $el juga$or ( las armas $el juga$or"
A co#ti#uaci3# se describe el e#u#ciado ge#eral co# las caracter"sticas +u#cio#ales de la aplicaci3# a
desarrollar:
-orre el as avio#es detie#e# sus disparos i#sta#t>#eame#te 8 u8e# del campo de
Algoritmos 8 programaci3# &4 2: Algo&!a# &;10
-
7/23/2019 TP2 - Informe Parcial (1)
4/10
batalla
#a impleme#taci3# de u#a empresa competidora puede verse e# el siguie#te li#F, 8
sirve para e#te#der la di#>mica del juego:
)ttp:,,!!!"(outube"com,!atc)-'.&/I0135m4
Los e#emigos cue#ta# co# los siguie#tes modelos de #aves:
Nombre Armas Estrategiade ,"elo
*bser,aciones P"ntos pordestr"ccin
A'ionetas Lasers Gdas 8 vueltase# l"#ea recta
o# los avio#es m>s r>pidos 20
0ombar$eros Lasers,coetes 8torpedos
rastreadores
Hig;Hag o# los m>s poderosos pero al
mismo tiempo los m>s le#tos Alser destruidos, el Algo2 puede
tomar sus armas
&0
6&plora$ores o tie#e .# c"rculos Iuela# e# c"rculos ampliosrecorrie#do toda la super+icieaBrea, e# bCs?ueda de cocar alAlgo2
/0
7azas 4orpedossimples
.# grupo+orma#do u#a
I
Al ser destruido su ta#?ue dee#erg"a pude ser tomado por
Algo2
&0
7azas
89ue'o
4orpedos
adaptables
.# grupo
+orma#do u#aI
Al ser destruido su ta#?ue de
e#erg"a pude ser tomado porAlgo2
uita la mitad
de los pu#tos alAlgo2
or su parte el Algo2 es u# avi3# escalable .# la versi3# base solo cue#ta co# lasers,
pero puede escalar aume#tado su poder"o apropi>#dose de las armas 8 e#erg"a de los avio#es
?ue destru8e
&onsideraciones generales
4odo avi3# tie#e u#a +ue#te de e#erg"a, la cual dismi#u8e a medida ?ue es atacado -ua#do
dica e#erg"a llega a cero el avi3# es destruido
.l Algo2 va suma#do pu#tos para su misi3# a medida ?ue destru8e avio#es e#emigos Al
llegar a 1000 pu#tos termi#a el #ivel 8 pasa al siguie#te
Los lasers #o se gasta#, pero los torpedos 8 coetes s"
.l espacio #o esta vac"o, adem>s de las +lotas e#emigas a8 avio#es civiles (pasa# e# l"#earecta a poca velocidad, el Algo2 debe evitar destruirlos 3 cocarlos, caso co#trario pierde
&00 pu#tos por cada avi3# civil destruido) 8 elic3pteros de la polic"a +ederal (se mueve# e#
c"rculos pero tie#e# orde# de #o disparar, tambiB# debe evitarse su destrucci3# o se pierde#
200 pu#tos por cada elic3ptero)
Algoritmos 8 programaci3# &4 2: Algo&!a# ;10
-
7/23/2019 TP2 - Informe Parcial (1)
5/10
Entregables
e deber> desarrollar la aplicaci3# completa, i#clu8e#do la i#ter+a$ gr>+ica 5eber> poder grabarse
los pu#tajes altos (los # mas altos, co#+igurable) 8 grabar el estado del juego para retomarlo #uevame#te e#
otro mome#to5eber> e#tregarse:
todas las clases co# sus mBtodos , orga#i$ados e# pa?uetes;#amespaces segC# criterio del alum#o
co#ju#to de pruebas u#itarias ?ue muestre# el uso del modelo 8 su correcto +u#cio#amie#to
docume#taci3# completa del c3digo +ue#te
docume#taci3# completa del dise poder correrse desde co#sola, para lo cual deber> proveerse el arcivo de A#t o
A#t correspo#die#te
Forma de entrega
.ste docume#to se deber> completar co# las seccio#es correspo#die#tes 5eber> acordarse co# su
a8uda#te la +orma de e#trega de los eleme#tos ?ue se evaluar>#
Fec'as de entrega
Entrega )(sema#a del 2 de ma8o de 2011): se deber> e#tregar la primer versi3# de la docume#taci3# co#todos correspo#die#tes 8 el modelo de datos co# sus pruebas u#itarias
Entrega .inal (sema#a del 21 de ju#io de 2011): se deber> e#tregar la aplicaci3# completa ju#to co# ladocume#taci3# revisada 8 corregida segC# los come#tarios reali$ados por el a8uda#te asig#ado
Pr"ebas
4odas las clases deber># co#tar co# sus pruebas u#itarias &*P/EA1 La aplicaci3# deber>co#tar co# pruebas de i#tegraci3# &*P/EA1
Algoritmos 8 programaci3# &4 2: Algo&!a# /;10
-
7/23/2019 TP2 - Informe Parcial (1)
6/10
$oc"mentacin1"p"estos
A co#ti#uaci3# se e#u#cia# todos los supuestos ?ue completar># las especi+icaci3#es e# la +orma de
+u#cio#amie#to 8 desempe# e# l"#ea recta acia arriba, e#te#die#do por arriba
a las D8E positivas
.# ese mome#to e# ?ue la #ave gu"a es destru"da 8 las dem>s u8e#, el juego debe e#cargarse de
crear u#a #ueva +lota ?ue e#tre al campo de batalla, asta ?ue el jugador logre acumular los 1000
pu#tos #ecesarios para pasar de #ivel
Iamos a co#siderar ?ue e6iste# dos e?uipos: u#o es el Algo2 8 el otro las dem>s #aves Las armas 8
los pro8ectiles te#dr># asig#ados los e?uipos correspo#die#tes a la #ave a la ?ue perte#e$ca#
-o#sideramos ?ue si dos objetos del mismo e?uipo coca#, #o les pasa #ada 8 se atraviesa# si#
a+ectarse
Los objetos puede# atravesarse e#tre s" si# cambiar su tra8ectoria, 8 cua#do se e#cue#tre#superpuestos, se a+ectar># e#tre s" de la ma#era ?ue correspo#da (recibir das, cada objeto #o sabe ?uB le ocurrir> a otro al cocar, s3lo co#oce c3mo se ver> a+ectado Bl
mismo
Iamos a supo#er a las +lotas como ?ue tie#e# como #ave gu"a a cual?uier #ave militar Ia a ser
respo#sabilidad de dica #ave el saber ?uB acer 8 c3mo comu#icarse co# la +lota, pero #o es
#ecesario ?ue lo sepa (e# dico caso, se supo#e ?ue los dem>s miembros de la +lota #o va# a recibir
3rde#es del gu"a) .# el caso de las +lotas e#emigas, estas s" te#dr># u#a #ave gu"a ?ue ma#de a
todos a retirarse cua#do muera
Algoritmos 8 programaci3# &4 2: Algo&!a# *;10
-
7/23/2019 TP2 - Informe Parcial (1)
7/10
Eleccin del modelo entre los disponibles del P)
i bie# los tres modelos del 41 compre#dia# el modelo del domi#io e# su totalidad, se decidi3
optar por a?uel ?ue poseia u#a visi3# m>s amplia del domi#io del problema -o# esto #os re+erimos a elegir
u#o ?ue #o #ecesitara demasiados ajustes de dise compre#dida la divisi3# de respo#sabilidades e# el desarrollo del juego)
5e todas ma#eras, se utili$aro# co#ceptos de dises trabajos para poder pote#ciar aC#
mas el disemetros ?ue recibe# los
mBtodos de las clases 8 de los valores ?ue estos devuelve# 5e esta ma#era, ?ueda e6pl"cito e# el c3digo (e#
tiempo de compilaci3#) el comportamie#to ?ue se prete#de ?ue te#ga cada i#sta#cia, su polimor+ismo 8 el
grado de ge#eralidad ?ue puede adoptar e# partes m>s i#tegradoras del sistema (por ejemplo, cua#do vemos
al algo2 como u# simple bjeto.spacial actua#do e# el .sce#ario ju#to a los dem>s objetos) .sto Cltimo
tambiB# #os +ue Ctil para ocultar aC# m>s la impleme#taci3# i#ter#a de ciertos objetos (como por ejemplo
coleccio#es), 8 separar completame#te del e6terior posibles cambios e# su dise
-
7/23/2019 TP2 - Informe Parcial (1)
8/10
.# este i#+orme parcial #os ce#traremos e# el mo$elo, ?ue es la motor ce#tral de toda la aplicaci3#
8a ?ue ser> el e#cargado de los procesamie#tos de datos los cuales ser># utili$ados por las otras partes ?ue
compo#e# el so+tware -omo el modelo 8a se e#co#traba impleme#tado e# otro le#guaje, se come#$3 por
crear las disti#tas clases co# sus respectivos mBtodos 8 atributos acompasica e# particular
.# este apartado decidimos limitar#os a pro+u#di$ar sobre los c)os importa#tes e# el juego co# respecto a +u#cio#alidadLos co?ues esta# dises abstracta, bjeto6spacial#de+i#e u#a clase co# comportamie#to por de+ecto
(?ue #o ocurra #ada al cocar) Luego, cua#do u# objeto se ve a+ectado de ma#era di+ere#te a los dem>s, se
crea u#a #ueva clase de comportamie#to a#te el co?ue, 8 cada ve$ ?ue u# objeto a+ecta de ma#era di+ere#te
a otro, se de+i#e u# mBtodo a todos los comportamie#tos (?ue puede# eredarse e#tre s") i#alme#te, al
cocar, la #ave ?ue a+ecta pide el comportamie#to de la a+ectada 8 llama al mBtodo correspo#die#te co# ?ue
la a+ecta .l co?ue es rec"proco e#tre ambas partes
Algoritmos 8 programaci3# &4 2: Algo&!a# ';10
-
7/23/2019 TP2 - Informe Parcial (1)
9/10
E2cepciones
Las e6cepcio#es creadas se reali$aro# co# el +i# de poder detectar de +orma +>cil 8 r>pida el lugar e#
do#de se a provocado u# error, o sea, u#a acci3# o situaci3# i#esperada ara lograr esto, se crearo#
e6cepcio#es relacio#adas a las clases ?ue a# de re?uerirlas de ma#era de ?ue al obte#er u# error podamos
captar de +orma +acil el lugar e# do#de se a la#$ado la e6cepci3#
-ada pa?uete ce#tral del pro8ecto, tal como mo$elo, te#dr> de#tro u# pa?uete e&cepcionesdo#de se
albergar># las disti#tas e6cepcio#es ?ue compo#e# ese pa?uete ce#tral 8 ?ue, obviame#te, ser># utili$adas
por las clases de ese mismo pa?uete
$iagramas U/
ara u#a mejor visi3# 8 u# e#te#dimie#to m>s pro+u#do de como se represe#t3 el modelo del
domi#io se utili$aro# diagramas !L 4odos estos se e#cue#tra# e# el arcivo TP2 = iagramas >ML"asta
?ue acompa
-
7/23/2019 TP2 - Informe Parcial (1)
10/10
&'ec(list de correccin
&arpeta
Generalidades
Ko# correctos los supuestos 8 e6te#sio#es
K.s prolija la prese#taci3# (ojas del mismo tama