Académique Documents
Professionnel Documents
Culture Documents
ActionScript 3.0 Aprenda A Programar - Francisco Javier Arce Anguiano-LIBROSVIRTUAL
ActionScript 3.0 Aprenda A Programar - Francisco Javier Arce Anguiano-LIBROSVIRTUAL
ActionScript 3.0
Aprenda a programar
)UDQFLVFR-DYLHU$UFH$QJXLDQR
ActionScript 3.0
Aprenda a programar
)UDQFLVFR-DYLHU$UFH$QJXLDQR
%XHQRV$LUHV%RJRWi0p[LFR')6DQWLDJRGH&KLOH
Edición:
Alejandro Herrera Datos catalográficos
Corrección:
Roberto Alfaro M. Arce, Francisco Javier
Revisión: ActionScript 3.0. Aprenda a programar
David Moisés Terán Pérez
Gerente editorial: Primera Edición
Marcelo Grillo
Alfaomega Grupo Editor, S.A. de C.V., México
ISBN: 978-607-707-161-7
Formato: 17 x 23 cm Páginas: 312
ISBN: 978-607-707-161-7
Derechos reservados:
Esta obra es propiedad intelectual de su autor y los derechos de publicación en lengua
española han sido legalmente transferidos al editor. Prohibida su reproducción parcial o total
por cualquier medio sin permiso por escrito del propietario de los derechos del copyright.
Nota importante:
La información contenida en esta obra tiene un fin exclusivamente didáctico y, por lo tanto,
no está previsto su aprovechamiento a nivel profesional o industrial. Las indicaciones
técnicas y programas incluidos, han sido elaborados con gran cuidado por el autor y
reproducidos bajo estrictas normas de control. ALFAOMEGA GRUPO EDITOR, S.A. de
C.V. no será jurídicamente responsable por: errores u omisiones; daños y perjuicios que se
pudieran atribuir al uso de la información comprendida en este libro, ni por la utilización
indebida que pudiera dársele. Los nombres comerciales que aparecen en este libro son
marcas registradas de sus propietarios y se mencionan únicamente con fines didácticos, por
lo que Alfaomega Grupo Editor, S.A. de C.V., México no asume ninguna responsabilidad por
el uso que se de a esta información, ya que no infringe ningún derecho de registro de marca.
Los datos de los ejemplos y pantallas son ficticios, a no ser que se especifique lo contrario.
Impreso en México. Printed in Mexico.
Empresas del grupo:
México: Alfaomega Grupo Editor, S.A. de C.V. – Pitágoras 1139, Col. Del Valle, México, D.F. – C.P. 03100.
Tel.: (52-55) 5575-5022 – Fax: (52-55) 5575-2420 / 2490. Sin costo: 01-800-020-4396
E-mail: atencionalcliente@alfaomega.com.mx
Colombia: Alfaomega Colombiana S.A. – Carrera 15 No. 64 A 29, Bogotá, Colombia,
Tel.: (57-1) 2100122 – Fax: (57-1) 6068648 – E-mail: cliente@alfaomega.com.co
Chile: Alfaomega Grupo Editor, S.A. – Dr. La Sierra 1437, Providencia, Santiago, Chile
Tel.: (56-2) 235-4248 – Fax: (56-2) 235-5786 – E-mail: agechile@alfaomega.cl
Argentina: Alfaomega Grupo Editor Argentino, S.A. – Paraguay 1307 P.B. Of. 11, C.P. 1057, Buenos Aires,
Argentina, – Tel./Fax: (54-11) 4811-8352, 4811 7183 y 4811 0887 – E-mail: ventas@alfaomegaeditor.com.ar
'HGLFDWRULD
4XLHURGHGLFDUHVWHOLEUR
$PLHVSRVD\DPLVKLMRVTXHVRQHOVRSRUWHGHPLYLGD
$PLSDGUH
$PLPDGUHTXHVHQRVDGHODQWyFRQHO&UHDGRUHVWR\VHJXURTXH'LRVSURJUDPD
FRQ$FWLRQ6FULSW\QRFRQ-DYDFRPRDVHJXUDQDOJXQRV
$ WRGRV PLV H[DOXPQRV GH ORV FXDOHV KH DSUHQGLGR PXFKR \ HVSHUR TXH HOORV
WDPELpQKD\DQDSUHQGLGRDOJR
)UDQFLVFR-DYLHU$UFH$QJXLDQR
$JUDGHFLPLHQWRV
$JUDGHFLPLHQWRV
$ WRGR HO SHUVRQDO GH $OIDRPHJD SRU VX DSR\R \ SURIHVLRQDOLVPR SUHVWDGR SDUD TXH
HVWHOLEURVHDQXHYDPHQWHUHDOLGDG
$PLVH[DOXPQRVTXHORVKHYLVWRVXIULUFRQHOOHQJXDMH\PHKDQHQVHxDGRPXFKR\
DXPHQWDGRPLHQWXVLDVPRSRUDSUHQGHUPiV
$$OHMDQGUR+HUUHUD\5REHUWR$OIDURTXLHQHVFRQVXWUDEDMR\HVIXHU]RLPSXOVDURQOD
SXEOLFDFLyQGH$FWLRQ6FULSW$SUHQGDDSURJUDPDU
*UDFLDV
)UDQFLVFR-DYLHU$UFH$QJXLDQR
0HQVDMHGHOHGLWRU
0HQVDMHGHOHGLWRU
/RV FRQRFLPLHQWRV VRQ HVHQFLDOHV HQ HO GHVHPSHxR SURIHVLRQDO VLQ HOORV HV
LPSRVLEOH ORJUDU ODV KDELOLGDGHV SDUD FRPSHWLU ODERUDOPHQWH /D XQLYHUVLGDG R ODV
LQVWLWXFLRQHV GH IRUPDFLyQ SDUD HO WUDEDMR RIUHFHQ OD RSRUWXQLGDG GH DGTXLULU
FRQRFLPLHQWRV TXH VHUiQ DSURYHFKDGRV PiV DGHODQWH HQ EHQHILFLR SURSLR \ GH OD
VRFLHGDG HO DYDQFH GH OD FLHQFLD \ GH OD WpFQLFD KDFH QHFHVDULR DFWXDOL]DU
FRQWLQXDPHQWHHVRVFRQRFLPLHQWRV&XDQGRVHWRPDODGHFLVLyQGHHPEDUFDUVHHQ
XQDYLGDSURIHVLRQDOVHDGTXLHUHXQFRPSURPLVRGHSRUYLGDPDQWHQHUVHDOGtDHQ
ORVFRQRFLPLHQWRVGHOiUHDXRILFLRTXHVHKDGHFLGLGRGHVHPSHxDU
$OIDRPHJD WLHQH SRU PLVLyQ RIUHFHUOHV D HVWXGLDQWHV \ SURIHVLRQDOHV
FRQRFLPLHQWRV DFWXDOL]DGRV GHQWUR GH OLQHDPLHQWRV SHGDJyJLFRV TXH IDFLOLWHQ VX
XWLOL]DFLyQ \ SHUPLWDQ GHVDUUROODU ODV FRPSHWHQFLDV UHTXHULGDV SRU XQD SURIHVLyQ
GHWHUPLQDGD$OIDRPHJDHVSHUDVHUVXFRPSDxHUDSURIHVLRQDOHQHVWHYLDMHGHSRU
YLGDSRUHOPXQGRGHOFRQRFLPLHQWR
$OIDRPHJDKDFHXVRGHORVPHGLRVLPSUHVRVWUDGLFLRQDOHVHQFRPELQDFLyQ
FRQ ODV WHFQRORJtDV GH OD LQIRUPDFLyQ \ ODV FRPXQLFDFLRQHV ,7 SDUD IDFLOLWDU HO
DSUHQGL]DMH/LEURVFRPRpVWHWLHQHQVXFRPSOHPHQWRHQXQDSiJLQD:HEHQGRQGH
HODOXPQR\VXSURIHVRUHQFRQWUDUiQPDWHULDOHVDGLFLRQDOHV
(VWD REUD FRQWLHQH QXPHURVRV JUiILFRV FXDGURV \ RWURV UHFXUVRV SDUD
GHVSHUWDU HO LQWHUpV GHO HVWXGLDQWH \ IDFLOLWDUOH OD FRPSUHQVLyQ \ DSURSLDFLyQ GHO
FRQRFLPLHQWR &DGD FDStWXOR VH GHVDUUROOD FRQ DUJXPHQWRV SUHVHQWDGRV HQ IRUPD
VHQFLOOD\HVWUXFWXUDGDFODUDPHQWHKDFLDORVREMHWLYRV\PHWDVSURSXHVWDV
/RVOLEURVGH $OIDRPHJDHVWiQGLVHxDGRV SDUDVHUXWLOL]DGRVGHQWURGH ORV
SURFHVRVGHHQVHxDQ]DDSUHQGL]DMH\SXHGHQVHUXVDGRVFRPRWH[WRVSDUDGLYHUVRV
FXUVRVRFRPRDSR\RSDUDUHIRU]DUHOGHVDUUROORSURIHVLRQDO
$OIDRPHJD HVSHUD FRQWULEXLU DVt D OD IRUPDFLyQ \ HO GHVDUUROOR GH
SURIHVLRQDOHVH[LWRVRVSDUDEHQHILFLRGHODVRFLHGDG
(ODXWRU
(ODXWRU
)UDQFLVFR-DYLHU$UFH$QJXLDQR
(VWXGLy0DWHPiWLFDV$SOLFDGDV\&RPSXWDFLyQHQOD81$0
(QFRQRFLy)ODVKFXDQGRTXHUtDKDFHUDQLPDFLRQHVVHQFLOODVSDUDSiJLQDVGH
,QWHUQHW\pVDIXHVXSHUGLFLyQ
(Q\UHDOL]yMXHJRVHQ)ODVKXWLOL]DQGR$FWLRQ6FULSWODSULPHUDYHUVLyQ
3XEOLFyWXWRULDOHVHQSiJLQDVHVSHFLDOL]DGDV
'HVGHVHGHGLFyH[FOXVLYDPHQWHD)ODVK\$FWLRQ6FULSW
2EWXYRODFHUWLILFDFLyQFRPRGLVHxDGRU\GHVDUUROODGRUHQ
3XEOLFyVXSULPHUOLEURGH$FWLRQ6FULSWFRQHVWDHGLWRULDOHQ
(QREWXYRODFHUWLILFDFLyQFRPR,QVWUXFWRU&HUWLILFDGRHQ)ODVK\'UHDPZHDYHU
3XEOLFyHOOLEURGHSURJUDPDFLyQHQ$FWLRQ6FULSWHQ
$FWXDOPHQWH WUDEDMD GH WLHPSR FRPSOHWR GHVDUUROODQGR DSOLFDFLRQHV HGXFDWLYDV
PXOWLPHGLD HQ )ODVK \ HQVHxDQGR $FWLRQ6FULSW HQ XQLYHUVLGDGHV \ FHQWURV
FHUWLILFDGRV
$FWLRQ6FULSW
$FWLRQ6FULSW$SUHQGDDSURJUDPDU
$SUHQGDDSURJUDPDU
$SUHQGDDSURJUDPDU
(VWHOLEURHVWiGLULJLGRWDQWRDSHUVRQDVTXHWLHQHQFRQRFLPLHQWRVGHODVYHUVLRQHV
DQWHULRUHV GH $FWLRQ6FULSW FRPR D DTXHOODV SHUVRQDV TXH QR WLHQHQ FRQRFLPLHQWRV
SUHYLRVVREUHHOOHQJXDMH
6H KD SURFXUDGR TXH HVWH OLEUR VHD GH XWLOLGDG WDQWR D ODV SHUVRQDV GH
GHVDUUROOR FRPR D ORV GLVHxDGRUHV LQWHUHVDGRV HQ DSUHQGHU HVWH PDUDYLOORVR
OHQJXDMH /RV FDStWXORV VH HQFXHQWUDQ HVWUXFWXUDGRV FRQ H[SRVLFLyQ GH FRQFHSWRV
WHyULFRVOXHJRHMHUFLFLRVFRUWRVHQUHODFLyQFRQORDQWHULRU\SRU~OWLPRXQHMHPSOR
LQWHJUDGRUGHWRGRHOFDStWXOR
(VWH OLEUR QR HV XQD UHIHUHQFLD GHO OHQJXDMH QL XQ PDQXDO SDUD PLJUDU
DSOLFDFLRQHVGHODVYHUVLRQHVDQWHULRUHVD$FWLRQ6FULSW,QWHQWDPRVTXHVHDXQ
OLEUR TXH LQWURGX]FD SRFR D SRFR DO OHFWRU HQ IRUPD DPDEOH \ DPHQD GHVGH OD
FRPSUHQVLyQGHODVYDULDEOHV\VHQWHQFLDVFRQGLFLRQDOHVDWHPDVPiVDPELFLRVRV
FRPRHO;0/\DQLPDFLyQFRQFyGLJR
1R LPSRUWD VL XVWHG HV XQ DUWLVWD JUiILFR R XQ SURJUDPDGRU FRPSXOVLYR
HVSHUHPRV TXH HVWH OLEUR VHD XQD H[FHOHQWH LQWURGXFFLyQ DO SODQHWD $FWLRQ6FULSW
%LHQYHQLGR
$FFHVRDOPDWHULDOFRPSOHPHQWDULR
$FFHVRDOPDWHULDOFRPSOHPHQWDULR
DOFRPSOHPHQWDULR
3DUDWHQHUDFFHVRDOPDWHULDOFRPSOHPHQWDULRGHOOLEUR$FWLRQ6FULSW$SUHQGDD
SURJUDPDUHVQHFHVDULR
,UDODSiJLQDKWWSYLUWXDODOIDRPHJDFRPP[
5HJLVWUDUVHFRPRXVXDULR\JXDUGHHQXQOXJDUVHJXURVXQRPEUHGHXVXDULR\
FODYHGHDFFHVRSDUDHPSOHDUODSDUDIXWXURVLQJUHVRV
,QJUHVHFRQVXXVXDULRDODVHFFLyQGHOLEURV
%XVTXH\VHOHFFLRQHODLPDJHQFRUUHVSRQGLHQWHDHVWHOLEURSDUDGHVFDUJDUVX
PDWHULDOFRPSOHPHQWDULRFRPR
• (MHPSORV
• /RVDUFKLYRVQHFHVDULRVSDUDUHDOL]DUVXVHMHPSORV\SUiFWLFDV
• /LJDVD9LGHRWXWRULDOHVFRQQXPHURVRVHMHPSORVSUiFWLFRVGHVDUUROODGRV
SDVRDSDVR
(VQHFHVDULRTXHHOXVXDULRFXHQWHLQVWDODGRHQVXFRPSXWDGRUDHOVRIWZDUH
$FWLRQ6FULSW
/DGHVFDUJDGHVRIWZDUHGHVGHHOVLWLRGH$XWRGHVNQRJHQHUDQLQJXQD
UHVSRQVDELOLGDGSDUDHODXWRURODHGLWRULDO
127$6
127$6
6H UHFRPLHQGD UHVSDOGDU ORV DUFKLYRV GHVFDUJDGRV GH ODV SiJLQDV ZHE HQ XQ
VRSRUWHItVLFR&'86%GLVFRGXURRFXDOTXLHURWURPHGLRGHDOPDFHQDPLHQWR
(Q DGHODQWH VH UHIHULUi DO PDWHULDO FRPSOHPHQWDULR FRPR HO PDWHULDO TXH VH
GHVFDUJyGHOVLWLRZHE
&RQWHQLGR
&RQWHQLGR
&DStWXOR (MHUFLFLR
$FWLRQ6FULSW
$FWLRQ6FULSW ÉPELWRRDOFDQFHGHODVYDULDEOHV
(YROXFLRQDURPRULU (MHUFLFLR
1XHYD$90\QXHYR5HQGHU 9DULDEOHVSRUVXDOFDQFH
3DUiPHWURVGHODIXQFLyQFRQVWUXFWRUD
3URJUDPDFLyQRULHQWDGDDREMHWRV
(MHUFLFLR
FXHVWLyQGHJDWRV
7LSRGHGDWRV
/DVFODVHVJDWRV
(MHUFLFLR
&XHVWLyQGHVLQWD[LV
6DEHUORVWLSRVGHYDULDEOH
¢'yQGHLQLFLDU"
RSHUDGRUHVLV\DV
(OFDVFDUyQ
(MHPSOR
1RWD
&RQYHUVLyQGHWLSRV
/RVHOHPHQWRVGHODFODVH
&RQVWDQWHV
/DIXQFLyQFRQVWUXFWRUD
(MHUFLFLR
/ODPDUDODFODVH
2SHUDGRUHV
&ODVV3DWK
2SHUDGRUHVSULQFLSDOHV
6HQWHQFLDLPSRUW
2SHUDGRUHVGHVXILMR
3URSLHGDGHV\PpWRGRV
2SHUDGRUHVGHSUHILMR
+HUHQFLD
2SHUDGRUHVXQDULRV
2YHUULGH
2SHUDGRUHVGHPXOWLSOLFDFLyQ
(MHPSORSUiFWLFR
2SHUDGRUHVDGLWLYRV
8QDVXEFODVHGH0RYLH&OLS6SULWH 2SHUDGRUHVUHODFLRQDOHV
&ODVHGHGRFXPHQWRRGRFXPHQWFODVV 2SHUDGRUHVGHLJXDOGDG
$PDQHUDGHFRQFOXVLyQ 2SHUDGRUHVOyJLFRV
&DStWXOR 2SHUDGRUFRQGLFLRQDO
2SHUDGRUHVGHDVLJQDFLyQ
$OJRPiVVREUHSURJUDPDFLyQ
$OJRPiVVREUHSURJUDPDFLyQ
(MHPSOR
ULHQWDGDDREMHWRV
RULHQWDGD
$PDQHUDGHFRQFOXVLyQ
,QWURGXFFLyQ
3DTXHWHVSDFNDJHV &DStWXOR
,PSRUWDUSDTXHWHV 6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
6HQWHQFLDVFRQGLFLRQDOHV
1RPEUHVGHHVSDFLRVRQDPHVSDFHV 6HQWHQFLDVFRQGLFLRQDOHV
0RGRHVWULFWR\PRGRHVWiQGDUGH 6HQWHQFLDLI
FRPSLODFLyQ 6HQWHQFLDLIHOVHLI
9DULDEOHV 6HQWHQFLDVZLWFK
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
;,, &RQWHQLGR
(MHUFLFLR (MHUFLFLR
%XFOHVRFLFORV (OLPLQDUXQREMHWRGHODOLVWDGH
6HQWHQFLDIRU YLVXDOL]DFLyQ
6HQWHQFLDIRULQ (MHUFLFLR
6HQWHQFLDIRUHDFKLQ &yPRERUUDUXQHOHPHQWRVLQOD
(MHUFLFLR UHIHUHQFLD
1RWD (MHUFLFLR
6HQWHQFLDZKLOH 1RWD
6HQWHQFLDGRZKLOH &yPRHOLPLQDUDWRGRVORVKLMRVGHXQ
)XQFLRQHV FRQWHQHGRU
)XQFLRQHVJOREDOHV (MHUFLFLR
0pWRGRV
&yPRPRYHUDORVKLMRVGHSURIXQGLGDG
)XQFLRQHVSHUVRQDOL]DGDV
VHW&KLOG,QGH[
/ODPDGRRLQYRFDFLyQGHXQDIXQFLyQ
)XQFLRQHVGHXVXDULR (MHPSOR
)XQFLyQWLSRVHQWHQFLD (MHPSOR
(MHPSOR
)XQFLRQHVWLSRH[SUHVLRQHV
1RWD &yPRPDQLSXODUXQREMHWRTXH\DH[LVWH
)XQFLRQHVTXHUHJUHVDQYDORUHV HQHOHVFHQDULR
)XQFLRQHVDQLGDGDV (MHPSOR
(MHUFLFLR &yPROODPDUDXQREMHWRJUiILFR
3DVDUSDUiPHWURVSRUYDORUR GHODOLEUHUtD
SRUUHIHUHQFLD 1RWD
(MHUFLFLR (MHPSOR
9DORUHVSUHGHWHUPLQDGRVHQODV 1RWD
IXQFLRQHV &yPRHVFULELUFyGLJRGHQWURGHOREMHWR
(OREMHWRDUJXPHQWV $PDQHUDGHFRQFOXVLyQ
(MHUFLFLR &DStWXOR
(OSDUiPHWUR«UHVW
0DQHMRGHHYHQWRV
(MHUFLFLR
1RWD 0DQHMRGHHYHQWRV
¢4XpVRQORVHYHQWRV"
(MHPSORSUiFWLFRXVRGHFRQGLFLRQDOHV
1RWD
(MHPSORSUiFWLFRXVRGHORVFLFORV
(OHPHQWRVGHOPDQHMRGHHYHQWRV
$PDQHUDGHFRQFOXVLyQ
(MHPSORFRQJDWRV
&DStWXOR 'HWHUPLQDUHOHYHQWR\VX
/DOLVWDGHYLVXDOL]DFLyQ LGHQWLILFDGRU
,QWURGXFFLyQ 1RWD
1RWD 'HWHUPLQDUHOWLSRGHREMHWR
$xDGLUXQHOHPHQWRDODOLVWDGH GHOHYHQWR(YHQWREMHFW
1RWD
YLVXDOL]DFLyQ
&UHDXQOLVWHQHUSDUDHOHYHQWR
(MHUFLFLR
1RWD
(MHUFLFLR
6XVFULELUHOREMHWRGHVWLQR
/LVWDGHYLVXDOL]DFLyQGHQWURGHXQ WDUJHWREMHFWDOOLVWHQHU
FRQWHQHGRU 1RWD
1RWD (VSHUDUDTXHODVFRVDVVXFHGDQ
(MHUFLFLR &UHDULQWHUDFFLRQHVGHOPRXVH
1RWD (MHUFLFLR
&yPRUHSDUHQWDUUHSDUHQWREMHWRV 1RWD
HQODOLVWDGHYLVXDOL]DFLyQ (MHUFLFLR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&RQWHQLGR ;,,,
(MHUFLFLR SDUDFUHDUXQDUUHJOR\QRJHQHUDUHO
$UUDVWUDU\VROWDUREMHWRVFRQHO ~OWLPRFXDGUR
DSXQWDGRUGHOPRXVH *HQHUDUHODOJRULWPRSDUD´EDUDMDUµ
(MHUFLFLR ORVFXDGURVGHODILJXUD
*HVWLRQDUHOHYHQWRHQWHU)UDPH ¢&yPRVDEHPRVVLXQPRYLPLHQWR
1RWDV HVYiOLGR"
(MHUFLFLR 0RYHUODVSLH]DV
5HVSRQGHUDHYHQWRVGHOPRXVH $PDQHUDGHFRQFOXVLyQ
(MHUFLFLR
&DStWXOR
5HVSRQGHUDHYHQWRVGHOWHFODGR
(MHUFLFLR
7H[WR
-XHJRGHPHPRULD ,QWURGXFFLyQ
(VWDGRVGHODVFDUWDV )RUPDWRGHXQWH[WR
&RGLILFDUODIXQFLyQGHOOLVWHQHU )RUPDWHRFRQODFODVH7H[W)LHOG
$PDQHUDGHFRQFOXVLyQ (MHUFLFLR
)RUPDWRFRQ7H[W)RUPDW&ODVV
&DStWXOR 1RWD
&UHDUFODVHVYLVXDOHV (MHPSOR
SHUVRQDOL]DGDV )RUPDWRFRQ+70/
,QWURGXFFLyQ (MHUFLFLR
(MHUFLFLR )RUPDWRFRQ&66
1RWD 1RWD
(MHUFLFLR (MHUFLFLRIRUPDWRFRQ&66LQWHUQRV
1RWD (MHUFLFLRIRUPDWRFRQ&66H[WHUQRV
&UHDUERWRQHVVHQFLOORV 7H[WRVGHHQWUDGD
1RWD (MHUFLFLR
(MHPSOR (YHQWRVGHODVFDMDVGHWH[WR
1RWD (MHUFLFLR
&DUJDULPiJHQHVH[WHUQDVHQ $PDQHUDGHFRQFOXVLyQ
WLHPSRGHHMHFXFLyQODFODVH/RDGHU &DStWXOR
(MHPSOR
7H[WR
(MHPSORHVFXFKDUDGLIHUHQWHV
HYHQWRVGHOSURJUHVRGHGHVFDUJD ,QWURGXFFLyQ
GHXQDLPDJHQ /DVEDVHV
1RWD &UHDUREMHWRV;0/FRQ$6
(MHPSORSURJUHVRGHGHVFDUJD 1RWD
GHXQDLPDJHQHQFDPSRWH[WR $xDGLUQRGRV;0/FRQ$6
1RWD $xDGLUDWULEXWRV;0/FRQ$6
&DUJDUHLQWHUDFWXDUFRQSHOtFXODV %RUUDU\PRGLILFDUQRGRV\DWULEXWRV
/HFWXUDGHXQDUFKLYR;0/
H[WHUQDV
(MHPSORGHVDUUROORGHXQMXHJR
(MHPSOR
GHWULYLD
(MHPSOR
$PDQHUDGHFRQFOXVLyQ
1RWD
¢<ORVPDSDVGHELWV" &DStWXOR
/DFODVHIODVKJHRP5HFWDQJOH 7H[WR
/DFODVHIODVKJHRP3RLQW ,QWURGXFFLyQ
1RWD 0pWRGROLQH6W\OH
&UHDFLyQGHXQURPSHFDEH]DV 1RWD
(MHPSORURPSHFDEH]DVWLSR 0pWRGRPRYH7R
FDMDGHQ~PHURV 0pWRGROLQH7R
0RGLILFDUHODOJRULWPRGHFRUWDGR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
;,9 &RQWHQLGR
(MHUFLFLRGLEXMDUGRVWULiQJXORV $FHOHUDFLyQ
0pWRGRVEHJLQ)LOO\HQG)LOO (MHPSOR
(MHPSORFRQWRUQHDU\UHOOHQDU 2WURVPRYLPLHQWRV
GRVWULiQJXORV (MHPSORPRYLPLHQWRHQIRUPD
0pWRGRVEHJLQ*UDGLHQW)LOO\ FLUFXODU
HQG)LOO (MHPSORPRYLPLHQWRHQIRUPD
(MHUFLFLRFXDGURFRQFRORUHV VHQRLGDO
GHVYDQHFLGRV (MHPSORPRYLPLHQWRRYDO
0pWRGRGUDZ5HFW (MHPSORPRYLPLHQWRDOHDWRULR
(MHUFLFLRGHILQLUOtQHDGHFRQWRUQR\WLSRGH (MHPSORPRYLPLHQWRDOFRPSiV
UHOOHQR GHOFXUVRU
0pWRGRFXUYH7R -XHJRFRQXQWDQTXHTXHXWLOL]D
(MHUFLFLRGLEXMDUXQDFXUYDDSDUWLUGH PRYLPLHQWRVDQJXODGRV
WUHVSXQWRV (OPRWRUGHOWDQTXH
(MHUFLFLRFtUFXORDSDUWLUGHFXDWURFXUYDV /DIXQFLyQWHFOD$EDMR
/DIXQFLyQWHFOD$UULED
(MHUFLFLRFtUFXORUHDOL]DGRFRQRFKR
0RYHUHOWDQTXH
VHJPHQWRV
$YDQ]DUHOWDQTXH
(MHUFLFLR (MHPSORWDQTXHHVWiWLFR
1RWD 0RYHUVHDXQDSRVLFLyQ
0pWRGRGUDZ&LUFOH
(ODUFRWDQJHQWH
(MHUFLFLRFtUFXORFRQHOPpWRGRGUDZ&LUFOH $PDQHUDGHFRQFOXVLyQ
0pWRGROLQH*UDGLHQW6W\OH
(MHUFLFLRFXDGURFRQGHJUDGDGRV
0pWRGRGUDZ(OLSVH
(MHUFLFLRGLEXMDUXQDHOLSVH
0pWRGREHJLQ%LWPDS)LOO
(MHUFLFLR
0RYLPLHQWRGHVKDSHVFRQGLEXMRV
(MHUFLFLRGLEXMRGHXQDIXQFLyQVHQRLGDO
0pWRGRFOHDU
(MHUFLFLR
(MHPSORWUD]RGHXQDJUiILFDGHOtQHDV
$PDQHUDGHFRQFOXVLyQ
&DStWXOR
$QLPDFLyQFRQ$FWLRQ6FULSW
,QWURGXFFLyQ
(MHUFLFLR
(MHUFLFLR
0RYHUXQREMHWRDXQDFRRUGHQDGD
HVSHFtILFD
(MHUFLFLR
0RYHUXQREMHWRDXQDGLUHFFLyQ
GHWHUPLQDGD
(MHPSOR
0RYHUXQREMHWRHQIRUPDFLUFXODU
(MHPSOR
(DVLQJ
(MHPSOR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
Introducción
$FWLRQ6FULSW KD HYROXFLRQDGR GH XQD IRUPD DVRPEURVD 'H VHU XQ FRQMXQWR GH
LQVWUXFFLRQHV VHQFLOODV SHUR TXH IXHURQ XQD PDUDYLOOD HQ VX PRPHQWR ¢UHFXHUGD
ORVFRPDQGRVIVFRPPDQG"KDVWDQXHVWURVGtDVTXHFRQWDPRVFRQXQDSODWDIRUPD
)ODVKODFXDOHVWiEDVDGDHQ$FWLRQ6FULSW
3DUWHGHOUHWRDOTXHVHKDHQIUHQWDGR)ODVKHVHOGHVHUYLUDGRVDPRVSRUXQ
ODGRDORVDUWLVWDVGHGLVHxRTXHQRVKDQVRUSUHQGLGRFRQVXLQJHQLR\SRUHORWURD
ORV GHVDUUROODGRUHV TXH GHVGH XQ SULQFLSLR YHtDQ D )ODVK FRPR XQ PHUR
HQWUHWHQLPLHQWR\D$FWLRQ6FULSWFRPRXQOHQJXDMH´PHQRUµ\HQPXFKRVFDVRVQLOR
FRQVLGHUDEDQXQOHQJXDMHVyORXQVFULSW&UHRTXHQRFDEHGXGDGHTXH)ODVKQR
HVHOPHMRUSDTXHWHSDUDHGLFLyQGHYLGHRQLSDUDODHGLFLyQGHPDSDVGHELWVQL
SDUDHOGLEXMRYHFWRULDOSHURFRQVLGHURTXHHVHOPHMRULQWHJUDGRUGHPHGLRV\TXH
SRVHHXQH[FHOHQWHOHQJXDMHSDUDODSURJUDPDFLyQPXOWLPHGLD$FWLRQ6FULSW
(VWRSODQWHDQXHYRVGLOHPDV¢SXHGHH[LVWLUXQGLVHxDGRUPXOWLPHGLDTXHQR
VHSD GH SURJUDPDFLyQ" 6HJ~Q $GREH ORV GLVHxDGRUHV TXH VH GHGLTXHQ D OD
PXOWLPHGLD GHEHUiQ SRVHHU FRQRFLPLHQWRV GH SURJUDPDFLyQ ¢+D YLVWR VROLFLWXGHV
GHWUDEDMRGRQGHSLGHQGLVHxDGRUHVFRQFRQRFLPLHQWRVGH-DYD6FULSW3+30\64/\
$FWLRQ6FULSW" $Vt TXH VL XVWHG HV GLVHxDGRU \ TXLHUH DSUHQGHU $FWLRQ6FULSW YD SRU
EXHQFDPLQR
8QDFDUDFWHUtVWLFDTXHKHYLVWRHQPLDFWLYLGDGGRFHQWHHVTXH$FWLRQ6FULSWGD
PLHGR«\$FWLRQ6FULSWGDSDYRU1DGDPiVHUUyQHR7RGRHOWLHPSRTXHLQYLHUWD
HQDSUHQGHUHVWDWHFQRORJtDOHVHUiGHHQRUPHXWLOLGDGHQVXYLGDSURIHVLRQDO
(V FLHUWR TXH 0DFURPHGLD \ DKRUD $GREH WRPDURQ GHFLVLRQHV DUULHVJDGDV
KDVWD FRQYHUWLU D )ODVK HQ XQD SODWDIRUPD GH GHVDUUROOR YLGHR \ PXOWLPHGLD
0XFKRVFXDQGRVDOLyODSULPHUDYHUVLyQGH$FWLRQ6FULSWHQ)ODVKGHFtDQTXHHUD
´LOyJLFRµ XQ SURJUDPD IRUPDO SDUD XQ SDTXHWH GH DQLPDFLyQ (O WLHPSR GHPRVWUy
TXHVHHTXLYRFDEDQ/XHJRVHDJUHJDURQFRPSRQHQWHV)ODVK0;\)ODVK0;
\ QXHYDV YRFHV GLMHURQ TXH HUD ´LOyJLFRµ DJUHJDUOH D )ODVK KHUUDPLHQWDV GH
GHVDUUROOR)ODVKHUDSDUDDQLPDGRUHV$KRUDFRQHVWHQXHYRFDPELR$FWLRQ6FULSW
KHPRV HVFXFKDGR YRFHV TXH GLFHQ TXH HV ´LOyJLFRµ XQ OHQJXDMH FRQ FODVHV
SROLPRUILVPR KHUHQFLDV \ HQFDSVXODFLyQ 'HVGH PL SXQWR GH YLVWD QXHYDPHQWH HO
WLHPSR OH GDUi OD UD]yQ D )ODVK 3RU HVR HO SULPHU FDStWXOR GH HVWH OLEUR VH OODPD
HYROXFLRQDURPRULU\GHHVDVYRFHVTXHDXJXUDQHOILQGH)ODVKVHJXUDPHQWHOHV
RFXUULUiORPLVPRTXHDORVGLQRVDXULRV
$SUHQGHU $FWLRQ6FULSW QR VyOR OH VHUi GH XWLOLGDG SDUD KDFHU DSOLFDFLRQHV
PXOWLPHGLD VLQR WDPELpQ XWLOL]DU )OH[ $LU \ GHVDUUROOR HQ SODWDIRUPDV PyYLOHV FRQ
)ODVK/LWH(OFDPELRLPSOLFDXQDQXHYDIRUPDGHSHQVDU(VXQUHWRTXHYDOGUi
ODSHQDUHDOL]DU
(VWH OLEUR LQWHQWD TXH HVH VDOWR HYROXWLYR VHD OR PiV VHQFLOOR H LQGRORUR
SRVLEOH &RPR GLFH XQ UHIUiQ RULHQWDO 3DUD SRGHU DSUHQGHU HV QHFHVDULR SULPHUR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
ActionScript 3.0.
Evolucionar o morir 1
1XHYD$90\QXHYR5HQGHU
/RV FDPELRV HQ $FWLRQ6FULSW VRQ LPSRUWDQWHV (Q JHQHUDO SXHGH GHFLUVH TXH HO
UHSURGXFWRU GH )ODVK HO )ODVK 3OD\HU FRQVWD GH XQ PRWRU TXH LQWHUSUHWD DO
$FWLRQ6FULSW $FWLRQ6FULSW 9LUWXDO 0DFKLQH R $90 \ GH RWUR TXH OR KDFH FRQ ORV
REMHWRVHQODSDQWDOOD 5HQGHU $PERVHOHPHQWRVKDQ FDPELDGR\VLD HVWRVHOH
DxDGHHOKHFKRGHTXHKD\XQQXHYRPRGHORGHHYHQWRV
'HELGR D TXH OD IRUPD GH GHVDUUROODU \ GH SHQVDU HQ )ODVK FDPELD
FRQVWDQWHPHQWHHVXQSUREOHPD´HQVHxDUµHVWHWLSRGHOHQJXDMH (Q HVWHOLEURVH
KD GHFLGLGR LQLFLDU FRQ OD H[SOLFDFLyQ GH OD QXHYD HVWUXFWXUD GHO OHQJXDMH
SURJUDPDFLyQ RULHQWDGD D REMHWRV SDUD SRVWHULRUPHQWH DERUGDU OD QXHYD PDQHUD
GHUHLQWHUSUHWDUORVREMHWRV
$QWHV GH LQLFLDU FRQ HO WHPD VH KDUi XQ EUHYH UHSDVR GH OD KLVWRULD GH
$FWLRQ6FULSW
$FWLRQ6FULSW
/D SDWLQHWD $SDUHFH FRQ )ODVK (UD XQ FRQMXQWR
UHODWLYDPHQWH UHGXFLGR GH FRPDQGRV TXH VH PDQHMDEDQ FRQ OLVWDV \
SDUiPHWURV 5HVXOWy XQD PDUDYLOOD HQ VXV WLHPSRV /RV XVXDULRV
´HPSXMDURQµDOOtPLWHHVWRVFRPDQGRV
$FWLRQ6FULSW 8Q DXWR FRPSDFWR $SDUHFLy HQ )ODVK &RPSDWLEOH FRQ HO
HVWiQGDU(&0$(QFRPSDUDFLyQFRQHOOHQJXDMHDQWHULRUVHYHtDFRPR
XQ HQRUPH DYDQFH OR IXH /RV XVXDULRV ´HPSXMDURQµ DO OtPLWH HVWH
OHQJXDMH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
3URJUDPDFLyQRULHQWDGDDREMHWRVFXHVWLyQGHJDWRV
$FWLRQ6FULSW
$FWLRQ6FULSW
W 8Q DXWR GHSRUWLYR (Q HVWD YHUVLyQ \D VH FRQWDED FRQ
KHUUDPLHQWDV PiV VyOLGDV GH SURJUDPDFLyQ RULHQWDGDV D REMHWRV DGHPiV
GHTXHHOOHQJXDMHPLVPRIXHUHHVFULWRSDUDKDFHUORPiVUiSLGR\SRWHQWH
1XHYDPHQWHORVXVXDULRV´HPSXMDURQµDOOtPLWHHVWHOHQJXDMH
$FWLRQ6FULSW
8Q SRWHQWH WUiLOHU $GREH HQWUHJD DKRUD XQ OHQJXDMH
FRPSOHWDPHQWH RULHQWDGR D REMHWRV OLVWR SDUD VRSRUWDU WRGD HVSHFLH GH
FDUJDKDFHUODUJRVUHFRUULGRV\EDMRFLHUWRVFDVRVPXFKRPiVUiSLGRTXH
HODQWHULRU/DSUHJXQWDHV¢FXiQWRWLHPSRWDUGDUiQORVXVXDULRVHQOOHYDU
DOOtPLWHHVWHOHQJXDMH"
$FWLRQ6FULSWPiVDOOiGH)ODVK6LELHQHVFLHUWRTXH$FWLRQ6FULSWLQLFLy
HQ HO OHMDQR )ODVK DKRUD H[LVWHQ YDULRV SDTXHWHV GRQGH VH SXHGH
SURJUDPDUFRQHVWHOHQJXDMH)OH[)ODVK/LWH\$LU$FWLRQ6FULSWKDVDOLGRGH
VXFDMDSDUDFRQYHUWLUVHHQXQHVWiQGDUGHGHVDUUROOR
3URJUDPDFLyQRULHQWDGDDREMHWRVFXHVWLyQ
GHJDWRV
/D SURJUDPDFLyQ RULHQWDGD D REMHWRV 223 2ULHQWHG 2EMHFWV 3URJUDPPLQJ QR HV
QXHYDGHKHFKRHVPX\YLHMDSXHVGDWDGH\QRSDVyGHVHUXQH[SHULPHQWR
GH ODERUDWRULR 3RVWHULRUPHQWH VXV DXWRUHV 2OH -RKDQ 'DKO \ .ULVWHQ 1\JDDUG
QRUXHJRVODQ]DURQ6,08/$6LVHUHFXHUGDORVOHQJXDMHVTXHVHXWLOL]DEDQ HQ
ODV FRPSXWDGRUDV GH SDQWDOODV YHUGHV HUDQ ´SURFHGXUDOHVµ HV GHFLU HVWDEDQ
EDVDGRVHQSURFHGLPLHQWRV$SDUWLUGHOVXUJLPLHQWRGHODVLQWHUIDFHVJUiILFDVSDUD
XVXDULRV *8, OD QHFHVLGDG GH OHQJXDMHV RULHQWDGRV D REMHWRV QR KD
SURFHGLPLHQWRVIXHFDGDYH]PD\RU
)LQDOPHQWHHOGHVWLQRQRVDOFDQ]y$KRUDODSURJUDPDFLyQHQ)ODVKWLHQHTXH
RULHQWDUVHDREMHWRV$VtTXHFRPRGLMR3LNDFK~´HYROXFLRQDURPRULUµ3DUDTXHQR
VHDWDQGXURHOWUiQVLWRDHVWHOHQJXDMHVHLQLFLDUiFRQXQDDQDORJtDORVJDWRV
/DVFODVHVJDWRV
8QFRQFHSWRTXHWRGRVFRQRFHPRVHVODH[LVWHQFLDGHOUHLQRDQLPDO$ORVDQLPDOHV
VHOHVDJUXSDHQHVSHFLHV\VXEHVSHFLHV7yPHVHSRUHMHPSORDORVJDWRVFRPXQHV
DTXLHQHVVHOHVSRQGUiODHWLTXHWD´&ODVHµ$KRUDVHWLHQHXQDFODVHTXHVHOODPD
*DWRVRWUD3HUURV+iPVWHUHVHWF/RVJDWRVWLHQHQFDUDFWHUtVWLFDVGLIHUHQWHVDODV
GHPiVFODVHVSRUHVRVHVDEHTXHXQDQLPDOSHUWHQHFHDFLHUWRJpQHURRFODVH
7DPELpQWLHQHQDFFLRQHVTXHORVGHPiVDQLPDOHVQRSXHGHQKDFHUFRPRPDXOODUR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$FWLRQ6FULSW(YROXFLRQDURPRULU
URQURQHDU $VLPLVPR KD\ FRVDV D TXH ORV JDWRV UHDFFLRQDQ \ HQ FDPELR ORV RWURV
DQLPDOHV QR 8QD FODVH QR HV RWUD FRVD TXH XQ FRQFHSWR DEVWUDFWR FRQ
FDUDFWHUtVWLFDV ~QLFDV TXH LQGLFD TXH XQ LQGLYLGXR SHUWHQHFH D FLHUWD ´FODVHµ GH
DQLPDOHV
$KRUDSLpQVHVHHQXQDQLPDOHQFRQFUHWR*DWLWReOHVEDMLWRVXSHORHVFRORU
EODQFRHVUHJRUGHWHWLHQHXQDYR]XQSRFRFKLOORQD\OHJXVWDPXFKRGRUPLU
2WURHVSpFLPHQGHOJUXSRGHORVJDWRVHV&KXFKRpOHVPiVDOWRTXH*DWLWR
WLHQHHOSHORJULV\HVPX\RFXUUHQWH
$Vt VH SRGUtD VHJXLU GHVFULELHQGR D FDGD HOHPHQWR GHO JUXSR JDWRV DKRUD
SLHQVH HQ OD SDQGLOOD GH 'RQ *DWR (O SXQWR LPSRUWDQWH HV TXH FDGD PLQLQR WLHQH
VXV FDUDFWHUtVWLFDV ~QLFDV TXH ORV KDFH GLIHUHQWHV (Q 223 VH OHV OODPD D ODV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
3URJUDPDFLyQRULHQWDGDDREMHWRVFXHVWLyQGHJDWRV
FDUDFWHUtVWLFDV GH FDGD LQGLYLGXR SURSLHGDGHV D ODV DFFLRQHV TXH VRQ YHUERV VH
OHVFRQRFHFRPRPpWRGRV$GHPiVDODVPDQHUDVGHUHDFFLRQDUDQWHXQSUREOHPD
VH OHV GHQRPLQD HYHQWRV PLHQWUDV TXH D ORV LQGLYLGXRV VH OHV LGHQWLILFD FRPR
LQVWDQFLDV3RQLHQGRORDQWHULRUHQ$FWLRQ6FULSWVHHVFULEHQDVt
(QUHVXPHQXQDFODVHHVXQDUHSUHVHQWDFLyQDEVWUDFWDTXHFRQWLHQHSURSLHGDGHV
PpWRGRV \ PDQHMDGRUHV GH HYHQWRV DOJXQR GH HVWRV WUHV SDUD FUHDU REMHWRV R
LQVWDQFLDVORVFXDOHVKHUHGDQODVSURSLHGDGHVPpWRGRV\PDQHMDGRUHVGHHYHQWRV
GHODFODVH
2EYLDPHQWHHOWHPDGHODSURJUDPDFLyQRULHQWDGDDREMHWRV\DORVJDWRVHV
PXFKR PiV FRPSOHMR TXH OR TXH DTXt VH GHVFULELy 6H WUDWD VRODPHQWH GH XQD
DQDORJtDGHWUDEDMRFRQODFXDOVHSUHWHQGHHMHPSOLILFDUWpUPLQRVDEVWUDFWRV
$QWHVGHHPSH]DUDUHDOL]DUREUDVGHDUWHHQ)ODVK\HQ$FWLRQ6FULSWVHGHEHUi
FRQRFHUXQDVHULHLPSRUWDQWHGHFRQFHSWRV(VQHFHVDULRSHGLUDOOHFWRUTXHQRVH
GHVHVSHUH\DTXHWRGRHOFRQRFLPLHQWRTXHDGTXLHUDYDOGUiODSHQD
&XHVWLyQGHVLQWD[LV
$QWHVGHDERUGDUDOJXQRVDVSHFWRVGHODSURJUDPDFLyQRULHQWDGDDREMHWRVGHEHQ
UHYLVDUVHDOJXQRVSXQWRVUHODFLRQDGRVFRQODVLQWD[LVGHOOHQJXDMH
$6GLVWLQJXHHQWUHPD\~VFXODV\PLQ~VFXODV
(ORSHUDGRUSXQWRSHUPLWHDFFHGHUDODVSURSLHGDGHV\PpWRGRVGHORV
REMHWRV
(Q$6\DQRVHDFHSWDODVLQWD[LVGHGLDJRQDOHV
8QDOLWHUDOHVXQYDORUTXHDSDUHFHHQHOFyGLJRSRUHMHPSOR´+RODµ
WUXH
(OSXQWR\FRPDLQGLFDTXHVHWHUPLQDXQDVHQWHQFLD
/RVFRPHQWDULRVGHOtQHDGREOHGLDJRQDO\GHEORTXH
VH
PDQWLHQHQ
/DVSDODEUDVUHVHUYDGDVHQ$6VRQ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$FWLRQ6FULSW(YROXFLRQDURPRULU
DV EUHDN FDVH FDWFK
FODVV FRQVW FRQWLQXH GHIDXOW
GHOHWH GR HOVH H[WHQGV
IDOVH ILQDOO\ IRU IXQFWLRQ
LI LPSOHPHQWV LPSRUW LQ
LQVWDQFHRI LQWHUIDFH LQWHUQDO LV
QDWLYH QHZ QXOO SDFNDJH
SULYDWH SURWHFWHG SXEOLF UHWXUQ
VXSHU VZLWFK WKLV WKURZ
WR WUXH WU\ W\SHRI
XVH YDU YRLG ZKLOH
ZLWK
7,3'(&(57,),&$&,Ð1
3UHJXQWD¢&DVH6HQVLWLYHHVXQDFDUDFWHUtVWLFDGH$6"
5HVSXHVWD$FWLRQ6FULSWHV&DVH6HQVLWLYHHVGHFLUGLVWLQJXHHQWUH
PD\~VFXODV\PLQ~VFXODV
¢'yQGHLQLFLDU"
3ULPHUR ODV FODVHV VH HVFULEHQ HQ DUFKLYRV GH WH[WR H[WHUQRV 3DUD HOOR VH SXHGH
XWLOL]DU OD KHUUDPLHQWD GH )ODVK XQ SURFHVDGRU WLSR 'UHDPZHDYHU )OH[ R XQ
SURFHVDGRU GH WH[WR TXH QR GHMH FDUDFWHUHV HVSHFLDOHV SRU OR TXH DTXt VH DVXPH
TXHHOXVXDULRORKDUiSRUPHGLRGHO,'(GH)ODVK$VtTXHVLJXLHQGRODWUDGLFLyQGH
.HUQLJKDQ 5LWFKLH7KH&3URJUDPPLQJ/DQJXDJHVHUHDOL]DHOWUDGLFLRQDO
´+HOOR:RUOGµ
7,3'(&(57,),&$&,Ð1
3UHJXQWD¢(Q$6VHSHUPLWHFDSWXUDUFyGLJRHQORVFOLSVGHSHOtFXODR0RYLH
&OLSV"
5HVSXHVWD(QHVWDYHUVLyQ\DQRVHSXHGH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
3URJUDPDFLyQRULHQWDGDDREMHWRVFXHVWLyQGHJDWRV
(OFDVFDUyQ
/D SURJUDPDFLyQ RULHQWDGD D REMHWRV GH $FWLRQ6FULSW WHQGUi HQ OD YHUVLyQ XQ
QXHYR FDVFDUyQ TXH DJUXSDUi ODV FODVHV OD VHQWHQFLD SDFNDJH
SDFNDJH R XQ SDTXHWH (Q
$6ORVSDTXHWHVHUDQFDUSHWDVGRQGHVHJXDUGDEDQODVFODVHVHVGHFLUHVSDFLRV
ItVLFRV HQ QXHVWUR GLVFR GXUR (Q $6 ORV SDTXHWHV SDFNDJH VHUiQ HQWLGDGHV
OyJLFDVTXHDJUXSDQGLIHUHQWHVFODVHV6XVLQWD[LVEiVLFDHV
package {
… aquí van las diferentes clases
}
(VWHEORTXHGHFyGLJRVHUiFRQRFLGRFRPRSDTXHWHSRURPLVLyQGHIDXOWSDFNDJH
6H SXHGH GHFLU TXH XQ SDTXHWH VHUYLUi SDUD RUJDQL]DU \ DJUXSDU FODVHV /RV
SDTXHWHVSHUPLWLUiQFRPSDUWLUFyGLJR\HYLWDUORVFRQIOLFWRVHQODVQRPHQFODWXUDVGH
FODVHVPpWRGRV\SURSLHGDGHV
(OPDQHMRGHORVSDTXHWHVSXHGHVHUPiVFRPSOHMR(QHVWHPRPHQWRVyORVH
OHFRQVLGHUDUiFRPRXQDDJUXSDFLyQGHFODVHV
7,3'(&(57,),&$&,Ð1
3UHJXQWD¢&XiOHVHOFRQWHQHGRUTXHQRVVLUYHSDUDDOPDFHQDUODVFODVHV"
5HVSXHVWD8QSDTXHWHSDFNDJH
8Q SDTXHWH HVWi UHODFLRQDGR FRQ XQ QDPHVSDFH DOJXQRV WH[WRV OR WUDGXFHQ
FRPR ´HVSDFLRV GH QRPEUHVµ SHUR DTXt VH VHJXLUi FRQVHUYDQGR HO WpUPLQR HQ
LQJOpVFRQFHSWRTXHVHH[SOLFDUiPiVDGHODQWH
$VtTXHVHDEUH)ODVK\VHVHOHFFLRQDXQDUFKLYRQXHYRWLSR$6DOFXDOVH
OHQRPEUDMHORXIOD(QHVWHDUFKLYRVHOHOODPDODFODVH-HORXSDUDHOVDOXGR
$KRUD VH DEUH XQ DUFKLYR QXHYR WLSR $6 FRQ )LOH
)LOH!1HZ
!1HZ!$FWLRQ6FULSW )LOH
)LOH DO
FXDO VH OH JUDED FRQ HO QRPEUH -HORXDV
-HORXDV (Q HO SDQHO GH DFFLRQHV VH HVFULEH OD
GHILQLFLyQGHOSDTXHWH
package {
}
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$FWLRQ6FULSW(YROXFLRQDURPRULU
1RWD
(Q&6VHWLHQHQQXHYDVRSFLRQHVHQODYHQWDQD1XHYRVGRFXPHQWRV&UHDUXQDFODVH
\&UHDUXQDLQWHUIDFHFRPRVHYHHQOD)LJ
)LJXUD1XHYDVRSFLRQHVHQ)ODVK3URIHVVLRQDO&6
)LJXUD
8QDUFKLYRGHWLSR$FWLRQ6FULSW&ODVVHVFULELUiSRUQRVRWURVODHVWUXFWXUDGH
ODFODVHFRPRVHREVHUYDHQOD)LJ
)LJXUD$UFKLYRGHFODVHHQ)ODVK3URIHVVLRQDO&6
)LJXUD
(QRWUDVYHUVLRQHVEDVWDUiFRQHVFULELUHOFyGLJR
'HPRPHQWRDPERV DUFKLYRVWDQWRHOIODFRPR HO DVGHEHUiQ UHVLGLU HQ OD
PLVPDFDUSHWD1yWHVHTXHQRVHOHKDSXHVWRQRPEUHDOSDTXHWH$FRQWLQXDFLyQVH
HODERUDODFODVH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
3URJUDPDFLyQRULHQWDGDDREMHWRVFXHVWLyQGHJDWRV
/RVHOHPHQWRVGHODFODVH
'HQWURGHOFDVFDUyQGHOSDTXHWHVHHVFULEHODHVWUXFWXUDGHODFODVHGHODVLJXLHQWH
PDQHUD
package {
public class Jelou {
}
6HREVHUYDUiTXHDOLQLFLRVHWLHQHUHVHUYDGDODSDODEUD´SXEOLFµ$HVWDVSDODEUDV
FODYHV VH OHV FRQRFH FRPR PRGLILFDGRUHV GH DFFHVR
DFFHVR R DFFHVV PRGLILHUV /RV
PRGLILFDGRUHVVRQSDODEUDVSDUDGHWHUPLQDUVLHOFyGLJRTXHVHHVFULEHSXHGHVHU
DFFHVDGRXWLOL]DGRSRURWURFyGLJRRVLQRVHWHQGUiHODFFHVR(QHVWHFDVRSXEOLF
SHUPLWLUiHODFFHVRGHFXDOTXLHUFyGLJRH[WHUQRDODFODVHHVGHFLUFXDOTXLHUFyGLJR
SRGUi XWLOL]DU VXV PpWRGRVHYHQWRV \ SURSLHGDGHV (VWH PRGLILFDGRU GH DFFHVR DO
LJXDO TXH SULYDWH VH XWLOL]DURQ HQ $6 (Q OD QXHYD YHUVLyQ VH WLHQHQ GRV
PRGLILFDGRUHVPiV/D7DEODGHVFULEHORVFXDWURPRGLILFDGRUHVGHDFFHVR
7DEOD0RGLILFDGRUHVGHDFFHVR
7DEOD
MODIFICADOR
DESCRIPCIÓN
DE ACCESO
public Se puede acceder a este código desde cualquier otro.
private Sólo se puede acceder al código dentro de la clase.
internal El atributo internal es similar al control de acceso predeter-
minado en Java, aunque en Java no hay ningún nombre
explícito para este nivel de acceso y sólo se puede alcanzar
mediante la omisión de cualquier otro modificador de acceso.
El atributo internal está disponible en ActionScript 3.0 para
ofrecer la opción de indicar, de manera explícita, la intención
de hacer que una propiedad sólo sea visible para orígenes de
llamada de su propio paquete.
protected Hace que una propiedad esté visible para los orígenes de
llamada en su propia clase o en una subclase. Es decir, una
propiedad protegida está disponible en su propia clase o para
clases de nivel inferior en la jerarquía de herencia. Esto se
cumple tanto si la subclase está en el mismo paquete como si
está en un paquete diferente.
3HUR QR KD\ PRWLYRV SDUD DQJXVWLDUVH SXHV GH PRPHQWR VyOR VH XWLOL]DUi HO
PRGLILFDGRU GH DFFHVR ´SXEOLFµ PLHQWUDV TXH ORV GHPiV PRGLILFDGRUHV VH
H[SOLFDUiQPiVDGHODQWH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$FWLRQ6FULSW(YROXFLRQDURPRULU
/DVHJXQGDSDUWHGHODVHQWHQFLDHVFODVVFODVVODFXDOLQGLFDDOFRPSLODGRUTXHVH
FODVV
HVWiHVFULELHQGRXQDFODVH3RU~OWLPRVHHVFULEHHOQRPEUHGHODFODVH2EVpUYHVH
TXHODSDODEUDLQLFLDFRQPD\~VFXODORFXDOHVREOLJDWRULRSDUDGHILQLUFODVHVSXHV
GH OR FRQWUDULR HO FRPSLODGRU QR HQFRQWUDUi OD GHILQLFLyQ GH OD FODVH \ PDUFDUi XQ
HUURU
1yWHVHWDPELpQTXHODGHILQLFLyQGHODFODVHQRWHUPLQDFRQSDUpQWHVLVFRPR
HQHOFDVRGHODVIXQFLRQHV6LVHFRPSLODHQHVWHPRPHQWRHOGRFXPHQWR)ODVKQR
GHEH PDUFDU QLQJ~Q HUURU SHUR WDPSRFR HIHFWXDU DOJR 3DUD HOOR VH QHFHVLWD XQ
SRFRPiVGHFyGLJR
/DIXQFLyQFRQVWUXFWRUD
6LVHWLHQHH[SHULHQFLDHQHOXVRGH$6VHHVWDUiIDPLOLDUL]DGRFRQHOXVRGHORV
FRQVWUXFWRUHV3RUHMHPSOR
package {
public class Jelou {
public function Jelou(){
}
}
(Q $6 ODV IXQFLRQHV FRQVWUXFWRUDV R FRQVWUXFWRUHV SRU RPLVLyQ VRQ S~EOLFDV \
QRSXHGHQWHQHURWURPRGLILFDGRUGHDFFHVR6LQHPEDUJRQRHVWiSRUGHPiVVHU
H[SOtFLWR\HVFULELUODFRQHOPRGLILFDGRUSXEOLF
(Q HVWH SXQWR VH KD UHDOL]DGR XQD IXQFLyQ TXH VHUYLUi SDUD TXH QXHVWURV
XVXDULRVFUHHQXQREMHWRGHQXHVWUDFODVH(QFDVRGHTXHVHRPLWDHVFULELUODFODVH
FRQVWUXFWRUDHOFRPSLODGRUFUHDUiXQDIXQFLyQYDFtDSDUHFLGDDODTXHVHDFDEDGH
KDFHU
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
3URJUDPDFLyQRULHQWDGDDREMHWRVFXHVWLyQGHJDWRV
/DIXQFLyQFRQVWUXFWRUDSXHGHUHFLELUSDUiPHWURVRGLVSDUDUFLHUWDVDFFLRQHV
(VWRV SDUiPHWURV VH GLVSDUDQ HQ HO PRPHQWR HQ TXH VH HODERUDQ ORV REMHWRV 'H
PRPHQWRVyORVHHVFULELUiODVLJXLHQWHVHQWHQFLD
package {
public class Jelou {
public function Jelou(){
trace(“Constructora de Jelou”);
}
}
}
2EVpUYHVHTXHHQHVWHFDVRHOQRPEUHGHODIXQFLyQVtOOHYDORVSDUpQWHVLV/DFODVH
HVWiOLVWDSDUDXWLOL]DUVHDXQTXHHQUHDOLGDGKDFHPX\SRFDFRVD
/ODPDUDODFODVH
6LVHFRPSLODHOGRFXPHQWR)ODVKQRGHEHUiPDQGDUQLQJ~QPHQVDMHGHHUURUSHUR
QR KDFH DEVROXWDPHQWH QDGD 3DUD HOOR VH GHEH FUHDU XQ REMHWR GH OD FODVH -HORX
&iPELHVHDOSDQHOGHDFFLRQHVGHODSHOtFXODMHORXIODSULPHUIRWRJUDPDFODYH(QpO
HVFUtEDVHHOVLJXLHQWHFyGLJR
)LJXUD9HQWDQDGHVDOLGD
)LJXUD
6LQRVHLPSRUWyODFODVH\WDPSRFRHVXQDFODVHLQWHUQD¢FyPRIXQFLRQy"
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$FWLRQ6FULSW(YROXFLRQDURPRULU
&ODVV3DWK
(OHMHPSORDQWHULRUIXQFLRQySRUTXHHQODYHQWDQDGHGLiORJR&ODVV3DWK
&ODVV3DWKVHOHKDEtD
&ODVV3DWK
LQGLFDGR D )ODVK TXH EXVFDUD ODV FODVHV HQ HO PLVPR GLUHFWRULR GRQGH UHVLGH HO
GRFXPHQWR IOD (VWR SXHGH REVHUYDUVH HQ (GLW
(GLW!3UHIHUHQFHV
!3UHIHUHQFHV!$FWLRQ6FULSW
!$FWLRQ6FULSW 3&V R
HQ)ODVK
)ODVK
)ODVK!3UHIHUHQFHV
!3UHIHUHQFHV!$FWLRQ6FULSW0DFV(QODSDUWHEDMDGHODYHQWDQDGHOD)LJ
!$FWLRQ6FULSW
KD\XQERWyQSDUDHQWUDUDO&ODVV3DWK
)LJXUD
)LJXUD9HQWDQDGHGLiORJR3UHIHUHQFHV
3~OVHVHHVWHERWyQ\VHDEULUiODYHQWDQDGHGLiORJRFRUUHVSRQGLHQWHFRPRVH
DSUHFLDHQOD)LJ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
3URJUDPDFLyQRULHQWDGDDREMHWRVFXHVWLyQGHJDWRV
)LJXUD
)LJXUD9HQWDQDGHGLiORJR$FWLRQ6FULSW6HWWLQJV
(QHOODVHREVHUYDQGRVOtQHDV/DSULPHUD HVXQSXQWRHOFXDOLQGLFD TXH HO
SULPHU OXJDU GRQGH HO FRPSLODGRU EXVFDUi ORV DUFKLYRV GH ODV FODVHV HV HO PLVPR
GLUHFWRULR GRQGH UHVLGH OD SHOtFXOD HVR VLJQLILFD HO SXQWLWR /D VHJXQGD OtQHD HV
GRQGH )ODVK JXDUGD ORV DUFKLYRV GH FODVH (VWD UXWD HVWi UHSUHVHQWDGD SRU
$SS&RQILJ (O YDORU GH OD UXWD YDULDUi VL HVWi HQ 3& FDUFKLYRV GH
SURJUDPD$GREH$GREH )ODVK &6HQ&RQILJXUDWLRQ R HQ 0DF $ SDUWLU GH HVWH
SXQWREXVFDUtDQODFDUSHWD$FWLRQ6FULSW\GHQWURGHpVWDODFDUSHWD&ODVVHV
¢4XpSDVDUtDVLVHFDPELDODFODVHGHFDUSHWDVLQDYLVDUOHD)ODVK"'HQWURGHO
GLUHFWRULR GH VX SHOtFXOD VH FUHD XQD FDUSHWD TXH VH OODPH PLV&ODVHV
PLV&ODVHV $VHJ~UHVH
TXH HO DUFKLYR -HORXDV VH HQFXHQWUH FHUUDGR \ PXpYDVH HO DUFKLYR DV D HVWD
FDUSHWD6HYXHOYHDFRPSLODUHOSURJUDPD\GHEHUiDSDUHFHUHQHOSDQHOGHHUURUHV
PHQVDMHVVLPLODUHVDORVTXHVHPXHVWUDQHQOD)LJ
)LJXUD
)LJXUD0HQVDMHVGHHUURU
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$FWLRQ6FULSW(YROXFLRQDURPRULU
3DUD QRWLILFDUOH D )ODVK TXH OD FODVH VH PRYLy R TXH QR VH HQFXHQWUD HQ HO
&ODVV3DWKVHQHFHVLWDXQDVHQWHQFLDLPSRUWLPSRUW
LPSRUW
6HQWHQFLDLPSRUW
3ULPHUR FRPR OD XELFDFLyQ GHO DUFKLYR GH FODVHV VH FDPELy GH ODV FDUSHWDV GHO
&ODVV3DWKVHGHEHHVFULELUHQODVHQWHQFLD SDFNDJHODXELFDFLyQHVGHFLUDEULUHO
SDFNDJH
DUFKLYR-HORXDV\DxDGLUODXELFDFLyQGHODUFKLYRFRPRVHLQGLFD
package misClases {
public class Jelou {
public function Jelou() {
trace("Constructor Jelou");
}
}
}
import misClases.Jelou;
var saludo:Jelou = new Jelou();
6HHMHFXWDHOGRFXPHQWR)ODVK(OUHVXOWDGRGHEHVHUHOPLVPR
3URSLHGDGHV\PpWRGRV
+DVWD HO PRPHQWR OD FODVH FUHDGD QR KDFH QDGD 6yOR PDQGD XQ PHQVDMH WUDFH
WUDFH
FXDQGRVHFUHDHO REMHWR3DUDTXHODVFRVDVVXFHGDQ VHQHFHVLWDQORVPpWRGRV \
ODVSURSLHGDGHV&RPRVHPHQFLRQyDQWHULRUPHQWHXQDSURSLHGDGHVXQDYDULDEOH
DVRFLDGDDXQREMHWR$VLPLVPRXQPpWRGRHVXQDIXQFLyQDVRFLDGDDXQREMHWRHV
GHFLUGHQWURGHODFODVHQRVRQRWUDFRVDTXHYDULDEOHV\IXQFLRQHVSHURFXDQGRVH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
3URJUDPDFLyQRULHQWDGDDREMHWRVFXHVWLyQGHJDWRV
OODPDQGHVGHDIXHUDVHFRQYLHUWHQHQSURSLHGDGHV\PpWRGRVUHVSHFWLYDPHQWH(Q
HODUFKLYR-HORXDVVHPRGLILFDHOFyGLJRSDUDTXHTXHGHGHODVLJXLHQWHIRUPD
package misClases {
public class Jelou {
public var saludo:String;
import misClases.Jelou;
var saludo:Jelou = new Jelou("Buenos días");
trace(saludo.hola("Paco"));
/DSULPHUDOtQHDHVHOLPSRUW
LPSRUWSDUDODFODVH1RKD\FDPELR(QODVHJXQGDOtQHDVH
LPSRUW
FUHD HO REMHWR SHUR VH OH HVWi SDVDQGR XQ DUJXPHQWR TXH VH JXDUGD HQ HO
SDUiPHWURVDOXGR
VDOXGR(QODOtQHDWUHVVHOHOODPDDOPpWRGRVDOXGR
VDOXGR VDOXGRFRQHOSDUiPHWUR
VDOXGR
´3DFRµFRQORFXDOVHREWLHQHHOUHVXOWDGRTXHVHPXHVWUDHQOD)LJ
)LJXUD
)LJXUD6DOXGR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$FWLRQ6FULSW(YROXFLRQDURPRULU
6RQPXFKDVOtQHDVGHFyGLJRSDUDXQVLPSOHVDOXGR¢QR"3RFRDSRFRVHLUi
HQFRQWUDQGRORVEHQHILFLRVGH$6VREUHWRGRFXDQGRVHUHDOLFHQSUR\HFWRVPiV
FRPSOHMRV
3DUD WHUPLQDU FRQ HVWD LQWURGXFFLyQ DO OHQJXDMH VH DERUGDUiQ GRV WHPDV
WDPELpQPX\LPSRUWDQWHVODKHUHQFLD\ODVVXEFODVHV
+HUHQFLD
,PDJtQHVH TXH XQ GtD DOJXLHQ DPDQHFH FRQ HO GRQ GH KDFHU OR TXH GHVHH FRQ ODV
HVSHFLHV GHO UHLQR DQLPDO DVt TXH GHFLGH FUHDU D ORV ´JDWRV YRODGRUHVµ $XQTXH
FXHQWDFRQSRGHUHVLOLPLWDGRVQRYDDKDFHUDORVJDWRVYRODGRUHVDSDUWLUGHFHUR
\D TXHFXHQWDFRQXQDHVSHFLHGH ´JDWRVµSRU OR TXH VyORKD\TXHDJUHJDUOHVODV
SURSLHGDGHV FDUDFWHUtVWLFDV \ DFFLRQHV PpWRGRV D GLFKD FODVH SDUD FUHDU XQD
QXHYDFODVHDQLPDO
(QWUH ODV QXHYDV FDUDFWHUtVWLFDV \ DFFLRQHV GH ORV JDWRV YRODGRUHV SRGUtDQ
GHVWDFDUFDGDVHUFRQHOGRQGHWUDQVIRUPDFLyQGHORVDQLPDOHVSXHGHVHOHFFLRQDU
VXVSURSLRVFDPELRV
NUEVAS CARACTERÍSTICAS (PROPIEDADES) NUEVAS ACCIONES (MÉTODOS)
7DPDxRGHODVDODV 9RODU
&RORUGHODVDODV $WHUUL]DU
9HORFLGDG 3ODQHDU
$GHPiV HVD SHUVRQD QR VyOR WLHQH HO SRGHU GH FDPELDU D ODV HVSHFLHV
DQLPDOHVDVXDQWRMRVLQRTXHWLHQHWDPELpQDFFHVRDVXFyGLJRDVtTXHSXHGHYHU
OD FODVH *DWRV FRPR OD VLJXLHQWH WRPDQGR HQ FXHQWD TXH HVWH SRGHURVR
3URJUDPDGRUXWLOL]y$6
package {
public class Gatos{
public var vidas:Number = 8;
public var colorPelo:String;
public function maullar(){
//…
}
public function ronronear(){
//..
}
}
}
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
3URJUDPDFLyQRULHQWDGDDREMHWRVFXHVWLyQGHJDWRV
$KRUDWLHQHTXHHVFULELUODQXHYDFODVHGHODVLJXLHQWHPDQHUD
package {
public class GatosVoladores extends Gatos{
public var alas:String = “grandes”;
public var colorAlas:String = “negras”;
public var velocidad:Number = 1000;
}
}
2EVpUYHVH TXH OD FODYH SDUD TXH ORV JDWRV YRODGRUHV KHUHGHQ ODV SURSLHGDGHV \
PpWRGRVGHORVJDWRVRUGLQDULRVIXHODSDODEUDH[WHQGV
H[WHQGVHVGHFLUH[WHQGLyDODFODVH
H[WHQGV
*DWRV9RODGRUHV D OD FODVH *DWRV 8QD YH] FRQFOXLGD VX REUD ORV PRUWDOHV SXHGHQ
XWLOL]DUODQXHYDFODVHGHODVLJXLHQWHIRUPD
2YHUULGH
6XSyQJDVHDKRUDTXHORVJDWRVYRODGRUHVURQURQHDQGHXQPRGRGLIHUHQWH\SRGUtD
GHFLUVHTXHWLHQHQXQDJXGtVLPRVRQLGRSHURORVJDWRVRUGLQDULRVURQURQHDQGHOD
PLVPDIRUPDHQTXHORKDQKHFKRSRUVLJORVGHPDQHUDTXHQRVHSXHGHPRGLILFDU
ODUXWLQDGHOSURJUDPDGRURULJLQDODVtTXHVHWHQGUiTXHVREUHHVFULELUODHQODQXHYD
FODVH 3DUD HOOR VH XWLOL]D HO PRGLILFDGRU RYHUULGH
RYHUULGH HO FXDO UHHVFULEH OD IRUPD GH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$FWLRQ6FULSW(YROXFLRQDURPRULU
URQURQHDU GH ORV *DWRV 9RODGRUHV VLQ DIHFWDU D ORV *DWRV 2UGLQDULRV /D VHQWHQFLD
VHUtDDSUR[LPDGDPHQWHODVLJXLHQWH
package {
public class GatosVoladores extends Gatos{
//...
override public ronronear(){
//...
}
}
}
7,3'(&(57,),&$&,Ð1
(QHOH[DPHQGHFHUWLILFDFLyQ$&(WDPELpQWHSUHJXQWDUiQVREUHHORYHUULGHHQOD
UHODFLyQFODVHV~SHUFODVH
(MHPSORSUiFWLFR
9ROYLHQGR DO SULPHU HMHPSOR HO GH +HOOR :RUOG VH DEUH XQ DUFKLYR $FWLRQ6FULSW
QXHYRVHOHQRPEUDFRPR*RGED\\VHJXDUGDHQODFDUSHWDPLV&ODVHVPLV&ODVHV(QHOSDQHO
PLV&ODVHV
GHDFFLRQHVVHHVFULEHHOVLJXLHQWHFyGLJR
package misClases {
public class Godbay extends Jelou{
public function adios() {
return “Adios desde Godbay”;
}
}
}
,JXDOTXHHQHOHMHPSORGH ORVJDWRVODFODYHHQHVWH HMHUFLFLRVHHQFXHQWUD HQ HO
H[WHQGV
H[WHQGV HO FXDO KDUi TXH OD SURSLHGDG KROD
KROD GH OD FODVH -HORX VHD KHUHGDGD D ORV
REMHWRVGHODFODVH*RGED\
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHPSORSUiFWLFR
2EVpUYHVH TXH DXQTXH ODV FODVHV UDGLFDQ HQ DUFKLYRV GLIHUHQWHV WLHQHQ HO
PLVPRQRPEUHGHSDTXHWHSHURGHEHQGHUDGLFDUHQODPLVPDFDUSHWDPLV&ODVHV
8Q SDTXHWH SXHGH WHQHU YDULRV DUFKLYRV SHUR XQD FODVH VyOR SXHGH WHQHU
XQR 7DPELpQ VH KDEUi QRWDGR TXH QR VH XWLOL]D QLQJXQD VHQWHQFLD LPSRUW
LPSRUW \D TXH
DPEDVFODVHVUHVLGHQHQHOPLVPRSDTXHWH
$KRUDGHVGHHODUFKLYRMHORXIOD
MHORXIODVHPRGLILFDHOFyGLJRSRUHOVLJXLHQWH
MHORXIOD
import misClases.*;
//
var saludo:Jelou = new Jelou();
trace(saludo.hola());
//
var despedida:Godbay = new Godbay();
trace("//");
trace(despedida.hola())
trace(despedida.adios());
2EVpUYHVH TXH HQ OD SULPHUD OtQHD VH XWLOL]D HO DVWHULVFR FRQ HO FXDO VH LPSRUWDQ
WRGDVODVFODVHVS~EOLFDVGHOSDTXHWHHQHVWHFDVRODVFODVHV-HORX -HORX\*RGED\
-HORX *RGED\TXHVH
*RGED\
HQFXHQWUDQHQPLV&ODVHV
3RVWHULRUPHQWHVHKDFHXQDLQVWDQFLDGHODFODVH-HORX
-HORX(QODVLJXLHQWHOtQHDVH
-HORX
OODPDDOPpWRGRKROD
KROD1yWHVHTXHVHXWLOL]DODQRWDFLyQSXQWRSDUDHOORGRWV\QWD[
KROD
HVGHFLUSULPHURHOQRPEUHGHOREMHWRRLQVWDQFLDSRVWHULRUPHQWHXQSXQWR\OXHJR
HOPpWRGR
(QODVVLJXLHQWHVOtQHDVVHFUHDXQDLQVWDQFLDGHODFODVH*RGED\
*RGED\1yWHVHTXH
*RGED\
VHHVWiOODPDQGRDOPLVPRPpWRGRKRODKRODTXHIXHFUHDGRHQODFODVH-HORX
KROD -HORXHVGHFLU
-HORX
IXHKHUHGDGRGHXQDFODVHDRWUD6LVHHMHFXWDHOGRFXPHQWRGH)ODVKMHORXIODVH
GHEHUiWHQHUHQHOSDQHOGHVDOLGDHOUHVXOWDGRTXHVHREVHUYDHQOD)LJ
)LJXUD+HUHQFLD
)LJXUD
2EYLDPHQWHHVWHHMHPSORHVPX\VHQFLOOR(QVHJXLGDVHYHUiFyPRKHUHGDUODV
SURSLHGDGHV\PpWRGRVGHXQDFODVH\DHVWDEOHFLGDGHQWURGH)ODVK
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$FWLRQ6FULSW(YROXFLRQDURPRULU
8QDVXEFODVHGH0RYLH&OLS6SULWH
(Q $6 VH WLHQH XQD QXHYD FODVH 6SULWH TXH HV XQ 0RYLH&OLS SHUR VLQ OtQHD GH
WLHPSRODFXDOWLHQHODPD\RUtDGHODVFDUDFWHUtVWLFDV\DFRQRFLGDVSHURPiVOLJHUD
1RWLHQHHTXLYDOHQWHHQHO,'(GH)ODVK
6L VH HVFULEH XQD FODVH \ VH OH ´H[WLHQGHµ D XQD FODVH 0RYLH&OLS R 6SULWH
KHUHGDUi WRGRV ORV PpWRGRV \ SURSLHGDGHV GH ODV PLVPDV (V GHFLU VL VH HVWi
GHVDUUROODQGR XQ MXHJR GH JDWRV VH SXHGH GHWHUPLQDU TXH ODV SURSLHGDGHV VRQ
YLGDVFRORU3HORYHORFLGDGVDOWR\YDORU/DVDFFLRQHVTXHSXHGHUHDOL]DUHQHOMXHJR
VRQVDOWDUFRUUHUDWUDSDU5DWRQPRULU/RVJDWLWRVWHQGUiQVXSDUWHYLVXDO \QRVH
QHFHVLWDUiOtQHDGHWLHPSRDVtTXHODFODVH6SULWHUHVXOWDH[FHOHQWH(OHVTXHOHWRGH
HVWDFODVHJDWRVSRGUtDVHU
package {
import flash.display.Sprite;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&ODVHGHGRFXPHQWRRGRFXPHQWFODVV
7,3'(&(57,),&$&,Ð1
3UHJXQWD¢$FXiOHVFODVHVVHGHEHH[WHQGHUXQ'RFXPHQW&ODVV"
5HVSXHVWD0RYLH&OLSR6SULWH
$KRUD VH H[SOLFDUi XQ QXHYR \ IXQGDPHQWDO FRQFHSWR HQ $6 OD FODVH GH
GRFXPHQWR
&ODVHGHGRFXPHQWRRGRFXPHQWFODVV
(Q HVWH SXQWR \D WHQHPRV OD LQIRUPDFLyQ QHFHVDULD SDUD LQFRUSRUDU HO'RFXPHQWR
GHFODVHHVWHWpUPLQRHVFRPRHVWiWUDGXFLGR HQHO,'(HQHVSDxRO (VWHWLSRGH
GRFXPHQWRHVXQDFODVHTXHHVWiH[WHQGLGDDODFODVH6SULWHR0RYLH&OLS(VWDFODVH
GHEH VHU S~EOLFD /DV UHVWDQWHV SXHGHQ VHU S~EOLFDV SULYDGDV R LQWHUQDV $ HVWD
FODVH VH OH FRQRFHUi FRPR FODVH SULQFLSDO PDLQ FODVV &XDQGR VH UHSURGXFH HO
6:) HO FRQVWUXFWRU GH OD FODVH SULQFLSDO VHUi HMHFXWDGR (V GHFLU VHUYLUi FRPR
SXQWRGHSDUWLGDSDUDQXHVWUDDSOLFDFLyQ
7,3'(&(57,),&$&,Ð1
(OFRQFHSWRGH'RFXPHQW&ODVVWLHQHPXFKRSHVRHQHOH[DPHQGHFHUWLILFDFLyQ
$&(+D\DOPHQRVWUHVSUHJXQWDVUHODFLRQDGDV(VLPSRUWDQWHTXHORGRPLQHV
(QHO,'(GH)ODVK&6HVWDFODVHHVRSFLRQDOGHKHFKR\DVH KDFRPSLODGR
6:)VLQGHILQLUODFODVHSULQFLSDO6LQHPEDUJRHVXQDEXHQDSUiFWLFDVLHPSUHSDUWLU
GHOFRQVWUXFWRUGHODFODVHSULQFLSDO9pDVHHOVLJXLHQWHHMHPSOR
6HDEUHXQQXHYRGRFXPHQWR)ODVK$6\VHOHQRPEUDMHORXIOD6HDEUHXQ
DUFKLYR GH $FWLRQ6FULSW \ VH JXDUGD FRQ HO QRPEUH GH -HORXDV HQ OD FDUSHWD
PLV&ODVHVODOHWUDHQPD\~VFXODGHODUFKLYRHVQHFHVDULD(QHODUFKLYR-HORXDV
VHHVFULEHHOVLJXLHQWHFyGLJR
package misClases {
import flash.display.Sprite;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$FWLRQ6FULSW(YROXFLRQDURPRULU
private function inicio():void {
trace("Hello World");
}
}
}
3ULPHUR VH GHILQH HO SDTXHWH GHQWUR GH PLV&ODVHV HO DUFKLYR GHEH GH LU HQ HVD
FDUSHWD (Q OD VLJXLHQWH OtQHD VH LPSRUWD D OD FODVH 6SULWH 2EVpUYHVH TXH HVWi
GHQWURGHOSDTXHWHSHURIXHUDGHODGHILQLFLyQGHODFODVH/DFODVH-HORXSRUVHU
OD FODVH SULQFLSDO GHEH VHU S~EOLFD \ H[WHQGLGD D 6SULWH R 0RYLH&OLS 'HVSXpV GH
HVWRVHHQFXHQWUDODIXQFLyQFRQVWUXFWRUDFRQHOPLVPRQRPEUHTXHODFODVH\FRQ
ODSULPHUDOHWUDHQPD\~VFXOD(VWDIXQFLyQVyOROODPDDODUXWLQDLQLFLR2EVpUYHVH
TXH ODUXWLQDLQLFLRVRODPHQWHWLHQHXQDOtQHD HQ HVWH HMHPSOR1RHVXQDEXHQD
SUiFWLFDLQWURGXFLUPXFKRFyGLJRHQODIXQFLyQFRQVWUXFWRUD/DIXQFLyQLQLFLR LQLFLRFRPR
LQLFLR
VHSXHGHYHUHVWiPDUFDGDFRPRSULYDGD SULYDGDHVGHFLUHOXVXDULRQRSXHGHDFFHGHUD
SULYDGD
HOODPiVTXHSRUODIXQFLyQFRQVWUXFWRUD
$OHMHFXWDUHOGRFXPHQWR-HORXIODVHREVHUYDUiTXHHQODSDQWDOODGHVDOLGD
DSDUHFHUiHOOHJHQGDULR+HOOR:RUOG
&RQ HVWH HMHPSOR FRQFOX\H HO SULPHU DFHUFDPLHQWR D OD SURJUDPDFLyQ
RULHQWDGDDREMHWRVDXQTXHHOFDPLQRHVD~QODUJRYDOHODSHQDUHFRUUHUOR3RUHOOR
VH SURIXQGL]DUi PiV HQ OD SURJUDPDFLyQ RULHQWDGD D REMHWRV DQWHV GH DERUGDU HO
QXHYRPRGHORGHHYHQWRV\HO'LVSOD\/LVW
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$PDQHUDGHFRQFOXVLyQ
$PDQHUDGHFRQFOXVLyQ
8QD FODVH HV XQD UHSUHVHQWDFLyQ DEVWUDFWD TXH FRQWLHQH SURSLHGDGHV PpWRGRV \
PDQHMDGRUHVGHHYHQWRVDOJXQRGHHVWRVWUHVSDUDFUHDUREMHWRVRLQVWDQFLDVORV
FXDOHVKHUHGDQODVSURSLHGDGHVPpWRGRV\PDQHMDGRUHVGHHYHQWRVGHODFODVH
(VIXQGDPHQWDOTXHVHDSUHQGDODHVWUXFWXUDEiVLFDGHODVFODVHV\DTXHHVR
QRV SHUPLWLUi DSURYHFKDU $FWLRQ6FULSW D VX Pi[LPR (Q HO SUy[LPR FDStWXOR
DQDOL]DUHPRVXQSRFRPiVGH ODSURJUDPDFLyQRULHQWDGDDREMHWRV\ODVYDULDEOHV
XQFRQFHSWRIXQGDPHQWDOHQODSURJUDPDFLyQ
/DV FODVHV VH HVFULEHQ HQ DUFKLYRV GH WH[WR H[WHUQRV SRU OR TXH HV
UHFRPHQGDEOHHPSOHDUXQSURFHVDGRUGHWH[WRTXHQRGHMHFDUDFWHUHVHVSHFLDOHV
/DVFDUDFWHUtVWLFDVEiVLFDVGHODVLQWD[LVGHOOHQJXDMHVRQ
$6GLVWLQJXHHQWUHPD\~VFXODV\PLQ~VFXODV
(ORSHUDGRUSXQWRSHUPLWHDFFHGHUDODVSURSLHGDGHV\PpWRGRVGHORV
REMHWRV
(Q$6\DQRVHDFHSWDODVLQWD[LVGHGLDJRQDOHV
8QDOLWHUDOHVXQYDORUTXHDSDUHFHHQHOFyGLJRSRUHMHPSOR´+RODµ
WUXH
(OSXQWR\FRPDLQGLFDTXHVHWHUPLQDXQDVHQWHQFLD
/RVFRPHQWDULRVGHOtQHDGREOHGLDJRQDO\GHEORTXH
VH
PDQWLHQHQ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
,QWURGXFFLyQ
'HELGR D TXH HO WHPD GH OD SURJUDPDFLyQ RULHQWDGD D REMHWRV HV PX\ H[WHQVR HQ
HVWHFDStWXORVHH[SOLFDFRQPiVGHWDOOHSDUDOXHJRSDVDUDOWHPDIXQGDPHQWDOGH
ODVYDULDEOHV\ORVRSHUDGRUHV
3DTXHWHVSDFNDJHV
• 8QDUFKLYRSXHGHFRQWHQHUYDULDVFODVHVSHURVyORXQDHVS~EOLFD
• /DVGHPiVFODVHVGHQWURGHOSDTXHWHQRGHEHUiQVHUS~EOLFDVORTXHQRODV
KDFHDFFHVLEOHVSDUDFyGLJRIXHUDGHHVHDUFKLYR
• (OQRPEUHGHODFODVHS~EOLFDGHOSDTXHWHGHEHFRLQFLGLUFRQHOQRPEUHGHO
DUFKLYR/DVGHPiVFODVHVREYLDPHQWHQR
• /RV SDTXHWHV SXHGHQ FRQWHQHU DOJR PiV TXH FODVHV VH SXHGH GHFODUDU
YDULDEOHV IXQFLRQHV \ QDPHVSDFHV LQFOXVR VHQWHQFLDV HMHFXWDEOHV HQ HO
´QLYHOVXSHULRUµGHOSDTXHWH
• 6LVHGHFODUDQIXQFLRQHVYDULDEOHVRQDPHVSDFHVORV~QLFRVPRGLILFDGRUHV
GHDFFHVRVRQSXEOLFHLQWHUQDO
• 6yOR XQR GH ORV HOHPHQWRV LQFOX\HQGR ODV FODVHV SXHGH WHQHU HO
PRGLILFDGRUSXEOLF
• /RVSDTXHWHVVHSXHGHQDQLGDU
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
,QWURGXFFLyQ
1RVHGHEHFRQIXQGLUHOWpUPLQRGHKHUHQFLD
KHUHQFLDFRQXQSDTXHWH$XQTXHH[LVWDQ
KHUHQFLD
YDULDVFODVHVHQXQPLVPRDUFKLYRItVLFRHVRQRLPSOLFDTXHVXVPpWRGRV
SURSLHGDGHV\PDQHMDGRUHVGHHYHQWRVVHFRPSDUWDQKHUHGHQ/RPLVPR
DSOLFDDORVSDTXHWHVDQLGDGRVQRKD\QLQJXQDUHODFLyQGHKHUHQFLDHQWUHHOORV
,PSRUWDUSDTXHWHV
6L VH GHVHD XWLOL]DU XQD FODVH TXH QR VH HQFXHQWUH HQ HO PLVPR GLUHFWRULR TXH OD
SHOtFXODIODVHGHEHLPSRUWDU
(QODPHGLGDGHORSRVLEOHGHEHHYLWDUVHHOXVRGHODVWHULVFR
SDUDLPSRUWDU
FODVHV\DTXHHVRVyORHOHYDODSRVLELOLGDGGHFRQIOLFWRVHQODVQRPHQFODWXUDV+D\
TXHVHUORPiVHVSHFtILFRSRVLEOH
(VXQDEXHQDSUiFWLFDLQFOXLUODUXWDGHORVSDTXHWHVHQHO&ODVV3DWKSDUDTXH
ODFRPSLODFLyQVHDPiVUiSLGD
7,3'(&(57,),&$&,Ð1
3UHJXQWD¢&XiOHVODIRUPDGHFRPSDUWLUGLIHUHQWHVSDTXHWHVHQGLIHUHQWHVSUR\HFWRV"
5HVSXHVWD&UHDQGRXQFODVVSDWKGHVGHORVSUR\HFWRVKDFLDORVSDTXHWHV
3RU GHIDXOW HO PRGLILFDGRU GH DFFHVR GH XQD FODVH GHQWUR GH XQ SDTXHWH HV
LQWHUQDO 3DUD KDFHUOD S~EOLFD KD\ TXH XWLOL]DU H[SOtFLWDPHQWH HO PRGLILFDGRU GH
DFFHVRSXEOLF1RVHSXHGHGHFODUDUXQSDTXHWHFRPRSXEOLF
7,3'(&(57,),&$&,Ð1
3UHJXQWD¢&XiOHVPRGLILFDGRUSRUGHIDXOWGHXQDFODVH"
5HVSXHVWD(VLQWHUQDO\QRSXEOLFFRPRHQRWURVOHQJXDMHV
/D GLUHFWLYD GHO FRPSLODGRU LQFOXGH D GLIHUHQFLD TXH HQ & QR IXQFLRQD
SDUDLPSRUWDUFODVHV(Q$6VyORODVHQWHQFLDLPSRUW
LPSRUWIXQFLRQDSDUDHVHSURSyVLWR
LPSRUW
1RPEUHVGHHVSDFLRVRQDPHVSDFHV
/RVQDPHVSDFHVFRQWURODQODYLVLELOLGDGGHODVFODVHVPpWRGRV\SURSLHGDGHV/RV
PRGLILFDGRUHV GH DFFHVR TXH VH KDQ UHYLVDGR KDVWD HO PRPHQWR SXEOLF LQWHUQDO
SULYDWH\SURWHFWHGVRQQDPHVSDFHV\DLQFRUSRUDGRVDOOHQJXDMH
6L HVWRV PRGLILFDGRUHV GH DFFHVR QR VH DGDSWDQ D ODV QHFHVLGDGHV GH
SURJUDPDFLyQVHSXHGHQFUHDUQDPHVSDFHVSURSLRV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
3RU HMHPSOR ODV SURSLHGDGHV \ ORV PpWRGRV VLHPSUH WLHQHQ XQ QDPHVSDFH
DXQTXHQRVHYHDQRQRVHKD\DQHVFULWR(Q$6GHQWURGHODVFODVHVVLQRHVWi
HVSHFLILFDGRHOQRPEUHGHHVSDFLRVHDGRSWDUiSRUGHIDXOWHOYDORULQWHUQDO
3DUD HO XVR GH ORV QRPEUHV GH HVSDFLRV VH GHEHQ VHJXLU ORV VLJXLHQWHV WUHV
SDVRV
'HILQLUHOQDPHVSDFHFRQODSDODEUDUHVHUYDGDQDPHVSDFH3RUHMHPSORHO
VLJXLHQWHFyGLJRGHILQHXQQRPEUHGHHVSDFLRQRPEUH
QDPHVSDFHQRPEUH
3XHGHXWLOL]DUVHHOQXHYRQDPHVSDFHHQOXJDUGHOPRGLILFDGRUGHDFFHVRHQ
XQDGHFODUDFLyQGHSURSLHGDGRGHPpWRGR3RUHMHPSOR
QRPEUHIXQFWLRQPL)XQFLRQ^
`
3RU ~OWLPR XQD YH] DSOLFDGR HO QDPHVSDFH VH SXHGH KDFHU UHIHUHQFLD DO
PLVPR FRQ OD SDODEUD UHVHUYDGD XVH R FDOLILFDQGR HO QRPEUH GH XQ
LGHQWLILFDGRUFRQXQQDPHVSDFH3RUHMHPSOR
XVHQDPHVSDFHQRPEUH
PL)XQFLRQ
2WUDIRUPDGHOODPDUORHVSRUPHGLRGHOQRPEUHFRPSOHWRSRUHMHPSOR
QRPEUHPL)XQFLRQ
0RGRHVWULFWR\PRGRHVWiQGDUGHFRPSLODFLyQ
(QORTXHD$6VHUHILHUHHQ)ODVK&6H[LVWHQGLIHUHQWHVPRGRVGHFRPSLODFLyQ
FRPRVHPXHVWUDDFRQWLQXDFLyQ
6HHQWUDD)LOH
)LOH
)LOH!3XEOLVK6HWWLQJV(QODSHVWDxDGH)ODVKVLHVWiVHOHFFLRQDGD
!3XEOLVK6HWWLQJV
OD RSFLyQ GH $FWLRQ6FULSW VH SXOVD HO ERWyQ GHO ODGR GHUHFKR ´6HWWLQJV«µ \
HQVHJXLGDVHGHVSOLHJDODVLJXLHQWHYHQWDQDHPHUJHQWH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
,QWURGXFFLyQ
)LJXUD&RQILJXUDFLyQGHO$FWLRQ6FULSW
)LJXUD
/DSULPHUDRSFLyQHVHO 'RFXPHQWRGHFODVHHOFXDOHVLJXDODOGHO3DQHOGH
'RFXPHQWRGHFODVH
SURSLHGDGHV6LVHSXOVDHOVtPERORGHYHULILFDFLyQODSDORPLWD)ODVKYHULILFDUiOD
H[LVWHQFLD GH OD FODVH &RQ HO ERWyQ GH OiSL] )ODVK DEULUi VL HV TXH QR HVWi \D
DELHUWDODFODVHGHOGRFXPHQWR
(O FDPSR GH ([SRUW FODVVHV LQ IUDPH WHQGUi FRPR SUHGHWHUPLQDGR HO SULPHU
IRWRJUDPDSHURSXHGHPRGLILFDUVH
'HQWUR GH OD FDWHJRUtD GH HUURUHV VH WLHQHQ HO PRGR GH FRPSLODFLyQ HVWULFWD
6WULFW0RGH\HOPRGRGHPHQVDMHVGHDOHUWD:DUQLQJV0RGH(QHOPRGRHVWULFWR
QR SHUPLWLUi JHQHUDU HO 6:) VL H[LVWHQ DOJ~QRV PHQVDMHV GH DOHUWD SXHV ORV
WRPDUiFRPRHUURUHV
(QPRGRGHDOHUWD:DUQLQJPRGHJHQHUDUiDOJXQRVPHQVDMHVGHDOHUWDVREUH
ODFRPSDWLELOLGDGHQWUH$6\$6
6LHPSUH HV UHFRPHQGDEOH WUDEDMDU HQ PRGR HVWULFWR \ FRQ ORV PHQVDMHV GH
DGYHUWHQFLD:DUQLQJVDFWLYRV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
9DULDEOHV
/DV YDULDEOHV VRQ FRQWHQHGRUHV GRQGH VH SXHGH DOPDFHQDU R UHFXSHUDU LQIRUPD
FLyQ(Q$6HOXVRGHODSDODEUDFODYHYDUHUDXQDEXHQDSUiFWLFD\RSFLRQDOSHUR
REOLJDWRULRVLTXLHUHWLSLILFDUDODYDULDEOH(QFDPELRHQ$6HVREOLJDWRULRXWLOL]DU
ODVHQWHQFLDYDU
6L VH RPLWH OD VHQWHQFLD YDU SDUD OD FUHDFLyQ GH XQD YDULDEOH HO FRPSLODGRU
HQYLDUi XQ PHQVDMH GH HUURU VL VH HQFXHQWUD HQ PRGR HVWULFWR \ XQ HUURU FXDQGR
HMHFXWHVXSHOtFXOD
7DPELpQ VH GHEH LQGLFDU HO WLSR GH GDWRV TXH DOPDFHQDUi OD YDULDEOH DO
PRPHQWR GH GHFODUDUOD 6H SXHGH KDFHU OD GHFODUDFLyQ VLQ LQGLFDU HO WLSR GH GDWR
SHURHOFRPSLODGRUHQYLDUiXQHUURUVLVHHQFXHQWUDHQPRGRHVWULFWR
3DUD DVLJQDU HO WLSR GH YDULDEOH VRQ QHFHVDULRV ORV GRV SXQWRV GHVSXpV GHO
QRPEUHGHODPLVPDSRUHMHPSOR
YDUQRPEUH*DWR6WULQJ
YDUQXP9LGDV1XPEHU
YDUJDWR9RODGRU%ROHDQ
/DDVLJQDFLyQGHYDORUHVVHSXHGHKDFHUHQIRUPDVLPXOWiQHDDODGHFODUDFLyQFRQ
HORSHUDGRULJXDO´ µRKDFHUODDVLJQDFLyQSRVWHULRUPHQWHDODGHFODUDFLyQHVGHFLU
YDUQRPEUH*DWR6WULQJ ´%HQLWR%RGRTXHµ
YDUQXP9LGDV1XPEHU
YDUJDWR9RODGRU%ROHDQ
JDWR9RODGRU IDOVH
2VHSXHGHGHFODUDUPiVGHXQDYDULDEOHDODYH]
YDU[1XPEHU\1XPEHUDOSKD1XPEHU
$VLPLVPRVHSXHGHDVLJQDUYDORUHVHQODPLVPDVHQWHQFLDYDUSRUHMHPSOR
YDU[1XPEHU \1XPEHU DOSKD1XPEHU
3HUR QR VH SRGUiQ KDFHU DVLJQDFLRQHV VLPXOWiQHDV GH QLQJXQD GH ODV VLJXLHQWHV
IRUPDV
YDU[1XPEHU \1XPEHU
YDU[ \
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
9DULDEOHV
$XQTXH DJUXSDU YDULDV GHFODUDFLRQHV QR PDUFD HUURU GH FRPSLODFLyQ QR HV
XQDSUiFWLFDUHFRPHQGDEOHSXHVKDFHHOFyGLJRPiVFRPSOHMR\GLItFLOGHPDQWHQHU
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$6\VHJXDUGDHQODFDUSHWDGHWUDEDMRFRPR
YDULDEOHVIOD
• (QHOSDQHOGH3XEOLVK6HWWLQJVHQHOERWyQGH6HWWLQJVGH$6VHYHULILFD
TXHHVWpQVHOHFFLRQDGDVODVRSFLRQHVGHFRPSLODFLyQHQPRGRHVWULFWR\GH
PHQVDMHVGHDOHUWD
• 6HDEUHXQDUFKLYR$FWLRQ6FULSW\VHJXDUGDFRQHOQRPEUHGH9DULDEOHVDV
HQODFDUSHWDPLV&ODVHV
• (Q HO DUFKLYR GH $FWLRQ6FULSW VH HVFULEH HO VLJXLHQWH FyGLJR GH XQD FODVH
YDFtDVLQIXQFLyQFRQVWUXFWRUD
SDFNDJHPLV&ODVHV^
SXEOLFFODVV9DULDEOHV^
`
`
'HQWURGHODFODVHVHHVFULEHQODVVLJXLHQWHVVHQWHQFLDV
QXP9LGDV
• 6HJXDUGDHODUFKLYRDV\VHHMHFXWDODYHULILFDFLyQGHVLQWD[LVODSDORPLWD
D]XO eVWD GHEHUi LQGLFDU TXH QR KD\ HUURUHV /D DVLJQDFLyQ HV
VLQWiFWLFDPHQWHFRUUHFWDDXQTXHQRWHQJDODSDODEUDUHVHUYDGDYDU
• $KRUDVHFDPELDDODUFKLYRIOD(QHOSDQHOGHSURSLHGDGHVVHHVFULEHHQHO
FDPSR'RFXPHQW&ODVV
'RFXPHQW&ODVVODOLJDDODFODVHHVGHFLUPLV&ODVHV9DULDEOHV
'RFXPHQW&ODVV PLV&ODVHV9DULDEOHV
PLV&ODVHV9DULDEOHV
• 6H HMHFXWD OD SHOtFXOD FRQ >&WUO@ >(QWHU@ 6H REVHUYDUi TXH HO FRPSLODGRU
HQYtDXQPHQVDMHGHHUURU
• $KRUDVHGHVDFWLYDHOPRGRHVWULFWR\VHYXHOYHDFRPSLODU1yWHVHTXH HO
PHQVDMHGHHUURU\DQRDSDUHFH$XQTXHDSULPHUDYLVWDSXGLHUDSHQVDUVH
TXH HVR HV EXHQR HV PHMRU TXH HO FRPSLODGRU LQGLTXH ORV HUURUHV TXH VH
FRPHWHQ
• 6H YXHOYHQ D HQFHQGHU ORV SDUiPHWURV GH 0RGR HVWULFWR \ GH 0RGR GH
DOHUWD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
• 6LVHHQFXHQWUDHQODYLVWDGHODUFKLYRIODVHSXHGHVDOWDUKDFLDHODUFKLYR
GHODFODVHFRQHOERWRQFLWRFRQHOOiSL]TXHVHHQFXHQWUDDODGHUHFKDGHO
FDPSR'RFXPHQW&ODVVVLpVWHQRVHHQFXHQWUDDELHUWR)ODVKORDEULUi
• (QWRQFHVVHFDPELDODOtQHDGHDVLJQDFLyQSRUODVLJXLHQWH
YDUQXP9LGDV
• $XQTXH\DVHXWLOL]yODSDODEUDUHVHUYDGDYDUD~QQRVHKDGHILQLGRXQWLSR
GH GDWRV 6H JXDUGD HO DUFKLYR DV \ VH HMHFXWD OD SHOtFXOD IOD HQ 0RGR
HVWULFWR\VLQ0RGRHVWULFWR$HVWDYDULDEOHVHOHOODPD´VLQWLSRµ$XQTXHVH
SHUPLWHHQ$6QRHVXQDEXHQDSUiFWLFDKDFHUOR
• 6H UHJUHVD DO DUFKLYR DV \ VH VXVWLWX\H OD OtQHD GH OD YDULDEOH SRU OD
VLJXLHQWHHQGRQGHVHKDFHODGHFODUDFLyQGHYDULDVYDULDEOHVHQODPLVPD
OtQHD
• 6H JXDUGD HO DUFKLYR \ VH UHJUHVD DO DUFKLYR IOD 6H FRPSLOD HO DUFKLYR HQ
PRGR HVWULFWR 1R GHEHUi DSDUHFHU PHQVDMH GH HUURU $XQTXH VH SHUPLWH
HVWDIRUPDGHFRGLILFDFLyQWDPSRFRHVUHFRPHQGDEOH
• )LQDOPHQWH VH UHJUHVD DO DUFKLYR GH OD FODVH \ VH FDPELD OD OtQHD DQWHULRU
SRUODVLJXLHQWH
• 6HVDOYDHODUFKLYRDVVHUHJUHVDDODSHOtFXODIOD\VHHMHFXWD$XQTXHVH
SHUPLWH HVWD IRUPD GH FRGLILFDU HQ YHUVLRQHV DQWHULRUHV GH $6 HQ HVWD
YHUVLyQHOFRPSLODGRUHQYLDUiXQPHQVDMHGHHUURU
• 6HVDOYDQDPERVDUFKLYRVSDUDVHUXWLOL]DGRVHQHOVLJXLHQWHHMHUFLFLR
ÉPELWRRDOFDQFHGHODVYDULDEOHV
(OiPELWRRDOFDQFHGHODYDULDEOHHVOD]RQDHQODTXHDSDUHFH´YLVLEOHµHVGHFLUVH
OH SXHGH DVLJQDU R UHFXSHUDU OD LQIRUPDFLyQ GHQWUR GHO FyGLJR (Q $6 ODV
YDULDEOHV VLHPSUH WLHQHQ HO iPELWR GH OD IXQFLyQ R GH OD FODVH HQ ODV TXH IXHURQ
GHFODUDGDV6HSXHGHGHILQLUFRPRXQDYDULDEOHJOREDODDTXHOODTXHHVWiGHILQLGD
IXHUDGHXQDIXQFLyQ3RUORWDQWRXQDYDULDEOHORFDOHVDTXHOODTXHVHGHILQHGHQWUR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
9DULDEOHV
GH XQD IXQFLyQ $GHPiV XQD YDULDEOH ORFDO VyOR H[LVWLUi GHQWUR GH ODV OODYHV GH OD
PLVPD
6LH[LVWHXQDYDULDEOHJOREDO\VHGHILQHGHQWURGHXQDIXQFLyQDXQDYDULDEOH
ORFDO FRQ HO PLVPR QRPEUH OD SULPHUD QR VH PRGLILFDUi FXDQGR OD IXQFLyQ VHD
OODPDGD
'XUDQWHODHMHFXFLyQGHODIXQFLyQVHFUHDUiXQDFRSLDWHPSRUDOGHODYDULDEOH
ODFXDOVHGHVWUXLUiDOWHUPLQDUODPLVPDVLQDOWHUDUHOYDORUGHODYDULDEOHJOREDO
6LVHGHFODUDSHURQRVHOHDVLJQDQLQJ~QYDORUDODYDULDEOHHOYDORUSRUGHIDXOW
VHUiHOTXHVHPXHVWUDHQOD7DEOD
7DEOD9DORUHVSUHGHILQLGRV
7DEOD
7,32'('$72
,32'('$72 9$/2535('(),1,'2
9$/2535('(),1,'2
%ROHDQ IDOVH
,QW
1XPEHU 1D1
2EMHFW 1XOO
6WULQJ 1XOO
8LQW
6LQGHFODUDU XQGHILQHG
7RGDVODVGHPiVFODVHV QXOO
2EMHWRVFUHDGRVSRUHOXVXDULR QXOO
/DVYDULDEOHVTXHVRQGHILQLGDVGHQWURGHIXQFLRQHVIXQFLRQHVFRQVWUXFWRUDV
PpWRGRV GLQiPLFRV R HVWiWLFRV VH FRQVLGHUDUiQ YDULDEOHV ORFDOHV HV GHFLU VyOR
H[LVWLUiQPLHQWUDVODIXQFLyQVHHMHFXWH
/DVYDULDEOHVTXHVHDQGHILQLGDVIXHUDGHODVIXQFLRQHVGHQWURGHXQDFODVH
VHFRQVLGHUDUiQYDULDEOHVGHLQVWDQFLD\VHFRQYHUWLUiQHQSURSLHGDGHV
(MHUFLFLR
• 6H DEUHQ GRV DUFKLYRV HO DUFKLYR YDULDEOHVIOD \ HO DUFKLYR GH FODVH
9DULDEOHVDV
• 9HULItTXHVHTXHVHHQFXHQWUHHQPRGRHVWULFWRGHFRPSLODFLyQ
• (QHODUFKLYRGHODFODVHVHFDSWXUDHOVLJXLHQWHFyGLJR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
SDFNDJHPLV&ODVHV^
LPSRUWIODVKGLVSOD\6SULWH
SXEOLFFODVV9DULDEOHVH[WHQGV6SULWH^
YDUWRWDO1XPEHU
SXEOLFIXQFWLRQ9DULDEOHV^
WUDFHWRWDO
VXPD
WUDFHWRWDO
`
SXEOLFIXQFWLRQVXPDQXP1XPEHUQXP1XPEHU^
YDUWRWDO1XPEHU QXPQXP
WUDFHWRWDO
`
`
`
• 2EVpUYHVHTXHVHWUDWDGHXQDYDULDEOHGHILQLGDIXHUDGHODVIXQFLRQHVFRQ
XQYDORULQLFLDOGH/DIXQFLyQFRQVWUXFWRUDHQYtDDODSDQWDOODGHVDOLGD
HOYDORUGHHVWDYDULDEOH\GHEHUiPRVWUDUVHXQYDORUGH
• 6HJXLGRDODIXQFLyQFRQVWUXFWRUDVHHVFULEHXQPpWRGRTXHUHFLEHXQSDU
GH YDORUHV HQ XQD YDULDEOH WDPELpQ OODPDGD WRWDO 1yWHVH TXH VH HVWi
GHILQLHQGR FRQ OD SDODEUD UHVHUYDGD YDU SRU OR TXH VH FRQVLGHUD XQD
YDULDEOHORFDO
• /D IXQFLyQ FRQVWUXFWRUD OODPD DO PpWRGR \ SRVWHULRUPHQWH KDFH XQ QXHYR
WUDFH(QWRQFHVHOUHVXOWDGRGHEHUiVHUHOTXHPXHVWUDOD)LJ
)LJXUD8VRGHYDULDEOHVORFDOHV
)LJXUD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
9DULDEOHV
• /DYDULDEOHJOREDOFDQGLGDWDDVHUXQDSURSLHGDGQRIXHDOWHUDGDDXQTXH
KD\XQDYDULDEOHORFDOFRQHOPLVPRQRPEUH
• $KRUDPRGLItTXHVHODYDULDEOHORFDOGHODVLJXLHQWHIRUPD
WRWDO QXPQXP
• 6HHMHFXWDQXHYDPHQWHODSHOtFXOD\VHREVHUYDTXHHOYDORUGHODYDULDEOH
VHPRGLILFyFRPRVHDSUHFLDHQODILJXUD
)LJXUD6LQHOXVRGHYDULDEOHVORFDOHV
)LJXUD
9DULDEOHVSRUVXDOFDQFH
7DPELpQ VH SXHGH GLIHUHQFLDU D ODV YDULDEOHV GLQiPLFDV \ HVWiWLFDV ODV FXDOHV VH
YHUiQ PiV DGHODQWH $QWHV GH DQDOL]DU OD YLVLELOLGDG GH XQD YDULDEOH GH LQVWDQFLD
VHJ~QVXPRGLILFDGRUGHDFFHVRHV~WLODQDOL]DUHOFXDGURGHFODVHVGHOD)LJ
Paquete 1
Clase 1 Clase
extendida
Paquete 2
)LJXUD
)LJXUD&XDGURGHFODVHV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
&RPRVHPXHVWUDHQOD)LJVHWLHQHQODVVLJXLHQWHVFODVHVODFODVHHQVt
PLVPD &ODVH XQD FODVH GHQWUR GHO PLVPR SDTXHWH &ODVH XQD IXHUD GHO
SDTXHWH &ODVH \ XQD H[WHQGLGD D SDUWLU GH OD FODVH RULJLQDO +DFLHQGR XQ FUXFH
HQWUHHVWRVWLSRVGHYDULDEOHV\ORVPRGLILFDGRUHVGHDFFHVRUHVXOWDUtDFRPRVHYH
HQOD7DEOD
7DEOD5HVXOWDGRGHOFUXFHGHWLSRVGHYDULDEOHV\PRGLILFDGRUHVGHDFFHVR
7DEOD
SXEOLF LQWHUQDO SURWHFWHG SULYDWH
&yGLJRGHQWURGHODFODVH 9LVLEOH 9LVLEOH 9LVLEOH 9LVLEOH
&ODVH
&yGLJRGHXQDFODVH 9LVLEOH 9LVLEOH 9LVLEOH 1RYLVLEOH
GHVFHQGHQWH&ODVH
&yGLJRHQRWUDFODVHGHQWUR 9LVLEOH 9LVLEOH 1RYLVLEOH 1RYLVLEOH
GHOPLVPRSDTXHWH&ODVH
&yGLJRHQRWUDFODVHHQRWUR 9LVLEOH 1RYLVLEOH 1RYLVLEOH 1RYLVLEOH
SDTXHWH
3DUiPHWURVGHODIXQFLyQFRQVWUXFWRUD
/RV SDUiPHWURV VRQ XQD HVSHFLH GH YDULDEOHV ORFDOHV ODV FXDOHV QR QHFHVLWDQ OD
SDODEUDFRQVWUXFWRUDYDU/RVSDUiPHWURVSXHGHQUHFLELUYDORUHVSRURPLVLyQGHQWUR
GHODIXQFLyQFRQVWUXFWRUDSRUHMHPSOR
class Jelou{
function Jelou(arg1=valor1,
arg2=valor2,
arg3=valor3){
}
}
(VWD FDUDFWHUtVWLFD QXHYD HQ $6 VH H[SOLFDUi FRQ GHWDOOH HQ HO SUy[LPR
FDStWXORFXDQGRVHYHDHOWHPDGHODVIXQFLRQHV
&XDQGRVHOODPDDODIXQFLyQFRQVWUXFWRUDDOFUHDUHOREMHWRGHQXHVWUDFODVH
VH ´SDVDQµ ORV YDORUHV D ORV DUJXPHQWRV 3RU HMHPSOR DO FUHDU HO REMHWR VH SXHGH
SDVDUHOYDORUGHODUJXPHQWR
var saludo:Jelou = new Jelou(“Buenos dias”);
…
public function Jelou(arg1){
trace(arg1);
}
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
9DULDEOHV
6LVHFRPSLODHQHOPRGRHVWULFWR\QR´SDVDµXQRGHORVYDORUHV)ODVKHQYLDUiXQ
PHQVDMHGHHUURU
7,3'(&(57,),&$&,Ð1
3UHJXQWD¢&RQTXpRSHUDGRUSXHGHFUHDUXQDQXHYDLQVWDQFLDGHFODVH"
5HVSXHVWD&RQHORSHUDGRUQHZ
(MHUFLFLR
6HDEUHXQDUFKLYRQXHYRDV\VHJUDEDFRPR9DULDEOHVDVHQODFDUSHWDPLV&ODVHV
6REUHHVWHDUFKLYRVHHVFULEHODVLJXLHQWHFODVH
SDFNDJHPLV&ODVHV^
SXEOLFFODVV9DULDEOHV^
SXEOLFIXQFWLRQ9DULDEOHVDUJ6WULQJ +ROD^
WUDFHDUJ
`
`
`
2EVpUYHVHTXHVHHVWiKDFLHQGRXQDIXQFLyQFRQVWUXFWRUDFRQXQDUJXPHQWR\
XQYDORUSRURPLVLyQ(QODFODVH9DULDEOHVDVVHVXVWLWX\HHOFyGLJRDQWHULRUSRUHO
VLJXLHQWH
SDFNDJHPLV&ODVHV^
LPSRUWIODVKGLVSOD\6SULWH
SXEOLFFODVV9DULDEOHVH[WHQGV6SULWH^
SXEOLFIXQFWLRQ9DULDEOHV^
YDUVDOXGR9DULDEOHV QHZ9DULDEOHV
`
`
`
1yWHVHTXHHQODIXQFLyQFRQVWUXFWRUDGHODFODVHSULQFLSDOVHHVWiFUHDQGRXQ
REMHWRGHODFODVH 9DULDEOHV\TXHQRVHHVWiSDVDQGRHOREMHWR6HJUDEDQWRGRV
9DULDEOHV
ORVDUFKLYRV\VHHMHFXWDQ(OUHVXOWDGRGHEHUiVHUHOTXHPXHVWUDOD)LJ
)LJXUD6DOLGDGHODIXQFLyQFRQVWUXFWRUD
)LJXUD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
$XQTXHQRVHSDVyXQSDUiPHWURHOFRPSLODGRUQRHQYLyXQPHQVDMHGHHUURU
SRUTXH VH WLHQH XQ YDORU SRU GHIDXOW $KRUD VH PRGLILFD OD OODPDGD D OD IXQFLyQ
FRQVWUXFWRUDGHODFODVH9DULDEOHVSRUODVLJXLHQWHOtQHD
6H HMHFXWD OD SHOtFXOD \ VH REVHUYDUi HQ OD SDQWDOOD GH VDOLGD OD OH\HQGD
´%XHQDVWDUGHVµ(VGHFLUHOYDORUSRUGHIDXOWIXHVXVWLWXLGR
$KRUD VH TXLWD HO YDORU SRU GHIDXOW GH OD YDULDEOH FRQVWUXFWRUD GH OD FODVH
9DULDEOHVSDUDTXHTXHGHGHODVLJXLHQWHPDQHUD
SXEOLFIXQFWLRQ9DULDEOHVDUJ6WULQJ^
WUDFHDUJ
`
'H HVWD IRUPD HO DUJXPHQWR SDVy D VHU REOLJDWRULR $KRUD VH PRGLILFD OD
FUHDFLyQGHOREMHWRHQODFODVHYDULDEOHVSDUDTXHPDQGHQLQJ~QSDUiPHWUR
SXEOLFIXQFWLRQ9DULDEOHV^
YDUVDOXGR9DULDEOHV QHZ9DULDEOHV
`
9HULItTXHVH TXH HO FRPSLODGRU HVWp HQ IRUPD HVWULFWD 6H JUDEDQ WRGRV ORV
DUFKLYRV\VHHMHFXWDODSHOtFXOD'HEHUiDSDUHFHUXQHUURU1~PHURLQFRUUHFWR
GHDUJXPHQWRV
7LSRGHGDWRV
8QWLSRGHGDWRVHVHOFRQMXQWRGHYDORUHVDGPLWLGRVSDUDODYDULDEOH(QOD7DEOD
VHH[SRQHQORVTXHVHFRQVLGHUDQYDORUHVVLPSOHVGHGDWRV
7DEOD9DORUHVVLPSOHVGHGDWRV
7DEOD
7LSRGHGDWRVLPSOH
7LSRGHGDWRVLPSOH
%RROHDQ 6yOR DFHSWD ORV YDORUHV GH WUXH \
IDOVH6XYDORUSRUGHIDXOWHVIDOVH
6WULQJ 6HFXHQFLDGHFDUDFWHUHVFRQELWV
FDGDXQR$GPLWHHOIRUPDWR87)
&RQWLQ~D
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
9DULDEOHV
7DEOD&RQWLQXDFLyQ
7DEOD
7LSRGHGDWRVLPSOH
7LSRGHGDWRVLPSOH
1XPEHU 6RQQ~PHURVHQWHURV\GHFRPDIORWDQWH
GHELWV$GPLWHYDORUHVHQWUH
-9.007.199.254.740.992 (-253) y
9.007.199.254.740.992 (253).
LQW 1~PHURVHQWHURVGHELWVTXHYDQGH
-2.147.483.648 (-231) a 2.147.483,647
(231 - 1), ambos incluidos.
XLQLW 1~PHURVHQWHURVVLQVLJQRGHELWV6XV
YDORUHV RVFLODQ HQWUH \ 4.294.967.295
(232- 1).
8QWLSRGHGDWRVFRPSOHMRVHVWiIRUPDGRSRUYDORUHVGHGDWRVVLPSOHVXRWURV
YDORUHVGHGDWRVFRPSOHMRVSRUHMHPSORFRPRVHDSUHFLDHQOD7DEOD
7DEOD7LSRVGHGDWRVFRPSOHMRV
7DEOD
7LSRGHGDWRFRPSOHMR
7LSRGHGDWRFRPSOHMR
$UUD\
2EMHFW
;0/
(UURU
;0//LVW
7DQWR ORV WLSRV GH GDWRV VLPSOHV FRPR ORV FRPSOHMRV VRQ REMHWRV SDUD HO
FRPSLODGRU DXQTXH ORV YDORUHV VLPSOHV WHQGUiQ XQ WUDWDPLHQWR HVSHFLDO 3RU
HMHPSOR SDUD GHFODUDU XQD YDULDEOH GH WLSR LQW VRQ YiOLGDV ODV VLJXLHQWHV GRV
VHQWHQFLDV
YDUHGDG1XPEHU
YDUSHVR1XPEHU QHZ1XPEHU
(Q $6 VH SHUPLWH OD YHULILFDFLyQ GHO WLSR HQ WLHPSR GH HMHFXFLyQ SHUR
WDPELpQSHUPLWHODYHULILFDFLyQHQWLHPSRVGHFRPSLODFLyQHQHOPRGRHVWULFWR6LQR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
VH HQFXHQWUD HQ PRGR HVWULFWR OD YHULILFDFLyQ ~QLFDPHQWH VH HIHFWXDUi HQ WLHPSR
GHHMHFXFLyQ
(Q PRGR HVWULFWR HO FRPSLODGRU HQYLDUi PHQVDMHV GH HUURU VL KD\ XQD
DVLJQDFLyQGLIHUHQWHDOWLSRGHGDWRV
(MHUFLFLR
• 6HDEUHXQDUFKLYRQXHYRGH)ODVK$6\VHJXDUGDFRPRWLSRVIODHQOD
FDUSHWD GH WUDEDMR $KRUD VH DEUH XQ DUFKLYR DV QXHYR \ VH JXDUGD FRPR
7LSRVDVHQODFDUSHWDPLV&ODVHV
• 9HULItTXHVH TXH VH HQFXHQWUH HQ PRGR HVWULFWR GH FRPSLODFLyQ (Q HO
'RFXPHQW&ODVVVHHVFULEHPLV&ODVHV7LSRV\VHSXOVD(17(5
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHHVTXHOHWRGHFODVH
SDFNDJHPLV&ODVHV^
LPSRUWIODVKGLVSOD\6SULWH
SXEOLFFODVV7LSRVH[WHQGV6SULWH^
SXEOLFIXQFWLRQ7LSRV^
`
`
`
• 'HEDMRGHODIXQFLyQFRQVWUXFWRUDVHHVFULEHODVLJXLHQWHIXQFLyQ
SXEOLFIXQFWLRQSUXHEDDUJ^
LIDUJLV6WULQJ^
YDUFDGHQD6WULQJ DUJ
WUDFH&DGHQDDUJ
`HOVHLIDUJLV1XPEHU^
YDUQXPHUR1XPEHU DUJ
WUDFH1~PHURQXPHUR
`
`
/DIXQFLyQGHSUXHEDQRWLHQHGHILQLGRHOWLSRGHVXDUJXPHQWRSRUORTXHVH
SXHGH UHFLELU XQ YDORU FRQ FXDOTXLHU WLSR GH GDWR $KRUD HQ OD IXQFLyQ
FRQVWUXFWRUDVHHVFULEHQODVVLJXLHQWHVGRVOtQHDVHQQHJULWDV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
9DULDEOHV
• (MHF~WHVHODSHOtFXOD\VHGHEHUiWHQHUXQDVDOLGDFRPRODTXHPXHVWUDOD
)LJ
)LJXUD5HVXOWDGRGHORVGLIHUHQWHVWLSRVGHYDULDEOH
)LJXUD
• $KRUD VH FDPELD HO WLSR GH GDWR HQ HO DUJXPHQWR GH OD IXQFLyQ SUXHED DO
VLJXLHQWH
• (QWRQFHVHOFRPSLODGRUGHEHUiPDQGDUXQPHQVDMHGHHUURU3DUDHYLWDUOR
VHDSDJDHOPRGR HVWULFWR\VHYXHOYHDFRUUHUODSHOtFXOD. 0DQGDUiDKRUD
ORVPHQVDMHVFRUUHFWRVSHURSRGUtDWHQHUXQHUURUHQWLHPSRGHHMHFXFLyQ
3RU~OWLPRVHUHJUHVDDOPRGRGHFRPSLODFLyQHVWULFWD
• 6L HO FRPSLODGRU VH HQFXHQWUD HQ PRGR HVWiQGDU VH JHQHUDUi HO HUURU GH
WLSRV~QLFDPHQWHHQHOWLHPSRGHHMHFXFLyQ
6DEHUORVWLSRVGHYDULDEOHRSHUDGRUHVLV\DV
6L VH GHVHD VDEHU FXiO HV HO WLSR GH XQD YDULDEOH HQ $6 \D QR VH XWLOL]D HO
RSHUDGRULQVWDQFHRIHOFXDOVHVXVWLWX\HDKRUDFRQHORSHUDGRULV
(ORSHUDGRULVQRVyORGHWHUPLQDHOWLSRGHFODVHDODTXHSHUWHQHFHXQREMHWR
VLQRODMHUDUTXtDGHKHUHQFLDGHOPLVPRHVGHFLUFXiOHVFODVHVKHUHGDURQDODFODVH
GHOREMHWR3RUHMHPSORVLVHWLHQHXQDLQVWDQFLDGHODFODVH6SULWHODFXDOKHUHGD
GHODVFODVHV'LVSOD\2EMHFWH,(YHQW'LVSDWFKHUHOUHVXOWDGRVHUtDHOTXHPXHVWUDHO
VLJXLHQWHHMHPSOR
(MHPSOR
6H DEUHQ ORV DUFKLYRV WLSRVIOD \ 7LSRVDV (Q HO DUFKLYR GH OD FODVH VH VXVWLWX\H HO
FyGLJRH[LVWHQWHSRUHOVLJXLHQWH
SDFNDJHPLV&ODVHV^
LPSRUWIODVKGLVSOD\
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
LPSRUWIODVKHYHQWV,(YHQW'LVSDWFKHU
SXEOLFFODVV7LSRVH[WHQGV6SULWH^
SXEOLFIXQFWLRQ7LSRV^
YDUPL6SULWH6SULWH QHZ6SULWH
WUDFHPL6SULWHLV6SULWH
WUDFHPL6SULWHLV'LVSOD\2EMHFW
WUDFHPL6SULWHLV,(YHQW'LVSDWFKHU
`
`
`
9HULItTXHVHTXHHOFRPSLODGRUHVWpHQPRGRHVWULFWR6HHMHFXWDODSHOtFXOD\VH
GHEHUiWHQHUXQDVDOLGDFRPRODGHOD)LJ
)LJXUD5HVXOWDGRGHORSHUDGRULV
)LJXUD
• 2WUD QRYHGDG HQ $6 HV HO RSHUDGRU DV HO FXDO UHJUHVD HO YDORU GH OD
H[SUHVLyQHQOXJDUGHWUXH\UHJUHVDXQYDORUQXOO HQOXJDUGHIDOVH$VtHQ
HOHMHUFLFLRVHVXVWLWX\HRFRORFDGHEDMRGHODVVHQWHQFLDVWUDFHHOVLJXLHQWH
FyGLJR
YDUPL6SULWH6SULWH QHZ6SULWH
WUDFHPL6SULWHDV6SULWH
WUDFHPL6SULWHDV'LVSOD\2EMHFW
WUDFHPL6SULWHDV,(YHQW'LVSDWFKHU
WUDFHPL6SULWHDV1XPEHU
• /DVDOLGDGHEHUiVHUFRPRVHDSUHFLDHQOD)LJ
)LJXUD5HVXOWDGRGHORSHUDGRUDV
)LJXUD
$KRUDVHJXDUGDQORVDUFKLYRV\DTXHVHUHTXHULUiQHQODSUy[LPDVHFFLyQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
9DULDEOHV
&RQYHUVLyQGHWLSRV
/DVFRQYHUVLRQHVGHWLSRVGHGDWRVVHGDQFXDQGRXQDYDULDEOHFDPELDGHXQWLSR
GHGDWRRULJLQDODRWUR+D\GRVIRUPDVGHFRQYHUVLyQGHWLSRVLPSOtFLWDFXDQGROD
KDFHHOFRPSLODGRUHQIRUPDDXWRPiWLFD\H[SOtFLWDFXDQGRHVHOFyGLJRHOTXHOH
LQGLFDDOFRPSLODGRUTXHFDPELHHOWLSRGHXQDYDULDEOH
/DVFRQYHUVLRQHVLPSOtFLWDVVHHIHFW~DQHQORVVLJXLHQWHVFDVRV
En sentencias de asignación
Cuando se pasan valores como argumentos de función
Cuando se devuelven valores desde funciones
En expresiones que utilizan determinados operadores, como el
operador suma (+)
/DVIXQFLRQHVSDUDFRQYHUWLUDYDORUQXPpULFRVRQ1XPEHULQLW\XLQLW/D
IXQFLyQ SDUDFRQYHUWLUH[SOtFLWDPHQWHXQD YDULDEOHDYDORUERROHDQRHV %RROHDQ \
SDUDODVFDGHQDVHV6WULQJ
&RQVWDQWHV
(Q OD QXHYD YHUVLyQ GH $FWLRQ6FULSW VH SXHGH PDQHMDU FRQVWDQWHV FRQ OD SDODEUD
UHVHUYDGD FRQVW 6H SXHGH DVLJQDU YDORU VyOR XQD YH] D XQD FRQVWDQWH 3RU
FRQYHQFLyQ ODV FRQVWDQWHV VH HVFULEHQ FRQ WRGDV VXV OHWUDV HQ PD\~VFXOD \ VL
WLHQHQPiVGHXQDSDODEUDpVWDVVHVHSDUDQFRQJXLRQHVEDMRVFRPRVHPXHVWUD
HQHOVLJXLHQWHHMHPSOR
(MHUFLFLR
• 6HDEUHQORVDUFKLYRVGHWLSRVIOD\HOGHVXFODVH7LSRVDV
• (QHODUFKLYRIODYHULItTXHVHTXHHOPRGRGHOFRPSLODGRU12HVWpHQPRGR
HVWULFWR
• (QHODUFKLYRDVVHDxDGHHOFyGLJRTXHDSDUHFHHQQHJULWDV
SDFNDJHPLV&ODVHV^
LPSRUWIODVKGLVSOD\
SXEOLFFODVV7LSRVH[WHQGV6SULWH^
SXEOLFFRQVW0$;,02B9,'$6LQW
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
SXEOLFFRQVW0$5*(1B0,1,02XLQW
SXEOLFIXQFWLRQ7LSRV^
WUDFH0$;,02B9,'$6
WUDFH0$;,02B9,'$6
0$;,02B9,'$6
WUDFH0$;,02B9,'$6
WUDFH0$;,02B9,'$6
`
`
`
• 6H VDOYDQ ORV FDPELRV GHO DUFKLYR DV (MHF~WHVH OD SHOtFXOD \ REVpUYHVH HO
UHVXOWDGR6LQRHVWiDFWLYRHOPRGRHVWULFWRHOFRPSLODGRUQRQRWLILFDUiTXH
VHPRGLILFyXQDFRQVWDQWHWDOFRPRVHDSUHFLDHQOD)LJ
)LJXUD
)LJXUD5HVXOWDGRGHODVFRQVWDQWHVHQPRGRQRHVWULFWRGHOFRPSLODGRU
• $KRUD VH UHJUHVD DO PRGR HVWULFWR (Q OD )LJ VH REVHUYD TXH HO
FRPSLODGRUHQYtDXQPHQVDMHGHHUURU
)LJXUD(UURUDOLQWHQWDUPRGLILFDUXQDFRQVWDQWHHQPRGRHVWULFWRGHO
)LJXUD
FRPSLODGRU
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
2SHUDGRUHV
2SHUDGRUHV
/RVRSHUDGRUHVVRQVtPERORVTXHVHDSOLFDQDXQRRPiVRSHUDQGRVSDUDJHQHUDU
XQ QXHYR UHVXOWDGR /RV RSHUDGRUHV SXHGHQ VHU OLWHUDOHV YDULDEOHV R H[SUHVLRQHV
UHJXODUHV
(QHVWHOLEURVHGHQRPLQDSUHFHGHQFLDDORUGHQHQTXHORVRSHUDGRUHVVHUiQ
SURFHVDGRVSRUHOFRPSLODGRU/DSUHFHGHQFLDVHSXHGHPRGLILFDUSRUPHGLRGHORV
SDUpQWHVLV3RUHMHPSORODPXOWLSOLFDFLyQWLHQHSUHFHGHQFLDVREUHODVXPD\SXHGH
FDPELDUVHHVWDSUHFHGHQFLDSRUPHGLRGHORVSDUpQWHVLVFRPRVHYHHQVHJXLGD
/D7DEODSUHVHQWDODOLVWDGHRSHUDGRUHVGHPD\RUDPHQRUSUHFHGHQFLD
7DEOD/LVWDGHRSHUDGRUHV
7DEOD
3ULPDULR
3ULPDULR >@^[\`I[QHZ[\[>\@!!#
6XILMR
6XILMR [[
8QDULR
8QDULR [[aGHOHWHW\SHRIYRLG
0XOWLSOLFDWLYR
0XOWLSOLFDWLYR
$GLWLYR
$GLWLYR
'HVSOD]DPLHQWRHQPRGRGHELW
'HVSOD]DPLHQWRHQPRGRGHELW !!!!!
5HODFLRQDO
5HODFLRQDO ! ! DVLQLQVWDQFHRILV
,JXDOGDG
,JXDOGDG
$1'HQPRGRELW
$1'HQPRGRELW
;25HQPRGRELW
;25HQPRGRELW
PRGRELW A
25HQPRGRELW
25HQPRGRELW _
$1'OyJLFR
$1'OyJLFR
25OyJLFR
25OyJLFR __
&RQGLFLRQDO
&RQGLFLRQDO "
$VLJQDFLyQ
$VLJQDFLyQ
!! !!! A _
&RPD
&RPD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$PDQHUDGHFRQFOXVLyQ
$KRUDVHUHYLVDUiQORV2SHUDGRUHVSULQFLSDOHV
2SHUDGRUHVSULQFLSDOHV
/RV RSHUDGRUHV SULQFLSDOHV 7DEOD VRQ DTXHOORV TXH VH XWLOL]DQ SDUD FUHDU
DUUHJORVREMHWRVLQVWDQFLDVGHFODVHDFFHGHUDSURSLHGDGHVDJUXSDUH[SUHVLRQHV
OODPDUDIXQFLRQHV\DJUXSDPLHQWRGHH[SUHVLRQHV
7DEOD2SHUDGRUHVSULQFLSDOHV
7DEOD
2SHUDGRU
2SHUDGRU 2SHUDFLyQ
2SHUDFLyQ
>@
>@ ,QLFLDOL]DXQDPDWUL]
^[\`
^[\` ,QLFLDOL]DXQREMHWR
$JUXSDH[SUHVLRQHV
I[
I[ /ODPDDXQDIXQFLyQ
1HZ
1HZ /ODPDDXQFRQVWUXFWRU
[\[>\@
[\[>\@ $FFHGHDXQDSURSLHGDG
!!
!! ,QLFLDOL]DXQREMHWR;0//LVW(;
# $FFHGHDXQDWULEXWR(;
&DOLILFDXQQRPEUH(;
$FFHGHDXQHOHPHQWR;0/GHVFHQGLHQWH(;
2SHUDGRUHVGHVXILMR
(VWRV RSHUDGRUHV VLUYHQ SDUD DXPHQWDU R GLVPLQXLU XQD YDULDEOH QXPpULFD HQ XQD
XQLGDG
QXP9LGDV
QXP9LGDV
$XQTXHVRQRSHUDGRUHVXQDULRVWLHQHQPD\RUSUHFHGHQFLDTXHORVGHHVWDHVSHFLH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
2SHUDGRUHV
2SHUDGRUHVSUHILMR
$ HVWRV RSHUDGRUHV VH OHV OODPD XQDULRV \D TXH VyOR DIHFWDQ D XQ RSHUDQGR 6H
HVFULEHQ DQWHV GHO RSHUDGRU \ SULPHUR VH KDFH OD RSHUDFLyQ GH LQFUHPHQWR R
GHFUHPHQWR8QHMHPSORGHHOORVHV
QXP9LGDV
QXP9LGDV
2SHUDGRUHVXQDULRV
7LHQHQODPLVPDSUHFHGHQFLDTXHORVRSHUDGRUHVSUHILMRV\SRUWDQWRVHDSOLFDQD
XQVRORRSHUDQGR/D7DEODPXHVWUDHVWRVRSHUDGRUHV
7DEOD2SHUDGRUHVXQDULRV
7DEOD
2SHUDGRU
2SHUDGRU 2SHUDFLyQ
2SHUDFLyQ
,QFUHPHQWRSUHILMR
'HFUHPHQWRSUHILMR
8QDULR
8QDULRQHJDFLyQ
127OyJLFR
a 127HQPRGRELW
'HOHWH
'HOHWH (OLPLQDXQDSURSLHGDG
7\SHRI
7\SHRI 'HYXHOYHLQIRUPDFLyQGHWLSR
9RLG
9RLG
9 RLG 'HYXHOYHXQYDORUQRGHILQLGR
2SHUDGRUHVGHPXOWLSOLFDFLyQ
6RQ ORV RSHUDGRUHV ELQDULRV VH DSOLFDQ D GRV RSHUDQGRV FRQ PD\RU SUHFHGHQFLD
eVWRVVRQODPXOWLSOLFDFLyQGLYLVLyQ\PyGXORWDOFRPRVHYHHQOD7DEOD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
7DEOD2SHUDGRUHVGHPXOWLSOLFDFLyQ
7DEOD
2SHUDGRU
2SHUDGRU 2SHUDFLyQ
2SHUDFLyQ
0XOWLSOLFDFLyQ
'LYLVLyQ
0yGXOR
2SHUDGRUHVDGLWLYRV
&RPRVHDSUHFLDHQOD7DEODVRQRSHUDGRUHVELQDULRVTXHVXPDQRUHVWDQGRV
RSHUDQGRV
7DEOD2SHUDGRUHVDGLWLYRV
7DEOD
2SHUDGRU
2SHUDGRU 2SHUDFLyQ
2SHUDFLyQ
6XPD
5HVWD
2SHUDGRUHVUHODFLRQDOHV
&RPSDUDQ GRV RSHUDQGRV \ UHJUHVDQ XQ YDORU ERROHDQR YHUGDGHUR R IDOVR /RV
VLJXLHQWHVRSHUDGRUHVTXHPXHVWUDODWDEODWLHQHQODPLVPDSUHFHGHQFLD
7DEOD2SHUDGRUHVUHODFLRQDOHV
7DEOD
2SHUDGRU
2SHUDGRU 2SHUDFLyQ
2SHUDFLyQ
0HQRUTXH
! 0D\RUTXH
0HQRURLJXDOTXH
! 0D\RURLJXDOTXH
$V
$V &RPSUXHEDHOWLSRGHGDWRV
,Q
,Q &RPSUXHEDODVSURSLHGDGHVGHREMHWRV
,QVWDQFHRI
,QVWDQFHRI &RPSUXHEDXQDFDGHQDGHSURWRWLSRV
,V
,V &RPSUXHEDHOWLSRGHGDWRV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
2SHUDGRUHV
2SHUDGRUHVGHLJXDOGDG
6RQ RSHUDGRUHV ELQDULRV \ UHJUHVDQ XQ YDORU ERROHDQR 7LHQHQ PHQRU SUHFHGHQFLD
TXHORVRSHUDGRUHVUHODFLRQHV\VHPXHVWUDQHQOD7DEOD
7DEOD2SHUDGRUHVGHLJXDOGDG
7DEOD
2SHUDGRU
2SHUDGRU 2SHUDFLyQ
2SHUDFLyQ
,JXDOGDG
£ 'HVLJXDOGDG
,JXDOGDGHVWULFWD
£ 'HVLJXDOGDGHVWULFWD
2SHUDGRUHVOyJLFRV
6RQ RSHUDGRUHV ELQDULRV \ UHJUHVDQ XQ YDORU ERROHDQR (O RSHUDGRU $1' WLHQH
SUHFHGHQFLDVREUH25VHPXHVWUDQHQODWDEOD
7DEOD2SHUDGRUHVOyJLFRV
7DEOD
2SHUDGRU
SHUDGRU 2SHUDFLyQ
2SHUDFLyQ
$1'OyJLFR
__
__ 25OyJLFR
2SHUDGRUFRQGLFLRQDO
(O RSHUDGRU FRQGLFLRQDO GH OD 7DEOD DSOLFD D WUHV RSHUDQGRV 6RQ IRUPDV
DEUHYLDGDVGHOLI«HOVH«TXHVHYHUiHQHOVLJXLHQWHFDStWXOR
7DEOD2SHUDGRUFRQGLFLRQDO
7DEOD
2SHUDGRU
2SHUDGRU 2SHUDFLyQ
2SHUDFLyQ
HUDFLyQ
? : 2SHUDGRUFRQGLFLRQDO
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
2SHUDGRUHVGHDVLJQDFLyQ
/RVRSHUDGRUHVGHDVLJQDFLyQVLUYHQSDUDDOPDFHQDUXQRSHUDQGRHQRWUR6RQORV
TXH WLHQHQ PHQRU SUHFHGHQFLD HQWUH WRGRV ORV RSHUDGRUHV 7RGRV ORV VLJXLHQWHV
RSHUDGRUHVTXHPXHVWUDOD7DEODWLHQHQODPLVPDSUHFHGHQFLD
7DEOD2SHUDGRUHVGHDVLJQDFLyQ
7DEOD
2SHUDGRU
2SHUDGRU 2SHUDFLyQ
2SHUDFLyQ
$VLJQDFLyQ
$VLJQDFLyQGHPXOWLSOLFDFLyQ
$VLJQDFLyQGHGLYLVLyQ
$VLJQDFLyQGHPyGXOR
$VLJQDFLyQGHVXPD
$VLJQDFLyQGHUHVWD
$VLJQDFLyQGHGHVSOD]DPLHQWRDODL]TXLHUGD
HQPRGRELW
!! $VLJQDFLyQGHGHVSOD]DPLHQWRDODGHUHFKD
HQPRGRELW
!!! $VLJQDFLyQGHGHVSOD]DPLHQWRDODGHUHFKD
HQPRGRELWVLQVLJQR
$VLJQDFLyQGH$1'HQPRGRELW
A $VLJQDFLyQGH;25HQPRGRELW
_ $VLJQDFLyQGH25HQPRGRELW
(MHPSOR
3DUDTXHQRVHDEXUUDFRQWDQWDWHRUtDKDUHPRVXQHMHPSORVHQFLOORGHPDQHMRGH
FDGHQDV DXQTXH XWLOL]DUHPRV DOJXQDV HVWUXFWXUDV TXH D~Q QR KHPRV H[SOLFDGR
FRPRVRQORVFLFORV\ODVFRQGLFLRQDOHV
'H DFXHUGR FRQ OD QXPHURORJtD HO FDUiFWHU GH XQD SHUVRQD SXHGH
GHWHUPLQDUVH VXPDQGR ODV OHWUDV VH OHV DVLJQD XQ YDORU $ % HWF (O
UHVXOWDGRHVXQQ~PHURGHPiVGHXQGtJLWRSRUHMHPSORVHVXPDQHQWUHHOORV
KDVWD TXH Gp XQ GtJLWR GHO DO /D VLJXLHQWH WDEOD QRV LQGLFD HO FDUiFWHU GH OD
SHUVRQDVHJ~QVXQ~PHUR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
2SHUDGRUHV
9ROXQWDGILUPH]DFDSDFLGDG
6RFLDELOLGDGFUHDWLYLGDGFDSDFLGDGLQHVWDELOLGDGHPRFLRQDO
,QWHOLJHQFLD FUHDWLYLGDG FDSDFLGDG LQWHUpV SRU HO DUWH 3RGHU HVSLULWXDO \
VH[XDO
&DXWHODGHWDOOLVPRIDOWDGHDPELFLyQWHPRUDORGHVFRQRFLGRVH[XDOLGDG
,QFOLQDFLyQKDFLDODDYHQWXUDWHQGHQFLDDOFDPELR
7ROHUDQFLDHVWDELOLGDGRUGHQRSWLPLVPR
7HQGHQFLDDOHQLJPDFDUiFWHUSRpWLFRHUXGLFLyQVROHGDG
1HJRFLDQWHUHDOL]DGRUGHHPSUHVDVp[LWRVPDWHULDOHV
e[LWRVLQWHOHFWXDOHVSHUIHFFLyQSRGHUFDUiFWHULPSXOVLYR
3RUVHUpVWHXQHMHPSORIDOWDQDOJXQDVYDOLGDFLRQHVLPSRUWDQWHV
• 1R DFHSWD DFHQWRV 7HQGUtDPRV TXH KDFHU XQD SHTXHxD IXQFLyQ TXH ORV
UHHPSOD]DUD
• 1RDFHSWDEODQFRV+DEUtDTXHKDFHURWUDIXQFLyQSDUDHOLPLQDUORV
• 6L HO QRPEUH VXPD PiV GH WHQGUtDPRV TXH YDOLGDU VHSDUD ORV WUHV
GtJLWRV
• 3RGHPRV RSWLPL]DU HO FyGLJR FRQ XQ DUUHJOR (VWRV SHQGLHQWHV ORV
HIHFWXDUHPRVHQVXPRPHQWR
$EUD XQ DUFKLYR )ODVK $FWLRQ6FULSW \ QyPEUHOR FRPR QXPHURORJtDIOD
QXPHURORJtDIOD
GHQWURGHVXFDUSHWDGHWUDEDMR
$EUD XQ DUFKLYR $FWLRQ6FULSW FODVV \ QyPEUHOR FRPR 1XPHURORJLD
1XPHURORJLD
*UDEHHVWHDUFKLYRFRPR1XPHURORJLDDV
1XPHURORJLDDVGHQWURGHODFDUSHWDPLV&ODVHV
1XPHURORJLDDV
(VFULEDHOFDPLQRGHFODVHFODVVSDWKHQODFODVH(OFyGLJRHQHODUFKLYR
GHFODVHGHEHUiVHUHOVLJXLHQWH
SDFNDJHPLV&ODVHV^
SXEOLFFODVV1XPHURORJLD^
SXEOLFIXQFWLRQ1XPHURORJLD^
FRGLJRGHFODVH
`
`
`
1RROYLGHHVFULELUHQHO'RFXPHQW&ODVVODFDUSHWD\HOQRPEUHGHODFODVH
YpDVHOD)LJ
)LJXUD
)LJXUD'RFXPHQW&ODVVFRQFDUSHWD\QRPEUHGHODFODVH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
(Q HO DUFKLYR GH FODVH GHVSXpV GH OD GHILQLFLyQ GHO SDTXHWH LPSRUWH OD
FODVH6SULWH\H[WLHQGDDHOODODQXHYDFODVHVHJ~QVHPDUFDHQQHJULWDVHQ
HOVLJXLHQWHFyGLJR
SDFNDJHPLV&ODVHV^
LPSRUWIODVKGLVSOD\6SULWH
LPSRUWIODVKGLVSOD\6SULWH
KGLVSOD\6SULWH
SXEOLFFODVV1XPHURORJLDH[WHQGV6SULWH
H[WHQGV6SULWH^
H[WHQGV6SULWH
1HFHVLWDPRVDKRUDXQDYDULDEOHSDUDDOPDFHQDUHOQRPEUHSRUDQDOL]DUFRQ
OD QXPHURORJtD 3DUD HOOR FUHDPRV XQD YDULDEOH SDUiPHWUR IXHUD GH OD
GHILQLFLyQGHODVIXQFLRQHV\ODGHFODUDPRVFRPRS~EOLFD
'HQWUR GH OD IXQFLyQ FRQVWUXFWRUD FDPELDPRV OD YDULDEOH D PD\~VFXODV H
LQLFLDPRVHOSURFHVRLQYRFDQGRDODIXQFLyQLQLFLR
&UHDPRV OD IXQFLyQ LQLFLR TXH SRU HQFRQWUDUVH HQ XQD FODVH OD
OODPDUHPRVPpWRGRFRQHOPRGLILFDGRUGHDFFHVRSULYDWHFRQORTXHHVWH
PpWRGR ~QLFDPHQWH SRGUi VHU OODPDGR LQWHUQDPHQWH GHQWUR GH OD FODVH
1XPHURORJtD
(OFyGLJRGHQWURGHODFODVHGHEHUiVHUHOVLJXLHQWH
SDFNDJHPLV&ODVHV^
LPSRUWIODVKGLVSOD\6SULWH
SXEOLFFODVV1XPHURORJLDH[WHQGV6SULWH^
YDUQRPEUH3URSLR6WULQJ )UDQFLVFR
SXEOLFIXQFWLRQ1XPHURORJLD^
WUDFH(OQRPEUHRULJLQDOHVQRPEUH3URSLR
QRPEUH3URSLR QRPEUH3URSLRWR8SSHU&DVH
WUDFH(OQRPEUHRULJLQDOHQPD\~VFXODVHV
QRPEUH3URSLR
LQLFLR
`
SULYDWHIXQFWLRQLQLFLR^
`
`
`
(MHFXWHODDSOLFDFLyQFRQ>&WUO@>(QWHU@:LQGRZVR>&RPDQGR@>5HWXUQ@
0DF (Q OD YHQWDQD GH VDOLGD WHQGUi HO QRPEUH HQ VX IRUPD RULJLQDO \
WDPELpQFRQYHUWLGDDPD\~VFXODVHQHOSDQHOGHVDOLGD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
2SHUDGRUHV
)LJXUD6DOLGDGHODHMHFXFLyQGHOVFULSW
)LJXUD
'HQWURGHOPpWRGRLQLFLR
LQLFLRHVFULEDHOVLJXLHQWHFyGLJRSDUDREWHQHUODVXPD
LQLFLR
GHODVOHWUDVGHOQRPEUH
SULYDWHIXQFWLRQLQLFLR^
YDUORQJLWXGXLQW QRPEUH3URSLROHQJWK
YDUVXPDXLQW
YDUDVFLLXLQW
YDUYDORUXLQW
YDUOHWUD6WULQJ
WUDFH(OQ~PHURGHFDUDFWHUHVHVORQJLWXG
IRUYDULLQW LORQJLWXGL^
OHWUD QRPEUH3URSLRFKDU$WL
DVFLL QRPEUH3URSLRFKDU&RGH$WL
YDORU DVFLL
VXPD VXPDYDORU
WUDFH/DOHWUDQ~PHURLHVOHWUD
WUDFH6XYDORU$6&,,HVDVFLL
WUDFH6XYDORUHQHODEHFHGDULRHVYDORU
WUDFH´´
`
WUDFH/DVXPDGHODVOHWUDVHVVXPD
`
+DVWDHVWHSXQWRSRGHPRVWHQHUXQQ~PHURFRQGRVFLIUDVSRUORTXHKD\
TXHVXPDUORVKDVWDWHQHUXQDVROD3DUDHOORQHFHVLWDPRVRWURFLFORHOFXDO
GHEHUiFRORFDUGHQWURGHODIXQFLyQSHURGHEDMRGHODHVWUXFWXUDIRU
YDUGLJLWRXLQW
YDUGLJLWRXLQW
ZKLOHVXPD!^
GLJLWR 0DWKIORRUVXPD
GLJLWR VXPD
VXPD GLJLWRGLJLWR
`
WUDFHVXPD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$OJRPiVVREUHSURJUDPDFLyQRULHQWDGDDREMHWRV
2EVHUYH TXH HVWDPRV XWLOL]DQGR HO RSHUDGRU PyGXOR TXH OR TXH KDFH HV
UHJUHVDUQRV HO UHVLGXR HQWHUR GH XQD GLYLVLyQ (O UHVXOWDGR GH HVWH FLFOR VHUi XQ
Q~PHURHQWUH\SXHVVXPDFRQVHFXWLYDPHQWHODFLIUDKDVWDTXHODFDQWLGDGVHD
PHQRURLJXDOD
<DFRQHOQ~PHURGHVHDGRVLPSOHPHQWHOHLQGLFDUHPRVDOXVXDULRFXiOHV
VXFDUiFWHUGHSHQGLHQGRGHVXQRPEUH\GHODQXPHURORJtD(OVLJXLHQWH
FyGLJR GHEHUi VHU HVFULWR GHEDMR GHO FLFOR DQWHULRU \ GHQWUR GHO PpWRGR
LQLFLR
LQLFLR
VZLWFKVXPD
^
FDVH
WUDFH9ROXQWDGILUPH]DFDSDFLGDG
EUHDN
FDVH
WUDFH6RFLDELOLGDGFUHDWLYLGDGFDSDFLGDGLQHVWDELOLGDG
HPRFLRQDO
EUHDN
FDVH
WUDFH,QWHOLJHQFLDFUHDWLYLGDGFDSDFLGDGLQWHUpVSRUHODUWH
EUHDN
FDVH
WUDFH&DXWHODGHWDOOLVPRIDOWDGHDPELFLyQWHPRUDOR
GHVFRQRFLGR
EUHDN
FDVH
WUDFH,QFOLQDFLyQKDFLDODDYHQWXUDWHQGHQFLDDOFDPELR
EUHDN
FDVH
WUDFH7ROHUDQFLDHVWDELOLGDGRUGHQRSWLPLVPR
EUHDN
FDVH
WUDFH7HQGHQFLDDOHQLJPDFDUiFWHUSRpWLFRHUXGLFLyQVROHGDG
EUHDN
FDVH
WUDFH1HJRFLDQWHUHDOL]DGRUGHHPSUHVDVp[LWRVPDWHULDOHV
EUHDN
FDVH
WUDFHe[LWRVLQWHOHFWXDOHVSHUIHFFLyQSRGHUFDUiFWHULPSXOVLYR
EUHDN
`
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$PDQHUDGHFRQFOXVLyQ
(VWDPRVXWLOL]DQGRDOJXQDVHVWUXFWXUDVTXHQRVHKDQ H[SOLFDGRSHURVLWLHQH
FRQRFLPLHQWRV GH SURJUDPDFLyQ HQ RWUR OHQJXDMH QR OH VHUiQ GHVFRQRFLGDV (VWDV
VHQWHQFLDVVRQ
• 6HQWHQFLD´IRUµ1RVSHUPLWHKDFHUFLFORVSRUPHGLRGHXQRRYDULRVtQGLFHV
• 6HQWHQFLD ´ZKLOHµ (IHFW~D LQWHUDFFLRQHV YDOLGDQGR XQD FRQGLFLyQ HQ OD
HQWUDGDGHOFLFOR
• 6HQWHQFLD´LIµ9HULILFDXQDFRQGLFLyQ
• 6HQWHQFLD´VZLWFKµ(YDO~DXQDFRQGLFLyQFRQYDULDVRSFLRQHV
(VWDVVHQWHQFLDVVHUiQDQDOL]DGDVHQHOVLJXLHQWHFDStWXOR
/R LPSRUWDQWH HV TXH REVHUYH FyPR VH HVWUXFWXUD XQ SURJUDPD HQ
$FWLRQ6FULSW (V XQ FRQMXQWR GH YDULDEOHV RSHUDFLRQHV \ HVWUXFWXUDV TXH QRV
SHUPLWLUiQ REWHQHU XQ UHVXOWDGR HQ HVWH FDVR VX FDUiFWHU VHJ~Q OD PLOHQDULD
QXPHURORJtD
$Vt TXH WHFOHH VX QRPEUH \ YHD FXiO HV VX FDUiFWHU VHJ~Q OD QXPHURORJtD
6XHUWH *UDEH HVWH HMHUFLFLR FRQ HO QRPEUH ´QXPHURORJtDIODµ OR XVDUHPRV PiV
DGHODQWH HQ XQD FDUSHWD HVSHFtILFD SDUD OD OHFWXUD GH HVWH OLEUR (Q HOOD GHEHUi
DOPDFHQDUORVGHPiVHMHUFLFLRVTXHYD\DKDFLHQGR
$PDQHUDGHFRQFOXVLyQ
(OPDQHMRGHODVYDULDEOHVHVXQDSLHGUDDQJXODUHQFXDOTXLHUOHQJXDMH$VtFRPRODV
H[SUHVLRQHV UHJXODUHV VRQ OR TXH QRV SHUPLWH PRGLILFDU OD LQIRUPDFLyQ UHFXHUGH
ORVWySLFRVUHYLVDGRVHQHVWHFDStWXOR
9DULDEOHV
9DULDEOHV 2SHUDGRUHV
2SHUDGRUHV
ÉPELWRGHODVYDULDEOHV 2SHUDGRUHVSULQFLSDOHV
$OFDQFHGHODVYDULDEOHV 2SHUDGRUHVSUHILMR
3DUiPHWURVGHODIXQFLyQFRQVWUXFWRUD 2SHUDGRUHVXQDULRV
7LSRGHGDWRV 2SHUDGRUHVGHPXOWLSOLFDFLyQ
7LSRVGHYDULDEOH 2SHUDGRUHVUHODFLRQDOHV
2SHUDGRUHVLV\DV 2SHUDGRUHVGHLJXDOGDG
&RQYHUVLyQGHWLSRV 2SHUDGRUFRQGLFLRQDO
2SHUDGRUHVGHDVLJQDFLyQ
(Q HO VLJXLHQWH FDStWXOR DQDOL]DUHPRV ODV HVWUXFWXUDV XWLOL]DGDV HQ HO
HMHUFLFLRORVFLFORV\ODVVHQWHQFLDVFRQGLFLRQDOHV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
Sentencias condicionales
y ciclos 3
6HQWHQFLDVFRQGLFLRQDOHV
$6 WLHQH WUHV VHQWHQFLDV FRQGLFLRQDOHV
FRQGLFLRQDOHV ODV FXDOHV QR VXIULHURQ FDPELRV GH ODV
YHUVLRQHVDQWHULRUHV
6HQWHQFLDLI
/DVHQWHQFLDLIHIHFWXDUiXQDYHULILFDFLyQGHXQDH[SUHVLyQFRQUHVXOWDGRERROHDQR
WUXHIDOVH 6L OD FRQGLFLyQ UHVXOWD YHUGDGHUD HIHFWXDUi XQ EORTXH GH VHQWHQFLDV
6XVLQWD[LVHV
if(condición){
sentencia1…
sentencia2…
etcétera…
}
2SFLRQDOPHQWH VH SXHGH WHQHU XQD VHQWHQFLD HOVH OD FXDO DJUXSD ODV VHQWHQFLDV
TXH VH HMHFXWDUiQ VL OD FRQGLFLyQ GD FRPR UHVXOWDGR XQ YDORU IDOVH /D VHQWHQFLD
HOVHVLHPSUHWLHQHTXHLUSUHFHGLGDGHXQLI6XVLQWD[LVHV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
6HQWHQFLDVFRQGLFLRQDOHV
if(condición){
sentencia1…
sentencia2…
etcétera…
} else {
sentencia1…
sentencia2…
etcétera…
}
6HQWHQFLDLIHOVHLI
6LVHQHFHVLWDYHULILFDUYDULDVFRQGLFLRQDOHVVHSXHGHXWLOL]DUODVHQWHQFLD
LI«HOVHLI«
/D~OWLPDVHQWHQFLDLISXHGHOOHYDUVXFRQWUDSDUWHHOVHODFXDOVHHMHFXWDUiVL
QRVHFXPSOHQLQJXQDGHODVDQWHULRUHV3RUHMHPSORVLVHGHVHDWRPDUGLIHUHQWHV
GHFLVLRQHVGHSHQGLHQGRGHODHGDGGHOXVXDULRVXVLQWD[LVHV
if(edad<18){
trace(“Usted no puede acceder el portal”);
} else if(edad<25){
trace(“Sólo tiene acceso a ciertas páginas de nuestro
portal”);
} else if(edad<40){
trace(“Usted tiene acceso completo a nuestra
información”);
} else {
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
6HQWHQFLDVZLWFK
8QDVHQWHQFLDVZLWFKSXHGHVXVWLWXLUDXQDHVWUXFWXUDLI«HOVHLI«FRQODGLIHUHQFLD
GHTXHHQOXJDUGHXQUHVXOWDGRERROHDQRUHJUHVDUiXQYDORUFRQHOFXDOWRPDUiODV
GHFLVLRQHVVLVHFXPSOHODFRQGLFLyQVHHMHFXWDUiQODVVHQWHQFLDVKDVWDHQFRQWUDU
ODVHQWHQFLDEUHDNLQFOXVRVLKD\RWUDVFRQGLFLRQHV6LQLQJXQDGHODVFRQGLFLRQHV
VHFXPSOHQVHHMHFXWDUiHOEORTXHGHVHQWHQFLDVGHVSXpVGHODVHQWHQFLDGHIDXOW
ODFXDOHVRSFLRQDO6XVLQWD[LVHV
switch(numVidas){
case 8:
trace(“Felicidades, estás enterito”),
break;
case 7:
case 6:
case 5:
trace(“Vas muy bien, aún puedes superar la
prueba”);
break;
case 4:
case 3:
trace(“Ups, necesitas esforzarte más”);
break;
case 2:
case 1:
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
6HQWHQFLDVFRQGLFLRQDOHV
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$6QXHYR\VHJXDUGDFRPR&RQGLFLRQDOHVIOD
HQHOGLUHFWRULRGHWUDEDMR
• $KRUD VH DEUH XQ DUFKLYR $FWLRQ6FULSW QXHYR \ VH JXDUGD HQ OD FDUSHWD
PLV&ODVHVFRPR&RQGLFLRQDOHVDV
• 6HHVFULEHHQHODUFKLYRGHFODVHVHOVLJXLHQWHFyGLJR
package misClases{
import flash.display.*;
public class Condicionales extends Sprite {
public function Condicionales() {
var fecha:Date=new Date ;
var dia:uint=fecha.getDay();
switch (día) {
case 0 :
trace("Domingo");
break;
case 1 :
trace("Lunes");
break;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
case 2 :
trace("Martes");
break;
case 3 :
trace("Miércoles");
break;
case 4 :
trace("Jueves");
break;
case 5 :
trace("Viernes");
break;
case 6 :
trace("Sábado");
break;
default :
trace("Fuera de rango");
break;
}
}
}
• 2EVpUYHVHTXHVHHVWiFUHDQGRXQREMHWRWLSR'DWH(VWDFODVHGHREMHWRV
FRQWLHQHODIHFKDGHODFRPSXWDGRUDDOVHUFUHDGRV&RQHOPpWRGRJHW'D\
VHUHFXSHUDHOGtDGHODVHPDQDHQIRUPDQXPpULFDGRQGHHOGRPLQJRHV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
%XFOHVRFLFORV
FHUR\HOViEDGRHV3RUPHGLRGHXQDHVWUXFWXUDFDVHVHSXHGHFRQYHUWLU
HOQ~PHURDFDGHQD
• 9HULItTXHVHTXHVHHQFXHQWUHHQHOPRGRHVWULFWRGHOFRPSLODGRU
• (Q OD YHQWDQD GH VDOLGD GHEHUi DSDUHFHU HO GtD GHO FDOHQGDULR HQ TXH VH
HQFXHQWUHODFRPSXWDGRUD
%XFOHVRFLFORV
8QDVHQWHQFLDEXFOHRFLFORHQDOJXQRVSDtVHVVHOHVFRQRFHFRPR´OD]RVµSXHGH
UHSHWLU XQ JUXSR GH VHQWHQFLDV FRQWURODGDV FRQ XQD R PiV H[SUHVLRQHV /DV
LQVWUXFFLRQHV TXH VH HMHFXWDUiQ YDQ HQFHUUDGDV HQWUH OODYHV 2SFLRQDOPHQWH VH
SXHGHQRPLWLUODVOODYHVSHURHVXQDSUiFWLFDQRUHFRPHQGDGD/DVVHQWHQFLDVGH
EXFOHVLQFOXLGDVHQ$6VRQODVVLJXLHQWHV
6HQWHQFLDIRU
8QD VHQWHQFLD IRU VH XWLOL]D FXDQGR VH FRQRFH HO Q~PHUR GH LQWHUDFFLRQHV TXH VH
EXVFD&XHQWDFRQWUHVHOHPHQWRVXQDDVLJQDFLyQLQLFLDO6HOHFRQRFHFRPRYDORU
LQLFLDO'HVSXpVXQDFRQGLFLyQGHFRQWUROODFXDOVHHMHFXWDUiPLHQWUDVVXUHVXOWDGR
VHDYHUGDGHUR&XDQGRHVWDFRQGLFLyQVHDIDOVDHOEXFOHWHUPLQDUi3RU~OWLPRXQD
RSHUDFLyQTXHFDPELDGHYDORUDODYDULDEOHGHFRQWURORtQGLFHJHQHUDOPHQWHHVXQ
LQFUHPHQWR SHUR SXHGH VHU XQ GHFUHPHQWR /RV HOHPHQWRV GHO EXFOH VH VHSDUDQ
FRQSXQWR\FRPD6XVLQWD[LVHV
6HQWHQFLDIRULQ
for(param in objeto){
trace(param+”-> “+objeto[param]);
}
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
6LVHTXLHUHDQDOL]DUXQDUUHJORVXVLQWD[LVHV
for(param in arreglo){
trace(arreglo[param]);
}
2EVpUYHVHTXHHQPHGLRGHORVSDUiPHWURVYDODSDODEUDUHVHUYDGDLQ/RVREMHWRV
JXDUGDQVXVSDUiPHWURVVLQXQRUGHQSUHGHWHUPLQDGR
6HQWHQFLDIRUHDFKLQ
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$FWLRQ6FULSW\VHJXDUGDFRPREXFOHVIODHQOD
FDUSHWDGHWUDEDMR
• $KRUD VH DEUH XQ DUFKLYR $FWLRQ6FULSW \ VH JXDUGD FRPR %XFOHVDV HQ OD
FDUSHWDPLV&ODVHV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.*;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
%XFOHVRFLFORV
• 6HJXDUGDHODUFKLYRDQWHVGHSURFHGHUFRQHOVLJXLHQWHSXQWR
• (QHODUFKLYREXFOHVIODVHHVFULEHPLV&ODVHV%XFOHVHQHOFDPSR'RFXPHQW
&ODVV GHO ,QVSHFWRU GH SURSLHGDGHV 9HULItTXHVH TXH HO FRPSLODGRU VH
HQFXHQWUHHQPRGRHVWULFWR
• (MHF~WHVHODSiJLQD'HEHUiWHQHUODVDOLGDTXHPXHVWUDOD)LJ
)LJXUD
)LJXUD5HVXOWDGRGHYHUXQREMHWRFRQHOFLFORIRUHDFK
• $KRUD VH HVFULEH HO VLJXLHQWH FyGLJR GHQWUR GH OD IXQFLyQ FRQVWUXFWRUD
GHEDMRGHOEXFOHDQWHULRUHOFXDOVHSXHGHFRPHQWDUVLDVtVHGHVHD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
• (MHF~WHVHHOGRFXPHQWR)ODVK'HEHUiWHQHUODVDOLGDTXHVHYHHQOD)LJ
)LJXUD
)LJXUD5HVXOWDGRGHYHUXQREMHWR;0/FRQODVHQWHQFLDIRUHDFK
• $KRUDVHFDSWXUDGHEDMRGHOFyGLJRDQWHULRUODVVLJXLHQWHVVHQWHQFLDVTXH
DQDOL]DQXQDUUHJOR
• /DVDOLGDGHEHUiVHUODTXHVHDSUHFLDHQOD)LJ
)LJXUD
)LJXUD5HVXOWDGRGHYHUXQDUUHJORFRQODVHQWHQFLDIRUHDFK
1RWD
1RVHSXHGHUHFRUUHUODVSURSLHGDGHVGHXQREMHWRVLHOREMHWRHVXQDLQVWDQFLDGHXQD
FODVHFHUUDGD7DPSRFRVHSXHGHUHFRUUHUODVSURSLHGDGHVILMDVSURSLHGDGHVGHILQLGDV
FRPR SDUWH GH XQD GHILQLFLyQ GH FODVH QL VLTXLHUD SDUD ODV LQVWDQFLDV GH FODVHV
GLQiPLFDV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
%XFOHVRFLFORV
6HQWHQFLDZKLOH
/DVHQWHQFLDZKLOHVHXWLOL]DFXDQGRQRVHVDEHHOQ~PHURGHLQWHUDFFLRQHVTXHVH
QHFHVLWDQ +D\ TXH WHQHU FXLGDGR HQ QR FDHU HQ XQ EXFOH LQILQLWR TXH QR WLHQH
VDOLGD\VHUHSLWHLQGHILQLGDPHQWH3DUDHOORVHWLHQHODVHQWHQFLDEUHDNTXHFRUWD
HOFLFOR7DPELpQSXHGHXWLOL]DUVHHQIRUPDFRQWURODGDFRPRXQIRUSRUHMHPSOR
var i:int = 0;
while(i<5){
trace(i);
i++;
}
3DUD H[SHULPHQWDU OR TXH HV XQ EXFOH LQILQLWR EyUUHVH OD VHQWHQFLD L (O
FRPSLODGRU HQYLDUi XQ PHQVDMH FRQ HO FXDO VH SRGUi VXVSHQGHU HO PLVPR HQ
DSUR[LPDGDPHQWHVHJXQGRV
6HQWHQFLDGRZKLOH
/D VHQWHQFLD GRZKLOH HV PX\ VLPLODU D OD DQWHULRU FRQ OD GLIHUHQFLD GH TXH HO
EORTXH GH LQVWUXFFLRQHV VH HMHFXWDUi DO PHQRV XQD YH] 3RU OR JHQHUDO VH XWLOL]D
FXDQGR QR VH VDEH HO Q~PHUR GH LQWHUDFFLRQHV TXH VH GHVHD $O LJXDO TXH OD
VHQWHQFLD DQWHULRU KD\ TXH WHQHU FXLGDGR SDUD QR FDHU HQ EXFOHV LQILQLWRV 8Q
HMHPSORFRQWURODGRGHODVHQWHQFLDGRZKLOHTXHVLPXODDXQDVHQWHQFLDIRUHVOD
VLJXLHQWH
var i:int = 0;
do{
trace(i);
i++;
} while (i<5);
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
)XQFLRQHV
/DV IXQFLRQHV HQ $6 WLHQHQ QXHYDV FDUDFWHUtVWLFDV LPSRUWDQWHV SDUD OD
SURJUDPDFLyQ RULHQWDGD D REMHWRV (Q JHQHUDO HQ $FWLRQ6FULSW KD\ WUHV WLSRV GH
IXQFLRQHVJOREDOHVPpWRGRV RIXQFLRQHVUHODFLRQDGDV FRQXQREMHWR\IXQFLRQHV
KHFKDVSRUHOXVXDULR
6HSRGUtDGHILQLUDODVIXQFLRQHVFRPRJUXSRVGHVHQWHQFLDVTXHWLHQHQXQILQ
HVSHFtILFR3XHGHQRQRUHJUHVDUXQYDORU7DPELpQVHOHVSXHGHDVLJQDUYDORUHVD
ODV PLVPDV OODPDGRV DUJXPHQWRV R SDUiPHWURV SHUR WDPELpQ VH WHQGUiQ
IXQFLRQHVVLQSDUiPHWURV
)XQFLRQHVJOREDOHV
/DV IXQFLRQHV JOREDOHV HVWiQ LQFRUSRUDGDV D )ODVK \ SXHGHQ VHU OODPDGDV HQ
FXDOTXLHUSDUWHGHOSURJUDPD3RUHMHPSORHQFXDOTXLHUSDUWHGHOSURJUDPDVHSXHGH
XWLOL]DU OD IXQFLyQ WUDFH VLQ GHILQLU XQ REMHWR \ HQ FXDOTXLHU PRPHQWR 2WUDV
IXQFLRQHVJOREDOHVVHSXHGHQFRQVXOWDUHQODD\XGDGHOSDTXHWH
0pWRGRV
/RVPpWRGRVVRQIXQFLRQHVTXHHVWiQDVRFLDGDVFRQXQDFODVH([LVWHQPpWRGRVGH
ODVFODVHVSUHGHILQLGDVTXHVHXWLOL]DQSRUPHGLRGHODQRWDFLyQSXQWRSRUHMHPSOR
Math.random()
(QODSURJUDPDFLyQRULHQWDGDDREMHWRV\SRUORWDQWRHQ$6HVPX\FRP~QTXH
HO SURJUDPDGRU JHQHUH VXV SURSLRV PpWRGRV DxDGLHQGR IXQFLRQHV D ODV FODVHV
KHFKDV SRU HO XVXDULR 'H KHFKR DO KDFHU XQ FRQVWUXFWRU VH HVWi HVFULELHQGR XQD
IXQFLyQ
)XQFLRQHVSHUVRQDOL]DGDV
$XQTXH HQ $6 ORV XVXDULRV WDPELpQ KDFHQ IXQFLRQHV GHQWUR GH FODVHV VH OHV
OODPDUi IXQFLRQHV SHUVRQDOL]DGDV D DTXHOODV TXH VH GHILQHQ IXHUD GH OD FODVH
'HQWURGHOSDTXHWHVHOHVOODPDIXQFWLRQFODXVXUHVRFLHUUHGHIXQFLyQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)XQFLRQHV
/ODPDGRRLQYRFDFLyQGHXQDIXQFLyQ
3DUDOODPDUDXQDIXQFLyQVHXWLOL]DVXLGHQWLILFDGRUVHJXLGRGHORVSDUpQWHVLV6LOD
IXQFLyQ UHTXLHUH GH SDUiPHWURV R GH DUJXPHQWRV pVWRV YDQ GHQWUR GH ORV
SDUpQWHVLV GLYLGLGRV SRU FRPDV 3RU HMHPSOR OD \D FRQRFLGD IXQFLyQ JOREDOWUDFH
UHTXLHUHGHXQSDUiPHWUR
trace(“Hola Mundo”);
([LVWHQSDUiPHWURVTXHVRQUHTXHULGRV\RWURVTXHVRQRSFLRQDOHV3RUHMHPSORVL
VHHVFULEHXQDIXQFLyQWUDFHVLQDUJXPHQWRVHOFRPSLODGRUHQYLDUiXQPHQVDMHGH
HUURU
6L OD IXQFLyQ QR UHTXLHUH SDUiPHWURV FRQ HVFULELU ORV SDUpQWHVLV YDFtRV HV
VXILFLHQWH 'H KHFKR VL XQD IXQFLyQ JOREDO QR UHTXLHUH DUJXPHQWRV VH SXHGH
HVFULELUVLQSDUpQWHVLVSHURHVWRVHFRQVLGHUDXQDPDODSUiFWLFDGHSURJUDPDFLyQ
)XQFLRQHVGHXVXDULR
([LVWHQGRVIRUPDVGHGHILQLUXQDIXQFLyQHQ$FWLRQ6FULSWSRUXQDVHQWHQFLDGH
IXQFLyQ R SRU XQD H[SUHVLyQ GH IXQFLyQ 6XV FDUDFWHUtVWLFDV VH SUHVHQWDQ D
FRQWLQXDFLyQ
)XQFLyQWLSRVHQWHQFLD
3ULPHUR YD OD SDODEUD UHVHUYDGD IXQFWLRQ VHJXLGD GHO LGHQWLILFDGRU GH OD IXQFLyQ
(QWUHSDUpQWHVLVYDQORVDUJXPHQWRVVLH[LVWHQ\GHVSXpVODVOODYHVTXHIRUPDQHO
FXHUSRGHODIXQFLyQ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
)XQFLRQHVWLSRH[SUHVLRQHV
7DPELpQ FRQRFLGD FRPR IXQFLyQ OLWHUDO R DQyQLPD ([WUDRILFLDOPHQWH VH OH FRQRFH
FRPR´WLSRGHFRGLILFDFLyQ)ODVK0;µSRUTXHIXHHQHVWDYHUVLyQFXDQGRDSDUHFLy
6XVLQWD[LVHV
1RWD
(QJHQHUDOGHEHFRQVLGHUDUVHXVDUODVIXQFLRQHVGHVHQWHQFLDSXHVVRQPiVIiFLOHVGH
OHHU\HOFRPSLODGRUGHWHFWDGHPHMRUPDQHUDFXDOTXLHUSUREOHPDTXHVHHQFXHQWUHHQ
HOODV/DVIXQFLRQHVGHVHQWHQFLDWLSR)ODVKH[LVWHQHQWRGRHOiPELWRHQTXHHVWiQ
GHILQLGDV/DVIXQFLRQHVGHH[SUHVLyQGHEHQVHUGHILQLGDVDQWHVGHVHUXWLOL]DGDV
)XQFLRQHVTXHUHJUHVDQYDORUHV
3DUDUHJUHVDUXQYDORUGHXQDIXQFLyQDOLJXDOTXHODVYHUVLRQHVDQWHULRUHVGH$6
VH XWLOL]D OD SDODEUD UHVHUYDGD UHWXUQ 7RGDV ODV VHQWHQFLDV TXH VH HQFXHQWUHQ
GHEDMRGHOUHWXUQ\DQRVRQSURFHVDGDVSXHVFRQHVWDVHQWHQFLDWHUPLQDODIXQFLyQ
(Q HO PRGR HVWULFWR GHO FRPSLODGRU OD IXQFLyQ GHEH GH UHJUHVDU HO PLVPR WLSR GH
GDWRFRQHOFXDOIXHGHILQLGDSRUHMHPSOR
function cuadrado(num:int):int {
return num*num;
}
3DUDLQGLFDUOHDOFRPSLODGRUHOWLSRGHGDWRGHUHJUHVRVHGHEHHVFULELUHOVLJQRGH
GRV SXQWRV HQWUH HO SDUpQWHVLV TXH FLHUUD ORV DUJXPHQWRV \ OD OODYH TXH DEUH HO
FXHUSRGHODIXQFLyQ/RVWLSRVGHEHQGHVHUORVPLVPRVTXHORVWLSRVGHGDWRV\D
UHYLVDGRV 6L OD IXQFLyQ QR UHJUHVD QLQJ~Q YDORU \ VH TXLHUH TXH HO FRPSLODGRU HQ
PRGRHVWULFWRORGHWHFWHVHGHEHXWLOL]DUODSDODEUDUHVHUYDGDYRLG$GLIHUHQFLDGH
ODVYHUVLRQHVDQWHULRUHVODSDODEUDYRLGVHHVFULEHHQPLQ~VFXODV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)XQFLRQHV
)XQFLRQHVDQLGDGDV
(VSRVLEOHDQLGDUIXQFLRQHVHVGHFLUSRQHUXQDRPiVIXQFLRQHVGHQWURGHRWUD/DV
IXQFLRQHV DQLGDGDV QR YDQ D SRGHU VHU DFFHVDGDV IXHUD GH OD IXQFLyQ TXH ODV
FRQWLHQH D PHQRV TXH VHDQ OODPDGDV SRU ´UHIHUHQFLDµ WpUPLQR TXH VH DQDOL]DUi
PiVDGHODQWH
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$FWLRQ6FULSW\VHJXDUGDFRPRIXQFLRQHVIODHQ
ODFDUSHWDGHWUDEDMR
• $KRUDVHDEUHXQDUFKLYR$FWLRQ6FULSW\VHJXDUGDFRPR)XQFLRQHVDVHQOD
FDUSHWDPLV&ODVHV
• /tJXHVHDDPERVDUFKLYRVHQHOFDPSR'RFXPHQW&ODVV
• $VHJ~UHVHGHTXHVHHQFXHQWUDHQPRGRHVWULFWRGHOFRPSLODGRU
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
(MHF~WHVHODSHOtFXOD'HEHUiWHQHUXQUHVXOWDGRVLPLODUDOGHOD)LJ
)LJXUD
)LJXUD3URSLHGDGHVRDUJXPHQWRVGHXQDIXQFLyQ
• $KRUDLQWpQWHVHOODPDUDODIXQFLyQDSHOOLGRGHVGHODIXQFLyQFRQVWUXFWRUD
(OFRPSLODGRUGHEHUiHQYLDUXQPHQVDMHGHHUURU
3DVDUSDUiPHWURVSRUYDORURSRUUHIHUHQFLD
(MHUFLFLR
• 6HDEUHQORVDUFKLYRV)XQFLRQHVDV\IXQFLRQHVIOD
• 6H GHEH WHQHU OD VHJXULGDG GH TXH VH HQFXHQWUD HQ PRGR HVWULFWR GHO
FRPSLODGRU
• (QHODUFKLYRGHFODVHVHVXVWLWX\HHOFyGLJRDQWHULRUSRUHOVLJXLHQWH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)XQFLRQHV
package misClases{
import flash.display.Sprite;
(MHF~WHVH OD SHOtFXOD $SDUHQWHPHQWH HQ OD IXQFLyQ VH HVWiQ PRGLILFDQGR ODV
IXQFLRQHV JOREDOHV SHUR FRPR HO QRPEUH GH ORV SDUiPHWURV HV H[DFWDPHQWH HO
PLVPRHQUHDOLGDGVyORVHDIHFWDQORVYDORUHV\QRODVYDULDEOHVYpDVHOD)LJ
)LJXUD
)LJXUD3DVDUSDUiPHWURVSRUYDORU
• 6HVDOYDQORVDUFKLYRV&RPR\DVHKDEtDFRPHQWDGRODVYDULDEOHVTXHQR
VRQSULPLWLYDVVtPRGLILFDQVXFRQWHQLGRSXHVVHSDVDQSRUUHIHUHQFLD
• 'HVSXpV GH ODV YDULDEOHV WLSR FDGHQD VH HVFULEH OD VLJXLHQWH VHQWHQFLD
SDUDFUHDUXQREMHWRJHQpULFR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHFyGLJRGHEDMRGHODIXQFLyQ
MXQWD
• (QODIXQFLyQFRQVWUXFWRUDVHDJUHJDHOVLJXLHQWHFyGLJRSDUDYLVXDOL]DUODV
YDULDEOHV
trace("//");
trace(objeto.nombre+" "+objeto.apellido);
trace(referencia(objeto));
trace(objeto.nombre+" "+objeto.apellido);
• (MHF~WHVHODSHOtFXOD'HEHUiQREWHQHUVHORVUHVXOWDGRVGHOD)LJ
)LJXUD
)LJXUD3DVDUSDUiPHWURVSRUUHIHUHQFLD
• 2EVpUYHVHTXHORVYDORUHVGHODVSURSLHGDGHVVtIXHURQFDPELDGRVDXQTXH
HOREMHWRWHQtDGLIHUHQWHQRPEUHTXHHOSDUiPHWUR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)XQFLRQHV
9DORUHVSUHGHWHUPLQDGRVHQODVIXQFLRQHV
&RPR \D VH KDEtD YLVWR HQ ODV IXQFLRQHV FRQVWUXFWRUDV HQ $6 VH SHUPLWHQ ORV
YDORUHV SUHGHWHUPLQDGRV $TXHOORV SDUiPHWURV TXH VHDQ SUHGHWHUPLQDGRV HO
FRPSLODGRU ORV FRQVLGHUDUi FRPR ´RSFLRQDOHVµ HV GHFLU VL QR H[LVWHQ ORV YDORUHV
pVWRV VH WRPDUiQ SRU GHIDXOW \ HO FRPSLODGRU HQ PRGR HVWULFWR QR HPLWLUi QLQJ~Q
HUURU(QFDPELRWRGRVDTXHOORVDUJXPHQWRVTXHQRWHQJDQYDORUSUHGHWHUPLQDGR
HOFRPSLODGRUORVWRPDUiFRPR´REOLJDWRULRVµR ´UHTXHULGRVµSRUOR TXHVLHVWiHQ
PRGRHVWULFWRHOFRPSLODGRUPDUFDUiXQPHQVDMHGHHUURUVLVHRPLWHQ
/RV DUJXPHQWRV RSFLRQDOHV GHEHUiQ LU DO ILQDO GH OD OLVWD GH DUJXPHQWR HQ OD
GHILQLFLyQGHODIXQFLyQ
(OREMHWRDUJXPHQWV
$XQTXH HVWH REMHWR \D H[LVWtD HQ YHUVLRQHV DQWHULRUHV HQ $6 HV XQ SRFR
GLIHUHQWH(OREMHWRDUJXPHQWVHVXQDUUHJORFRQORVDUJXPHQWRVRSDUiPHWURVTXH
VH SDVDQ D OD IXQFLyQ \ HV PX\ ~WLO SDUD KDFHU IXQFLRQHV FRQ XQ Q~PHUR
LQGHWHUPLQDGRGHDUJXPHQWRV$OLJXDOTXHORVDUUHJORVWLHQHXQDSURSLHGDGOHQJWK
TXHLQGLFDHOQ~PHURGHDUJXPHQWRVTXHIXHURQSDVDGRV7DPELpQFXHQWDFRQXQD
SURSLHGDG FDOOHH TXH FRQWLHQH OD UHIHUHQFLD GH OD IXQFLyQ \ TXH VH XWLOL]D SDUD
IXQFLRQHV UHFXUVLYDV (Q ODV YHUVLRQHV DQWHULRUHV HO REMHWR WHQtD XQ SDUiPHWUR
FDOOHUHOFXDOFRQWHQtDODUHIHUHQFLDGHODIXQFLyQSHURpVWH\DQRVHXWLOL]D
(MHUFLFLR
• 6HDEUHQORVDUFKLYRV)XQFLRQHVDV\IXQFLRQHVIOD
• $VHJ~UHVHGHTXHVHHQFXHQWUDHQPRGRHVWULFWRGHOFRPSLODGRU
• 6HERUUDRFRPHQWDHOFRQWHQLGRGHODIXQFLyQFRQVWUXFWRUDHQHODUFKLYRGH
FODVH
• 6HHVFULEHXQDQXHYDIXQFLyQGHQWURGHODFODVHOODPDGDVXPD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
}
return total;
}
(QODIXQFLyQFRQVWUXFWRUDVHHVFULEHODOODPDGDDODIXQFLyQ
trace(suma(1,2));
$OHMHFXWDUODIXQFLyQHOFRPSLODGRUGHEHUiHQWUHJDUHOQ~PHUR
(OSDUiPHWUR«UHVW
(Q$6VHLQWURGXFHHOSDUiPHWURUHVWTXHSXHGHWRPDUFXDOTXLHUQRPEUHTXHQR
HVWp UHVHUYDGR SRU HO FRPSLODGRU 7LHQH ODV PLVPDV FDUDFWHUtVWLFDV TXH HO REMHWR
DUJXPHQWV SHUR QR SRVHH OD SURSLHGDG FDOOHH (VWH WLSR GH DUJXPHQWR GHEH LU
IRU]RVDPHQWHDOILQDOGHODOLVWDGHDUJXPHQWRV
(MHUFLFLR
• 6HDEUHQORVDUFKLYRV)XQFLRQHVDV\IXQFLRQHVIOD
• $VHJ~UHVHGHTXHVHHQFXHQWUDHQPRGRHVWULFWRGHOFRPSLODGRU
• 6HERUUDRFRPHQWDHOFRQWHQLGRGHODIXQFLyQFRQVWUXFWRUDHQHODUFKLYRGH
FODVH
• 6H HVFULEH XQD QXHYD IXQFLyQ GHQWUR GH OD FODVH OODPDGD ]XPD TXH HV
SUiFWLFDPHQWHLJXDODODDQWHULRUSHURFRQ´]µ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHPSORSUiFWLFRXVRGHFRQGLFLRQDOHV
1RWD
(VWHHMHUFLFLRQRIXQFLRQDHQPRGRHVWULFWRGHFRPSLODFLyQ
(MHPSORSUiFWLFRXVRGHFRQGLFLRQDOHV
3DUD HMHPSOLILFDU HO XVR GH FRQGLFLRQDOHV KDUHPRV XQD FODVH GH DSR\R FRQ ODV
YDOLGDFLRQHV GH XQ IRUPDWR GH HQWUDGD (VWD FODVH QR OD OODPDUHPRV GHVGH HO
'RFXPHQW&ODVVSRUTXHSRUORJHQHUDOHVOODPDGDSRURWUDVFODVHV(QHVWHHMHPSOR
YDOLGDUHPRV XQ FRUUHR HOHFWUyQLFR &RPR YHUi HVWDPRV FUHDQGR PpWRGR HVWiWLFR
VWDWLFHOFXDOQRVSHUPLWLUiXVDUHOPpWRGRVLQFUHDUXQDLQVWDQFLDGHFODVHFRQOD
VHQWHQFLDQHZ
• 6HDEUHXQDUFKLYR)ODVK$FWLRQ6FULSW\VHJXDUGDFRPRYDOLGDFLRQHVIOD
HQODFDUSHWDGHWUDEDMR
• $KRUDVHDEUHXQDUFKLYR$FWLRQ6FULSW\VHJXDUGDFRPR9DOLGDFLRQHVDVHQ
ODFDUSHWDPLV&ODVHV
• $VHJ~UHVHGHTXHVHHQFXHQWUDHQPRGRHVWULFWRGHOFRPSLODGRU
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
pequeño",email.length, email)
} else if (email.indexOf("@") == -1) {
bandera=false;
trace("No tiene arroba")
//
} else if (email.indexOf(".") == -1) {
bandera=false;
trace("No tiene punto")
//
} else if
(email.indexOf("@")>email.indexOf(".")) {
bandera=false;
trace("El punto se encuentra antes
que la arroba");
//
} else if
(email.lastIndexOf(".")>email.length-2) {
bandera=false;
trace("No tiene extension .com ");
}
return bandera;
}
}
}
&RPRKDEUiREVHUYDGRHVWDFODVHQRVHH[WLHQGHDODVFODVHV0RYLH&OLSQLD6SULWH
\D TXH QR OD OODPDUHPRV GHVGH HO'RFXPHQW &ODVV (O ~QLFR PpWRGR UHJUHVDUi XQ
YDORUGHYHUGDGHURHQFDVRGHTXHQRVHKD\DGHWHFWDGRQLQJ~QHUURU\IDOVRHQHO
FDVRGHKDEHUORHQFRQWUDGRSHURQRLQGLFDFXiOHUURUIXHHQFRQWUDGR
• $EUDHODUFKLYRYDOLGDFLRQHVIOD6HOHFFLRQHHOSULPHUIRWRJUDPDFODYHGHOD
FDSD\DEUDHOSDQHOGHDFFLRQHV
• $KtHVFULELUiHOVLJXLHQWHFyGLJR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHPSORSUiFWLFRXVRGHORVFLFORV
import misClases.*;
if(Validaciones.validaMail(mail)){
trace("El mail es correcto")
} else {
trace("El mail es incorrecto");
}
• (MHF~WHVHODSHOtFXOD'HEHUiWHQHUXQUHVXOWDGRVLPLODUDOGHOD)LJ
)LJXUD6DOLGDGHODYHULILFDFLyQGHOFRUUHRHOHFWUyQLFR
)LJXUD
• 0RGLILTXH HO PDLO TXtWHOH OD DUURED R HO SXQWR \ FRUUD QXHYDPHQWH OD
SHOtFXOD
• ¢&yPR OR PRGLILFDUtD HO PpWRGR SDUD TXH OH LQGLTXH SRU TXp HVWi PDO HO
FRUUHR"
(MHPSORSUiFWLFRXVRGHORVFLFORV
3DUDHMHPSOLILFDUHOXVRGHORVFLFORVYDPRVDKDFHUXQDFODVHGHDSR\RTXHJHQHUH
FODYHV GH DFFHVR HQ IRUPD DOHDWRULD (VWD FODVH QR UHTXLHUH VHU H[WHQGLGD D ODV
FODVHV0RYLH&OLSQL6SULWHSRUODVPLVPDVUD]RQHVTXHVHH[SOLFDURQHQHOHMHUFLFLR
DQWHULRU
• 6HDEUHXQDUFKLYR)ODVK$FWLRQ6FULSW\VHJXDUGDFRPRJHQHUDFODYHVIOD
HQODFDUSHWDGHWUDEDMR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$PDQHUDGHFRQFOXVLyQ
• $KRUDVHDEUHXQDUFKLYR$FWLRQ6FULSW\VHJXDUGDFRPR*HQHUD&ODYHVDV
HQODFDUSHWDPLV&ODVHV
• $VHJ~UHVHGHTXHVHHQFXHQWUDHQPRGRHVWULFWRGHOFRPSLODGRU
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
public class GeneraClave {
public function GeneraClave() {
}
//
public static function
generaClaveAcceso(lon:uint):String {
var str:String =
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567
890";
var cad:String = "";
var min:int = 0;
var max:int = str.length;
for (var i:int=0; i<10; i++) {
var randomNum:int =
Math.floor(Math.random()*(max-min));
cad += str.substr(randomNum, 1);
}
return cad;
}
}
}
(QHVWHHMHUFLFLRHVWDPRVXWLOL]DQGRGRVPpWRGRVGHODFODVH0DWKTXHWDPELpQHV
XQDFODVH HVWiWLFDHOPpWRGRUDQGRPJHQHUDQ~PHURVDOHDWRULRVHQWUH HO \ HO
\ HO PpWRGR IORRU TXH UHGRQGHD KDFLD DEDMR R WUXQFD FXDOTXLHU
Q~PHURFRQGHFLPDOHV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHPSORSUiFWLFRXVRGHORVFLFORV
• $EUDHODUFKLYRYDOLGDFLRQHVIOD6HOHFFLRQHHOSULPHUIRWRJUDPDFODYHGHOD
FDSD\DEUDHOSDQHOGHDFFLRQHV
• $KtHVFULELUiHOVLJXLHQWHFyGLJR
import misClases.*;
• (MHF~WHVHODSHOtFXOD'HEHUiWHQHUXQUHVXOWDGRVLPLODUDOGHOD)LJ
)LJXUD*HQHUDFLyQGHFODYHVDOHDWRULDV
)LJXUD
• 0RGLILTXHORVSDUiPHWURVSDUDJHQHUDUFODYHVGHRFDUDFWHUHV
• ¢&yPRPRGLILFDUtDHOPpWRGRSDUDTXHWDPELpQVHJHQHUDUDQODVFODYHVFRQ
FDUDFWHUHVHVSHFLDOHV"
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
6HQWHQFLDVFRQGLFLRQDOHV\FLFORV
$PDQHUDGHFRQFOXVLyQ
/DVHVWUXFWXUDVFRQGLFLRQDOHVGDQLQWHOLJHQFLDDOSURJUDPD\ORVFLFORVGDQSRWHQFLD
DQXHVWUDSURJUDPDFLyQHQHVWHFDStWXORVHHVWXGLDURQODVVHQWHQFLDVFRQGLFLRQDOHV
\ORVEXFOHVRFLFORV
6HQWHQFLDLI
6HQWHQFLDLIHOVHLI
%XFOHVRFLFORV
%XFOHVRFLFORV
6HQWHQFLDIRU
6HQWHQFLDIRULQ
6HQWHQFLDIRUHDFKLQ
6HQWHQFLDZKLOH
6HQWHQFLDGRZKLOH
)XQFLRQHV
)XQFLRQHV
)XQFLRQHVJOREDOHV
0pWRGRV
)XQFLRQHVSHUVRQDOL]DGDV
/ODPDGRRLQYRFDFLyQGHXQDIXQFLyQ
)XQFLRQHVGHXVXDULR
)XQFLyQWLSRVHQWHQFLD
)XQFLRQHVWLSRH[SUHVLRQHV
)XQFLRQHVTXHUHJUHVDQYDORUHV
)XQFLRQHVDQLGDGDV
3DVDUSDUiPHWURVSRUYDORURSRUUHIHUHQFLD
9DORUHVSUHGHWHUPLQDGRVHQODVIXQFLRQHV
(OREMHWRDUJXPHQWV
(OSDUiPHWUR«UHVW
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$PDQHUDGHFRQFOXVLyQ
&RQHVWRVHOHPHQWRVVHSXHGHQGHVDUUROODUSURJUDPDVVHQFLOORVFRPR
(MHPSORSUiFWLFRXVRGHFRQGLFLRQDOHV
(MHPSORSUiFWLFRXVRGHORVFLFORV
3DUD UHDOL]DU SURJUDPDV FODURV PiV DPLJDEOHV SDUD HO XVXDULR QHFHVLWDPRV
DSUHQGHUDPDQHMDUXQFRQFHSWRIXQGDPHQWDOORVHOHPHQWRVYLVXDOHV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
La lista de visualización 4
,QWURGXFFLyQ
(Q HVWH FDStWXOR UHYLVDUHPRV XQR GH ORV FDPELRV PiV VLJQLILFDWLYRV \ SRGHURVRV
GH $FWLRQ6FULSW OD OLVWD GH YLVXDOL]DFLyQ R 'LVSOD\ /LVW (VWH QXHYR PRGHOR GH
$FWLRQ6FULSWFRUUHGHVGHODYHUVLyQGHO)ODVK3OD\HU/DHVWUXFWXUDGHYLVXDOL]DFLyQ
HQ ODV YHUVLRQHV \ VH SXHGHQ FRPSDUDU FRQ XQ HQRUPH UDVFDFLHORV GH
SLVRVGHDOWR\SLVRVVXEWHUUiQHRVSRUFDGDOtQHDGHWLHPSR/D
PDQHUDGHPDQLSXODUHVWDSLODHUDSRUPHGLRGHODV´SURIXQGLGDGHVµR´GHSWKVµ
3DUDFUHDUXQFOLSGHSHOtFXODRXQWH[WRTXHHVWDEDUHODFLRQDGRFRQORVFOLSV
GHSHOtFXODVGHEtDPRVLQGLFDUOHODSURIXQGLGDG\FRQWiEDPRVFRQXQPpWRGRSDUD
HQFRQWUDU OD VLJXLHQWH SURIXQGLGDG GLVSRQLEOH JHW1H[W+LJKHVW'HSWK 6yOR SRGtD
KDELWDU XQ REMHWR FDGD XQR GH ORV SLVRV \ VL OOHJDED RWUR ´LQTXLOLQRµ HO DQWHULRU
GHVDSDUHFtD¢UHFXHUGD"
(O QXHYR PRGHOR GH REMHWRV HV PXFKR PiV IOH[LEOH SXHV HV PHQRV
´MHUiUTXLFRµ /R SRGUtDPRV FRPSDUDU FRQ XQ FRQGRPLQLR KRUL]RQWDO FRQ HGLILFLRV
PiVSHTXHxRV\PXFKRPiVPDQHMDEOHVFRPRYHUHPRVDFRQWLQXDFLyQ
8QSXQWRPX\LPSRUWDQWHHVTXHHOPRGHORDQWHULRUHVWDEDEDVDGRHQODFODVH
0RYLH&OLS 'H KHFKR HO HVFHQDULR VH SRGUtD FRQVLGHUDU FRPR XQ HQRUPH FOLS GH
SHOtFXOD (Q HO QXHYR PRGHOR HO 'LVSOD\ /LVW OD FODVH 0RYLH&OLS HV OD PiV EDMD \
SHVDGD 6H FUHDURQ QXHYDV FODVHV PXFKR PiV HVSHFLDOL]DGDV \ OLJHUDV 7RGDV ODV
FDUDFWHUtVWLFDV DQWHULRUHV KDFHQ D OD YHUVLyQ GH $FWLRQ6FULSW DO PHQRV YHFHV
PiVUiSLGD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
,QWURGXFFLyQ
7,3'(&(57,),&$&,Ð
7,3'(&(57,),&$&,Ð1
/DOLVWDGH YLVXDOL]DFLyQR 'LVSOD\/LVWHV XQFRQFHSWRIXQGDPHQWDOHQHOH[DPHQGH
FHUWLILFDFLyQ$&(&RQVWDQWHPHQWHOHSUHJXQWDUiQFRQFHSWRVUHODFLRQDGRVSRUHMHPSOR
FyPRDxDGLURPRYHUORVREMHWRVYLVXDOHV
8QDFDUDFWHUtVWLFDGHODOLVWDGHYLVXDOL]DFLyQHVTXHVLXQREMHWRQRVHYHHQ
HOHVFHQDULRKDVWDTXHOR´LQVFULELPRVµDODOLVWDRHQRWUDVSDODEUDVORKDFHPRVVX
´KLMLWRµ'HKHFKRGHEHPRVDSUHQGHUDOJXQRVQXHYRVWpUPLQRVFRPR´UHSDUHQWDUµR
FDPELDU GH SDULHQWH \ RWURV LJXDO GH GLYHUWLGRV TXH LUHPRV DSUHQGLHQGR D OR ODUJR
GHOFDStWXOR7RGDSHOtFXODVZIWLHQHXQDOLVWDGHYLVXDOL]DFLyQFRQWUHVHOHPHQWRV
8Q HVFHQDULR
HVFHQDULR (V OD SDUWH VXSHULRU GH OD MHUDUTXtD GH OD OLVWD GH YLVXDOL]DFLyQ
&DGD XQR GH ORV HOHPHQWRV WHQGUi XQD QXHYD SURSLHGDG OODPDGD VWDJH FRQ
PLQ~VFXODQRWLHQHQDGDTXHYHUFRQODFODVH6WDJH
&RQWHQHGRUHV GH REMHWRV
REMHWRV 3HUPLWH UHXQLU D RWURV REMHWRV GH YLVXDOL]DFLyQ 'H
KHFKRHO HVFHQDULRVH SXGLHUDFRQVLGHUDUFRPRHOFRQWHQHGRU SULQFLSDO &XDQGR HO
FRQWHQHGRUGHVDSDUHFHVXVKLMLWRVWDPELpQGHVDSDUHFHQ
2EMHWRV GH YLVXDOL]DFLyQ
YLVXDOL]DFLyQ 6RQ ORV REMHWRV TXH ILQDOPHQWH VH GLEXMDQ HQ HO
HVFHQDULR $OJXQDV FODVHV SHUPLWHQ FRQWHQHU RWURV REMHWRV GH YLVXDOL]DFLyQ FRPR
ORVREMHWRVGHODVFODVHV0RYLH&OLS6SULWHR6WDJH2WURVREMHWRVVRQVyORYLVXDOHV
FRPRODFODVH7H[W)LHOG
)LJXUD-HUDUTXtDGHOLVWDGHYLVXDOL]DFLyQ
)LJXUD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
&RPRSXHGHYHUHQOD)LJXQDOLVWDGHYLVXDOL]DFLyQVHDVHPHMDDXQiUERO
JHQHDOyJLFR TXH YD D VHU PXFKR PiV VHQFLOOR GH PDQLSXODU TXH OD DQWLJXD 2WUR
SXQWR PX\ LPSRUWDQWH HV TXH OD EDVH GH OD MHUDUTXtD \D QR HV OD FODVH 0RYLH&OLS
VLQRODQXHYD'LVSOD\2EMHWF/DPD\RUtDGHORVQXHYRVREMHWRVYLVXDOHVGHSHQGHQGH
HVWDFODVH
)LJXUD-HUDUTXtDGHFODVHVYLVXDOHV
)LJXUD
&RPRSXHGHYHUODFODVH0RYLH&OLSTXHGyKDVWDODSDUWHEDMDGHODMHUDUTXtD
SRU OR TXH SDUD DSURYHFKDU OD YHORFLGDG GH $FWLRQ6FULSW GHEHPRV XWLOL]DU ORV
REMHWRV PiV OLJHURV TXH QXHVWUD YLHMD \ SHVDGD FODVH 0RYLH&OLS $ FRQWLQXDFLyQ OH
PRVWUDPRVXQDOLVWDGHODVSULQFLSDOHVFODVHVYLVXDOHV
7DEOD&ODVHVGHYLVXDOL]DFLyQFRP~QPHQWHXWLOL]DGDV
7DEOD
Clase de Descripción
visualización
'LVSOD\2EMHFW /D FODVH EDVH GH WRGDV ODV FODVHV GH OLVWD GH
YLVXDOL]DFLyQ 'LVSOD\2EMHFW GHILQH ODV SURSLHGDGHV \
PpWRGRV FRPXQHV D WRGDV ODV FODVHV GH YLVXDOL]DFLyQ
/D FODVH 'LVSOD\2EMHFW QR HVWi SHQVDGD SDUD
LQVWDQFLDUVHGLUHFWDPHQWH
%LWPDS /DFODVH%LWPDSSHUPLWHODFUHDFLyQ\PDQLSXODFLyQGH
LPiJHQHVSRUPHGLRGHORVPpWRGRV%LWPDS'DWD
6KDSH /D FODVH 6KDSH FRQWLHQH OD SURSLHGDG JUiILFD TXH
SHUPLWH GLEXMDU XWLOL]DQGR OtQHDV UHOOHQRV FtUFXORV
UHFWiQJXORVHWFpWHUD
&RQWLQ~D
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$xDGLUXQHOHPHQWRDODOLVWDGHYLVXDOL]DFLyQ
7DEOD&RQWLQXDFLyQ
7DEOD
Clase de Descripción
visualización
6SULWH 6SULWH HV VLPLODU D VRPEUDV SHUR SXHGH FRQWHQHU
REMHWRVGHYLVXDOL]DFLyQKLMRVWDOHVFRPRWH[WR\YLGHR
6HSXHGHSHQVDUHQXQD6SULWHFRPRXQD0RYLH&OLSVLQ
XQDOtQHDGHWLHPSR
0RYLH&OLS 0RYLH&OLSHVODFODVHIDPLOLDUFRQXQDOtQHDGHWLHPSR\
PpWRGRV SDUD FRQWURODU OD FDEH]D OHFWRUD 3XHVWR TXH
0RYLH&OLSHVXQDVXEFODVHGH6SULWHSXHGHGLEXMDUHQ
VX LQWHULRU \ SXHGH FRQWHQHU WDPELpQ REMHWRV GH
YLVXDOL]DFLyQKLMRV
9LGHR /DFODVH9LGHRVHHQFXHQWUDHQHOSDTXHWHIODVKPHGLD
SHUR WDPELpQ HV XQD VXEFODVH GH 'LVSOD\ 2EMHFW /DV
LQVWDQFLDVGHYLGHRVHXWLOL]DQSDUDUHSURGXFLUYLGHR
7H[W)LHOG /D FODVH 7H[W)LHOG TXH VH HQFXHQWUD HQ HO SDTXHWH
IODVK WH[W SHUPLWH OD FUHDFLyQ GH FDPSRV GH WH[WR
GLQiPLFRV\GHHQWUDGDGHWH[WR
/RDGHU /DV LQVWDQFLDV /RDGHU VH XWLOL]DQ SDUD FDUJDU DFWLYRV
YLVXDOHV H[WHUQRV FRPR RWURV DUFKLYRV GH LPDJHQ R
SHOtFXODVVZI
1RWD
2WUD GH ODV SDODEUDV ´GLYHUWLGDVµ HV LQVWDQFLDUVH 3URYLHQH GH OD SDODEUD H LQJOpV
LQVWDQFHLQVWDQFLDHQHVSDxROGHEHUtDGHFLUVH´FUHDUODLQVWDQFLDµSHURFRPRHVXQ
WpUPLQRFRP~QHQWUHORVIODVKHURVORXWLOL]DPRVGHYH]HQFXDQGR
%XHQRGHVSXpVGHODWHRUtDXVWHGVHSUHJXQWDUi¢FyPRFUHRXQREMHWR"
$xDGLUXQHOHPHQWRDODOLVWDGHYLVXDOL]DFLyQ
8QD GH ODV WDUHDV TXH D YHFHV HV PiV IUXVWUDQWH FXDQGR HPSH]DPRV D DSUHQGHU
$6HVTXHFUHDPRVREMHWRVFRQ$FWLRQ6FULSW\pVWHQRDSDUHFHHQHOHVFHQDULR
&ODUR VL FUHDPRV REMHWRV FRQ HO ,'( QR WHQHPRV HVWH SUREOHPD 3RU HMHPSOR
VXSRQJDPRV TXH GHVHD FUHDU XQ WH[WR HQ WLHPSR GH HMHFXFLyQ FRQ HO VLJXLHQWH
FyGLJR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
/DOtQHDDQWHULRUGHFyGLJRFUHDXQREMHWRGHYLVXDOL]DFLyQ7H[W)LHOGHQHO$90SHUR
HOREMHWRQRVHGLEXMDWRGDYtDHQODSDQWDOODSRUTXHHOREMHWRQRH[LVWHHQHOPRWRU
GHUHQGHUHVGHFLUHQODOLVWDGHYLVXDOL]DFLyQ3DUDFUHDUHOREMHWRHQHOPRWRUGH
UHQGHUHOREMHWRVHWLHQHTXHDxDGLUDODMHUDUTXtDGHOLVWDGHYLVXDOL]DFLyQ
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
8Q WLSR GH SUHJXQWDV IUHFXHQWHV HQ HO H[DPHQ GH FHUWLILFDFLyQ $&( HV PRVWUDU XQ
SHGD]RGHFyGLJR\QRVSUHJXQWDQTXHHQFRQWUHPRVHOHUURU$OPHQRVKD\GRVGHHVWDV
SUHJXQWDVUHODFLRQDGDVFRQORV7H[W)LHOGV
3DUDTXHHOREMHWR´DSDUH]FDµHVQHFHVDULRDxDGLUORDODOLVWDGHYLVXDOL]DFLyQ
FRQ ORV PpWRGRV DGG&KLOG \ DGG&KLOG$W D XQ FRQWHQHGRU HO FXDO SXHGH VHU HO
PLVPR HVFHQDULR 3RGUtDPRV GHFLU TXH HO REMHWR FRQWHQHGRU ´DGRSWDµ DO REMHWR
YLVXDOKDFLpQGRORVXKLMR
+DJDPRVHOVLJXLHQWHHMHUFLFLR
(MHUFLFLR
• 6H DEUH XQ DUFKLYR )ODVK $6 QXHYR \ VH JXDUGD FRPR OLVWDIOD HQ HO
GLUHFWRULRGHWUDEDMR
• $KRUD VH DEUH XQ DUFKLYR $FWLRQ6FULSW QXHYR \ VH JXDUGD HQ OD FDUSHWD
PLV&ODVHVFRQHOQRPEUH/LVWDDV
• 6H UHODFLRQDQ DPERV DUFKLYRV HQ HO FDPSR 'RFXPHQW FODVV GHO ,QVSHFWRU
GH SURSLHGDGHV \ VH YHULILFD TXH HO FRPSLODGRU VH HQFXHQWUH HQ PRGR
HVWULFWR
• (QHODUFKLYRGHFODVHVVHHVFULEHHOVLJXLHQWHFyGLJR
package misClases
{
import flash.display.DisplayObjectContainer;
import flash.display.Sprite;
import flash.text.TextField;
public function Lista()
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$xDGLUXQHOHPHQWRDODOLVWDGHYLVXDOL]DFLyQ
{
// Crear un objeto de visualización en el motor
// de actionscript
var hello:TextField = new TextField();
hello.text = "Hola Mundo";
}
}
}
• (MHF~WHVHODSHOtFXOD1LHQHOHVFHQDULRQLHQODSDQWDOODGHVDOLGDGHEHUi
DSDUHFHUQLQJ~QOHWUHUR
• $KRUD VH FDSWXUD HQ OD IXQFLyQ FRQVWUXFWRUD GHEDMR GH OD DVLJQDFLyQ GHO
WH[WRHOVLJXLHQWHFyGLJR
• (MHF~WHVHQXHYDPHQWHODSHOtFXOD'HEHUiDSDUHFHUHQODHVTXLQDVXSHULRU
L]TXLHUGD >ODV FRRUGHQDGDV @ HO OHWUHUR ´+ROD 0XQGRµ WDO FRPR VH
DSUHFLDHQOD)LJ
)LJXUD/LVWDGHYLVXDOL]DFLyQFRQFDPSRGHWH[WR
)LJXUD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
$TXtODFODVH/LVWDHVODFODVHSULQFLSDOSDUDODSHOtFXODVZI\DPSOtDODFODVH
6SULWH'HELGRDODMHUDUTXtDGHFODVHGHVFULWDHQOD)LJ/LVWDHVXQDVXEFODVH
LQGLUHFWD GH 'LVSOD\2EMHFW&RQWDLQHU \ HV FDSD] GH WHQHU P~OWLSOHV LQVWDQFLDV
'LVSOD\2EMHFW6SULWH0RYLH&OLS7H[)LHOGHWFFRPRKLMRV
(VWR SHUPLWH HO XVR GHO PpWRGR DGG&KLOG SDUD DxDGLU XQ REMHWR GH
YLVXDOL]DFLyQFRPRXQKLMRHQHOFRQWHQHGRU
&XDQGRFUHDPRVHOREMHWR7H[)LHOGQRVHYLVXDOL]yKDVWDTXHORDxDGLPRVDOD
OLVWDGHYLVXDOL]DFLyQFRQHOPpWRGRDGG&KLOG
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
/DVVHQWHQFLDVDGG&KLOG\UHPRYH&KLOGVRQODVSUHIHULGDVHQHOH[DPHQGHFHUWLILFD
FLyQDVtTXHSRQJDPXFKDDWHQFLyQDWRGRVORVGHWDOOHV
(MHUFLFLR
• 6HDEUHQORVDUFKLYRV)ODVK$6OLVWDIOD\/LVWDDV
• 6HERUUDHOFRQWHQLGRGHODIXQFLyQFRQVWUXFWRUD\VHVXVWLWX\HSRUHO
VLJXLHQWH
Como puede observar, estamos agregando un objeto visual (una caja de texto) a un
contenedor (un Sprite). Si ejecuta la película, no observará el texto hasta el
siguiente paso.
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
/LVWDGHYLVXDOL]DFLyQGHQWURGHXQFRQWHQHGRU
/LVWDGHYLVXDOL]DFLyQGHQWURGHXQFRQWHQHGRU
&RPR VH KDEtD FRPHQWDGR ORV FRQWHQHGRUHV SXHGHQ DOEHUJDU D YDULRV REMHWRV
YLVXDOHV \ D RWURV FRQWHQHGRUHV ORV FXDOHV VRQ FRQVLGHUDGRV VXV KLMRV (O
FRQWHQHGRU ´SDGUHµ PDQWLHQH XQD OLVWD GH KLMRV LQWHUQDPHQWH (O RUGHQ GH HVWRV
KLMRV HQ OD OLVWD GHWHUPLQD HO RUGHQ HQ OD SDQWDOOD &DGD KLMR WLHQH XQD SRVLFLyQ
FRQVHFXWLYD HQ OD OLVWD VHJ~Q VH HVSHFLILFD SRU HO YDORU tQGLFH GH XQ HQWHUR FRPR
XQDWDEOD
,QWHUQDPHQWHGHQWURGHOFRQWHQHGRUVHWLHQHXQDSLODGHSURIXQGLGDGHVGRQGH
ODV SURIXQGLGDGHV PD\RUHV VH YHQ HQFLPD GH ODV LQIHULRUHV SRU HMHPSOR VH YH
´HQFLPDµGHHQFLPDGHHWFSHURFRQODVDOYHGDGGHTXHQRKD\KXHFRVHQ
ODSLODFRPRHQHOPRGHORGHYLVXDOL]DFLyQGH$FWLRQ6FULSW)LJ
)LJXUD0RGHORGHYLVXDOL]DFLyQGH$FWLRQ6FULSW
)LJXUD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
6L DxDGLPRV XQ QXHYR REMHWR GH YLVXDOL]DFLyQ DO REMHWR FRQWHQHGRU pVWH
RFXSDUiHO~OWLPROXJDUHQODSLODVHGLEXMDYLVXDOPHQWHVREUHORVRWURVKLMRVHQHO
FRQWHQHGRU \D TXH DGG&KLOG VLW~D HO KLMR GHODQWH GH OD OLVWD GH KLMRV RWRUJiQGROH
HO VLJXLHQWH tQGLFH GH SRVLFLyQ PiV DOWR 3DUD DxDGLU XQ KLMR \ HVSHFLILFDU D GyQGH
SHUWHQHFHHQ HORUGHQGHDSLODPLHQWR YLVXDODOPLVPRWLHPSRVHXWLOL]DHOPpWRGR
DGG&KLOG$W)LJ
)LJXUD1XHYRREMHWRGHYLVXDOL]DFLyQDOREMHWRFRQWHQHGRU
)LJXUD
(OPpWRGRDGG&KLOG$WDGRSWDGRVSDUiPHWURVHOREMHWRGHYLVXDOL]DFLyQKLMRD
DxDGLU \ OD SRVLFLyQ HQ HO RUGHQ GH DSLODPLHQWR TXH GHEHUtD XWLOL]DU HO KLMR
(VSHFLILFDUXQDSRVLFLyQGHKDFHTXHHOKLMRVHDxDGDDOILQDOGHODOLVWD\KDFHTXH
HOKLMRDSDUH]FDYLVXDOPHQWHGHEDMRGHORVRWURVREMHWRV
/R PDUDYLOORVR GH HVWD IRUPD GH LQVHUWDU REMHWRV HV TXH SXHGH KDFHUOR HQ
FXDOTXLHU OXJDU TXH GHVHH \ VXV ´KHUPDQLWRVµ VH UHDFRPRGDUiQ SDUD QR GHMDU
KXHFRV DGHPiV GH TXH QLQJXQR HV GHVWUXLGR FRPR HQ OD YHUVLyQ $KRUD TXH VL
GDPRV XQ UDQJR PD\RU TXH ORV HOHPHQWRV GH OD SLOD VH JHQHUD XQ 5DQJH(UURU \
KDFHTXHHOKLMRQRVHDxDGD
1RWD
6L OD HVWUXFWXUD HQ $FWLRQ6FULSW GH REMHWRV VH DVHPHMDED D XQ HQRUPH HGLILFLR HO
QXHYR PRGHOR GH REMHWRV YLVXDOHV GLVSOD\ OLVW VH SRGUtD DVHPHMDU D XQ FRQGRPLQLR
KRUL]RQWDOFRQSHTXHxDVFRQVWUXFFLRQHVTXHVRQPiVIiFLOHVGHPDQLSXODU
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
/LVWDGHYLVXDOL]DFLyQGHQWURGHXQFRQWHQHGRU
(OVLJXLHQWHHMHUFLFLRFUHDWUHVFtUFXORVGHFRORUHVGLIHUHQWHV/RVFtUFXORVURMR\D]XOVH
DxDGHQFRQHOPpWRGRDGG&KLOGKDFLHQGRTXHHOFtUFXORD]XODSDUH]FDHQFLPDSRUTXH
VHDxDGLyGHVSXpVGHOFtUFXORURMR'HVSXpVGHGRVOODPDGDVDDGG&KLOGHOFtUFXORURMR
HVWiHQODSRVLFLyQ\HOFtUFXORD]XOHQODSRVLFLyQ(OFtUFXORYHUGHVHLQVHUWDOXHJR
HQWUHORVGRVFRQHOPpWRGRDGG&KLOG$WHVSHFLILFDQGRODSRVLFLyQFRPRHOOXJDUHQOD
OLVWD(OFtUFXORD]XOSUHYLDPHQWHHQODSRVLFLyQVHPXHYHDODSRVLFLyQ\HOFtUFXOR
YHUGHVHLQVHUWDHQODSRVLFLyQHQVXOXJDU
(OUHVXOWDGRILQDOHVTXHHOFtUFXORURMRHQODSRVLFLyQVHGLEXMDSRUGHEDMRGHO
FtUFXORYHUGHHQODSRVLFLyQ\HOFtUFXORYHUGHVHGLEXMDSRUGHEDMRGHOFtUFXORD]XOHQ
ODSRVLFLyQ
(MHUFLFLR
• 6H DEUH XQ DUFKLYR )ODVK $6 QXHYR \ VH JXDUGD FRPR FLUFXORIOD HQ HO
GLUHFWRULRGHWUDEDMR
• $KRUD VH DEUH XQ DUFKLYR $FWLRQ6FULSW QXHYR \ VH JXDUGD HQ OD FDUSHWD
PLV&ODVHVFRQHOQRPEUH&LUFXORDV
• 6H UHODFLRQDQ DPERV DUFKLYRV HQ HO FDPSR 'RFXPHQW FODVV GHO ,QVSHFWRU
GH SURSLHGDGHV \ VH YHULILFD TXH HO FRPSLODGRU VH HQFXHQWUH HQ PRGR
HVWULFWR
• (QHODUFKLYRGHFODVHVVHHVFULEHHOVLJXLHQWHFyGLJR
package misClases{
import flash.display.*;
public class Circulo extends Sprite {
public function Circulo( ) {
// Crear tres círculos de
// colores diferentes y
// cambiar sus coordenadas para
// que estén escalonados y
//no estén todos situados en (0,0).
var rojo:Shape = crearCirculo( 0xFF0000, 10
);
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
rojo.x = 10;
rojo.y = 20;
var verde:Shape = crearCirculo ( 0x00FF00,
10 );
verde.x = 15;
verde.y = 25;
var azul:Shape = crearCirculo ( 0x0000FF,
10 );
azul.x = 20;
azul.y = 20;
// Primero añada el círculo rojo,
// luego añada el círculo azul
// (de modo que se dibuje sobre el rojo)
addChild( rojo );
addChild( azul );
// Sitúe el círculo verde entre
// los círculos rojo y azul
addChildAt(verde, 1 );
}
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&yPRUHSDUHQWDUUHSDUHQWREMHWRVHQODOLVWDGHYLVXDOL]DFLyQ
shape.graphics.endFill( );
return shape;
}
}
}
1RWD
&XDQGRVHUHSDUHQWDXQQXHYDSDODEUDPiVDODFROHFFLyQTXHSURYLHQHGHOWpUPLQR
UHSDUHQWRFDPELDUGHSDULHQWHHVGHFLUGHFRQWHQHGRUXQREMHWRGHYLVXDOL]DFLyQQR
HVQHFHVDULRHOLPLQDUORSULPHUR\DTXHHOPpWRGRDGG&KLOGVHRFXSDGHHOOR
(O VLJXLHQWH HMHPSOR PXHVWUD OD UHSDUHQWDUL]DFLyQ HQ DFFLyQ 6H FUHD XQ
FRQWHQHGRU SDUD PRVWUDU QXHVWURV DPLJRV ORV FtUFXORV URMR YHUGH \ D]XO TXH VH
DxDGHQ FRPR KLMRV \ HO FRQWHQHGRU VH DxDGH D OD OLVWD GH YLVXDOL]DFLyQ 2WUR
FRQWHQHGRUVHFUHD\DxDGHDODOLVWDGHYLVXDOL]DFLyQWDPELpQ\OXHJRHOFtUFXORURMR
VHPXHYHGHVGHHOSULPHUFRQWHQHGRUDOVHJXQGR
3XHVWR TXH HO VHJXQGR FRQWHQHGRU HVWi YLVXDOPHQWH VREUH HO SULPHU
FRQWHQHGRU HQ OD OLVWD GH YLVXDOL]DFLyQ WRGRV ORV KLMRV HQ HO VHJXQGR FRQWHQHGRU
DSDUHFHQVREUHORVKLMRVHQHOSULPHUFRQWHQHGRU(OFtUFXORURMRVHUHSDUHQWDGHVGH
HO SULPHU FRQWHQHGRU DO VHJXQGR VLPSOHPHQWH DO LQYRFDU HO PpWRGR DGG&KLOG
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
(MHUFLFLR
• 6HDEUHQORVDUFKLYRVFLUFXORIOD\&LUFXORDV
• 9HULItTXHVHTXHHOFRPSLODGRUVHHQFXHQWUHHQPRGRHVWULFWR
• 6HERUUDRFRPHQWDODVOtQHDVTXHDJUHJDQHOHPHQWRVYLVXDOHVDODOLVWD\
VHHVFULEHQORVVLJXLHQWHVFRPDQGRV
• (MHFXWHODSHOtFXOD\REVHUYDUiTXHHORUGHQGHORVREMHWRVGHEHUiVHUURMR
YHUGH\KDVWDDUULEDHOD]XO'HVSXpVGHHVWDVOtQHDVSHURDQWHVGHODOODYH
GH FLHUUH GH OD IXQFLyQ FRQVWUXFWRUD VH HVFULEH HO VLJXLHQWH FyGLJR SDUD
PRYHUHOREMHWRGHOFRQWHQHGRUDOFRQWHQHGRU
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(OLPLQDUXQREMHWRGHODOLVWDGHYLVXDOL]DFLyQ
//azul
contenedor2.addChild( rojo );
• &RPR HO FRQWHQHGRU HVWi SRU HQFLPD GHO FRQWHQHGRU HQ OD OLVWD GH
GHVSOHJDGRHOFtUFXORURMRVHPRYHUiSRUDUULEDGHORVRWURVFtUFXORV
$KRUDTXH\DVDEHPRVFyPRDxDGLUREMHWRVGHEHPRVDSUHQGHUDHOLPLQDUORV
(OLPLQDUXQREMHWRGHODOLVWDGHYLVXDOL]DFLyQ
3DUDHOLPLQDUXQREMHWRGHODOLVWDGHYLVXDOL]DFLyQQHFHVLWDPRVXWLOL]DUORVPpWRGRV
UHPRYH&KLOGRUHPRYH&KLOG$W
(OPpWRGRUHPRYH&KLOGDGRSWDXQVRORSDUiPHWURTXHHVXQDUHIHUHQFLDDO
REMHWR GH YLVXDOL]DFLyQ TXH VH GHEHUtD HOLPLQDU GHO FRQWHQHGRU 6L VH VXSRQH TXH
XQ REMHWR VH WLHQH TXH HOLPLQDU \ QR HV XQ KLMR GHO FRQWHQHGRU VH HQYtD XQ
$UJXPHQW(UURU
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
(VFDVLVHJXURTXHHQHOH[DPHQGHFHUWLILFDFLyQ$&(OHSUHJXQWDUiQ
¢&yPRVHHOLPLQDXQHOHPHQWRYLVXDO"
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$6QXHYR\VHJXDUGDFRPRUHPRYHUIODHQHO
GLUHFWRULRGHWUDEDMR
• 6HDEUHXQDUFKLYR$FWLRQ6FULSWQXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHV
FRQHOQRPEUH5HPRYHUDV
• $PERVDUFKLYRVVHUHODFLRQDQHQHOFDPSR'RFXPHQWFODVVGHO,QVSHFWRUGH
SURSLHGDGHV\VHYHULILFDTXHHOFRPSLODGRUVHHQFXHQWUHHQPRGRHVWULFWR
(QHODUFKLYRGHFODVHVVHHVFULEHHOVLJXLHQWHFyGLJR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
package misClases{
import flash.display.Sprite;
import flash.text.TextField;
import flash.events.MouseEvent;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&yPRERUUDUXQHOHPHQWRVLQODUHIHUHQFLD
(O HMHPSOR GH FyGLJR DQWHULRU FUHD XQD YDULDEOH ORFDO BFDGHQD TXH DOPDFHQD XQD
UHIHUHQFLDDO7H[W)LHOGGHQWURGHODSURSLDFODVHeVWHHVXQSDVRQHFHVDULRSRUTXH
DO PpWRGR UHPRYH&KLOG VH OH WLHQH TXH SDVDU XQD UHIHUHQFLD GHO REMHWR GH
YLVXDOL]DFLyQDHOLPLQDUSRUORTXHVHXWLOL]DBFDGHQDSDUDDOPDFHQDUODUHIHUHQFLD
SDUDPiVDGHODQWH
6L BFDGHQD QR HVWXYLHUD GLVSRQLEOH VH QHFHVLWDUtD WUDEDMR DGLFLRQDO SDUD
FRQVHJXLUXQDUHIHUHQFLDSDUDTXHHO7H[W)LHOGORHOLPLQHRVHSRGUtDXWLOL]DUHQVX
OXJDUHOPpWRGRUHPRYH&KLOG$W
&yPRERUUDUXQHOHPHQWRVLQODUHIHUHQFLD
(Q FDVR GH TXH QR VH WHQJD XQD UHIHUHQFLD SDUD HO REMHWR GH YLVXDOL]DFLyQ TXH VH
GHVHD HOLPLQDU SXHGH XWLOL]DUVH HO PpWRGR UHPRYH&KLOG$W 6LPLODU DO PpWRGR
DGG&KLOG$W HO PpWRGR UHPRYH&KLOG$W DGRSWD XQ VROR SDUiPHWUR HO tQGLFH HQ OD
OLVWD GHO FRQWHQHGRU GH ORV REMHWRV GH YLVXDOL]DFLyQ KLMR D HOLPLQDU /RV YDORUHV
SRVLEOHVSDUDHOtQGLFHRVFLODQGHVGHDQXP&KLOGUHQ6LVHHVSHFLILFDXQtQGLFH
QR YiOLGR FRPR XQ YDORU QHJDWLYR R XQ YDORU PD\RU TXH HO Q~PHUR GH KLMRV HQ HO
FRQWHQHGRUVHODQ]DXQ5DQJH(UURU\QRVHHOLPLQDQLQJ~QKLMR
(MHUFLFLR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
//Añadir el TextField hello a la
//lista de visualización
addChild(cadena);
stage.addEventListener(MouseEvent.CLICK,removerTexto);
}
//Eliminar la etiqueta de la lista
//de visualización del contenedor
public function removerTexto(event:MouseEvent
):void {
//Solamente eliminar la etiqueta si existe
if (numChildren >0 ) {
removeChildAt(0 );
}
}
}
}
(O FDPELR PiV JUDQGH DO FDPELDU D UHPRYH&KLOG$W HV TXH \D QR VH QHFHVLWD
GHFODUDU FDGHQD SDUD DOPDFHQDU XQD UHIHUHQFLD DO 7H[W)LHOG SRU OR TXH VH SXHGH
HOLPLQDU PiV DGHODQWH (Q VX OXJDU FXDQGR ODEHO VH DxDGH DO FRQWHQHGRU
5HPRYH&KLOG([DPSOH VH DxDGH HQ OD SRVLFLyQ 3DUD HOLPLQDU HO REMHWR GH
YLVXDOL]DFLyQGHHWLTXHWDVLPSOHPHQWHVHHOLPLQDHOKLMRHQODSRVLFLyQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&yPRHOLPLQDUDWRGRVORVKLMRVGHXQFRQWHQHGRU
1RWD
(OLPLQDU XQ REMHWR GH YLVXDOL]DFLyQ KLMR QR OR HOLPLQD SRU FRPSOHWR (Q VX OXJDU
VLPSOHPHQWHORHOLPLQDGHOFRQWHQHGRUHLPSLGHTXHVHGLEXMHHOREMHWR3DUDHOLPLQDU
SRU FRPSOHWR HO REMHWR GH YLVXDOL]DFLyQ HV QHFHVDULR TXH VH HVWDEOH]FDQ WRGDV ODV
UHIHUHQFLDVDOREMHWRHQQXOO
&yPRHOLPLQDUDWRGRVORVKLMRVGHXQFRQWHQHGRU
6LVHGHVHDHOLPLQDUWRGRVORVKLMRVGHXQFRQWHQHGRUVHFRPELQDUHPRYH&KLOG$W
FRQ XQ EXFOH IRU 7RGR FRQWHQHGRU WLHQH XQD SURSLHGDG QXP&KLOGUHQ TXH LQGLFD
FXiQWRV REMHWRV GH YLVXDOL]DFLyQ VH HQFXHQWUDQ HQ OD OLVWD GH YLVXDOL]DFLyQ GHO
FRQWHQHGRU
$O SDVDU HQ EXFOH XQD YH] SRU FDGD KLMR VH SXHGH HOLPLQDU FDGD KLMR
EDViQGRVH HQ VX SRVLFLyQ HQ OD OLVWD KLMR GHO FRQWHQHGRU (VWR HV XQ SURFHVR DOJR
FRPSOLFDGRGHELGRDFyPRIXQFLRQDHOYDORUGHODSRVLFLyQ
6LHPSUH TXH VH HOLPLQD XQ KLMR GH XQD SRVLFLyQ WRGRV ORV RWURV KLMRV FRQ
SRVLFLRQHV PD\RUHV GLVPLQX\HQ HQ XQR VXV YDORUHV GH SRVLFLyQ SDUD HOLPLQDU HO
KXHFR3RUHMHPSORSLpQVHVHHQXQFRQWHQHGRUFRQWUHVKLMRVHQODVSRVLFLRQHV
\ &XDQGR HO KLMR HQ OD SRVLFLyQ VH HOLPLQD HO KLMR HQ OD SRVLFLyQ SDVD D OD
SRVLFLyQ\HOKLMRHQODSRVLFLyQFDPELDDODSRVLFLyQ3XHVWRTXHORVYDORUHV
GHSRVLFLyQFDPELDQFDGDYH]TXHVHHOLPLQDXQKLMRH[LVWHQGRVIRUPDVHQODVTXH
VHSXHGHJHVWLRQDUODHOLPLQDFLyQGHWRGRVORVKLMRV
6LHPSUHHOLPtQHVHHOKLMRHQODSRVLFLyQ
(OLPtQHVHHOKLMRKDFLDDWUiVHPSH]DQGRGHVGHHOILQDO
(QHOSULPHUFDVRSXHVWRTXHVLHPSUHKDEUiXQKLMRHQODSRVLFLyQVLHPSUH\
FXDQGRHOREMHWRGHYLVXDOL]DFLyQWHQJDKLMRVVHSXHGHFRQWLQXDUHOLPLQDQGRORTXH
VH HQFXHQWUH HQ OD SRVLFLyQ SRUTXH HV XQ QXHYR REMHWR KLMR GH YLVXDOL]DFLyQ
GXUDQWHFDGDLWHUDFLyQGHEXFOH
(QHOVHJXQGRFDVRHOLPLQDUHO~OWLPRKLMRGHOFRQWHQHGRUQRKDFHTXHORVKLMRVVH
DMXVWHQDVXVSRVLFLRQHV6RODPHQWHORVKLMRVFRQXQYDORUGHSRVLFLyQPD\RUTXHOR
TXHVHHOLPLQDGLVPLQX\HQHQXQR(O~OWLPRKLMRWLHQHHOYDORUGHSRVLFLyQPiVDOWR
GHQWUR GHO FRQWHQHGRU SRU OR WDQWR QLQJ~Q RWUR KLMR QHFHVLWD TXH VH OH DMXVWH VX
SRVLFLyQ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
(MHUFLFLR
• ÉEUDQVHORVDUFKLYRVUHPRYHUIOD\5HPRYHUDV
• 6HJUDED5HPRYHUDVFRPR5HPRYHUDV
• 6HUHODFLRQDHODUFKLYRUHPRYHUIODFRQ5HPRYHUDVHQHOFDPSR
'RFXPHQWFODVV
• 6XVWLW~\DVHHOFRQWHQLGRGHODUFKLYRGHFODVHVSRUHOVLJXLHQWH
package misClases{
import flash.display.*;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&yPRPRYHUDORVKLMRVGHSURIXQGLGDGVHW&KLOG,QGH[
• (MHF~WHVHHOSURJUDPD6HREVHUYDUiTXHWRGRVORVKLMRVIXHURQHOLPLQDGRV
&yPRPRYHUDORVKLMRVGHSURIXQGLGDG
VHW&KLOG,QGH[
$QWHULRUPHQWHVHKDYLVWRFyPRHOPRGHORGHOLVWDGHYLVXDOL]DFLyQWUDWDHORUGHQGH
DSLODPLHQWR YLVXDO SURIXQGLGDG (VHQFLDOPHQWH WRGD LQVWDQFLD 'LVSOD\
2EMHFW&RQWDLQHU WLHQH XQD OLVWD GH KLMRV \ HO RUGHQ GH ORV KLMRV HQ HVWD OLVWD
GHWHUPLQDHORUGHQHQHOTXHORVREMHWRVGHYLVXDOL]DFLyQGHOKLMRVHGLEXMDQGHQWUR
GHO FRQWHQHGRU /RV KLMRV WLHQHQ DVLJQDGR XQ tQGLFH GH SRVLFLyQ GHVGH D
QXP&KLOGUHQ FRPR XQD WDEOD (O KLMR HQ OD SRVLFLyQ VH GLEXMD HQ OD SDUWH
LQIHULRUGHEDMRGHOKLMRHQODSRVLFLyQHWF1RH[LVWHQYDORUHVGHSRVLFLyQYDFtRV
HQODOLVWDVLH[LVWHQWUHVKLMRVORVKLMRVVLHPSUHWHQGUiQYDORUHVGHtQGLFHGH\
\QR\SRUHMHPSOR
(O PpWRGR VHW&KLOGOQGH[ OR SURSRUFLRQD 'LVSOD\2EMHFW&RQWDLQHU SDUD
UHRUGHQDUORVKLMRVGHQWURGHOFRQWHQHGRU$GRSWDGRVSDUiPHWURVXQDUHIHUHQFLDDO
KLMR D PRYHU \ OD QXHYD SRVLFLyQ GHO KLMR HQ HO FRQWHQHGRU /D SRVLFLyQ GH tQGLFH
HVSHFLILFDGR GHEH VHU XQ YDORU YiOLGR /RV YDORUHV QHJDWLYRV R YDORUHV GHPDVLDGR
H[WHQVRVJHQHUDUiQXQ5DQJH(UURU\ODIXQFLyQQRVHHMHFXWDUiFRUUHFWDPHQWH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
(OVLJXLHQWHHMHPSORFUHDWUHVFtUFXORVGHFRORUHVGLEXMiQGRVHHOD]XOHQFLPD
(O PpWRGR VHW&KLOG,QGH[ VH XWLOL]D SDUD PRYHU HO FtUFXOR D]XO SRU GHEDMR GH ORV
RWURVGRVFtUFXORVFDPELDQGRVXSRVLFLyQGHDHQHOFRQWHQHGRU/DVSRVLFLRQHV
GHORVRWURVKLMRVVHDMXVWDQHQFRQVHFXHQFLDURMRVHPXHYHD\YHUGHVHPXHYHD
(MHPSOR
• 6HDEUHXQDUFKLYR)ODVK$6QXHYR\VHJXDUGDFRPRUHPRYHUIODHQHO
GLUHFWRULRGHWUDEDMR
• $KRUDVHDEUHXQDUFKLYR$FWLRQ6FULSWQXHYR\VHJXDUGDHQODFDUSHWD
PLV&ODVHVFRQHOQRPEUH5HPRYHUDV
• 5HODFLyQHVHDPERVDUFKLYRVHQHOFDPSR'RFXPHQWFODVVGHO,QVSHFWRUGH
SURSLHGDGHV\YHULItTXHVHTXHHOFRPSLODGRUVHHQFXHQWUHHQPRGRHVWULFWR
• (QHODUFKLYRGHFODVHVVHHVFULEHHOVLJXLHQWHFyGLJR
package misClases{
import flash.display.*;
public class Mover extends Sprite {
public function Mover() {
//Crear tres círculos de colores
//diferentes y
//cambiar sus coordenadas para
//que se escalonen
//y no estén todos en (0,0).
var rojo:Shape =crearCirculo(0xFF0000,10 );
rojo.x = 10;
rojo.y = 20;
var verde:Shape =crearCirculo(0x00FF00,10
);
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&yPRPRYHUDORVKLMRVGHSURIXQGLGDGVHW&KLOG,QGH[
verde.x = 15;
verde.y = 25;
var azul:Shape =crearCirculo(0x0000FF,10 );
azul.x = 20;
azul.y = 20;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
• (MHFXWHODSHOtFXOD6HREVHUYDUiQORVWUHVFtUFXORVVHJ~QIXHURQDxDGLGRVD
ODOLVWDGHYLVXDOL]DFLyQ$KRUDVHDxDGHHOVLJXLHQWHFyGLJRGHVSXpVGHOD
DGLFLyQGHORVHOHPHQWRVDODOLVWD
• (MHF~WHVHQXHYDPHQWHODSHOtFXOD6HYHUiTXHDKRUDDSDUHFHHOFtUFXORD]XO
KDVWDDWUiVGHORVGHPiVFtUFXORV
8QR GH ORV UHTXLVLWRV SDUD VHW&KLOG,QGH[ HV VDEHU HO YDORU GH tQGLFH TXH VH
GHVHDDVLJQDUDXQKLMRHVSHFtILFR&XDQGRVHHQYtDXQKLMRDOILQDOVHXWLOL]DFRPR
HOtQGLFH&XDQGRVHGHVHDWUDHUXQKLMRKDFLDGHODQWHVHHVSHFLILFDQXP&KLOGUHQ
FRPRHOtQGLFH3HUR¢TXpVXFHGHVLGHVHDPRYHUXQKLMRGHEDMRGHRWURKLMR"
3RUHMHPSORVXSyQJDVHTXHVHWLHQHQGRVFtUFXORVXQRYHUGH\RWURD]XO\QR
VHVDEHVXSRVLFLyQFRQWLHPSRVXILFLHQWH6HGHVHDPRYHUHOFtUFXORD]XOGHWUiVGHO
YHUGH SHUR VHW&KLOG,QGH[ UHTXLHUH XQ YDORU HQWHUR SDUD OD QXHYD SRVLFLyQ 1R
H[LVWHQPpWRGRVVHW&KLOG$ERYHRVHW&KLOG%HORZSRUORTXHODVROXFLyQHVXWLOL]DUHO
PpWRGRJHW&KLOG,QGH[SDUDUHFXSHUDUHOtQGLFHGHXQKLMR\OXHJRXWLOL]DUHVHtQGLFH
SDUDFDPELDUODSRVLFLyQGHORWURKLMR
(O PpWRGR JHW&KLOG,QGH[ DGRSWD XQ REMHWR GH YLVXDOL]DFLyQ FRPR XQ
SDUiPHWUR \ GHYXHOYH HO tQGLFH GHO REMHWR GH YLVXDOL]DFLyQ HQ HO FRQWHQHGRU 6L HO
REMHWR GH YLVXDOL]DFLyQ SDVDGR QR HV XQ KLMR GHO FRQWHQHGRU VH PDQGD XQ
$UJXPHQW(UURU
(O VLJXLHQWH HMHPSOR FUHD GRV FtUFXORV XQR YHUGH \ RWUR D]XO \ XWLOL]D
JHW&KLOGOQGH[HQHOFtUFXORYHUGHGHPRGRTXHHOFtUFXORD]XOVHSXHGHPRYHUSRU
GHEDMRGHpVWH$OHVWDEOHFHUHOFtUFXORD]XOHQHOtQGLFHTXHWLHQHHOFtUFXORYHUGHHO
FtUFXOR D]XO DVXPH OD SRVLFLyQ \ HO FtUFXOR YHUGH VH PXHYH D OD VLJXLHQWH SRVLFLyQ
PiVDOWDSRUTXHHOD]XOWHQtDXQDSRVLFLyQPiVDOWDLQLFLDOPHQWH
(MHPSOR
• ÉEUDQVHORVDUFKLYRVPRYHUIOD\0RYHUDV
• 6HJUDED0RYHUDVFRPR0RYHUDV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&yPRPRYHUDORVKLMRVGHSURIXQGLGDGVHW&KLOG,QGH[
• 5HODFLyQHVHHODUFKLYRPRYHUIODFRQ0RYHUDVHQHOFDPSR'RFXPHQWFODVV
• (OFRQWHQLGRGHODUFKLYRGHFODVHVVHVXVWLWX\HSRUHOVLJXLHQWH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
• (MHF~WHVHODSHOtFXOD6HREVHUYDUiTXHHOFtUFXORD]XOQRSHUPLWHYLVXDOL]DU
DOFtUFXORYHUGH$KRUDVHHVFULEHHOVLJXLHQWHFyGLJRGHEDMRGHODDGLFLyQGH
ORVREMHWRVDODOLVWDGHYLVXDOL]DFLyQ
• (MHF~WHVH QXHYDPHQWH OD SHOtFXOD $KRUD VH YH TXH HO FtUFXOR YHUGH
DSDUHFHUiVREUHHOFtUFXORD]XO
&XDQGRXQKLMRVHPXHYHDXQtQGLFHLQIHULRUGHOTXHVHKDOODWRGRVORVKLMRV
GHOtQGLFHREMHWLYRKDVWDHOTXHVHHQFXHQWUDGHODQWHGHOtQGLFHKLMRDXPHQWDUiQVXV
tQGLFHV HQ \ HO KLMR VH DVLJQD DO tQGLFH GHVWLQR &XDQGR XQ KLMR VH PXHYH D XQ
tQGLFHPD\RUWRGRVORVKLMRVGHVGHHOTXHVHHQFXHQWUDSRUHQFLPDGHOtQGLFHKLMR
KDVWD H LQFOX\HQGR HO tQGLFH GHVWLQR VH PXHYHQ KDFLD DEDMR HQ \ HO KLMR WLHQH
DVLJQDGRHOYDORUtQGLFHGHGHVWLQR
(Q JHQHUDO VL HO REMHWR D VH HQFXHQWUD VREUH HO REMHWR E HO VLJXLHQWH FyGLJR
PXHYHDGLUHFWDPHQWHGHEDMRGHE
setChildIndex(a,getChildIndex(b )) ;
3RUHOFRQWUDULRVLXQREMHWRDHVWiGHEDMRGHXQREMHWREHOFyGLJRDQWHULRUPXHYH
DGLUHFWDPHQWHHQFLPDGHE
+DVWD HO PRPHQWR VLHPSUH VH KD HVWDGR PRYLHQGR KLMRV SDUD ORV TXH VH KD
WHQLGR XQD UHIHUHQFLD 3RU HMHPSOR OD YDULDEOH D]XO UHIHUHQFLDED HO REMHWR GH
YLVXDOL]DFLyQ SDUD HO FtUFXOR D]XO \ VH SXGR XWLOL]DU HVWD YDULDEOH SDUD FDPELDU HO
tQGLFH GHO FtUFXOR D]XO ¢4Xp VXFHGH FXDQGR QR VH WLHQH XQD UHIHUHQFLD DO REMHWR
TXHVHGHVHDPRYHU\QRH[LVWHODYDULDEOHD]XO"(OPpWRGRVHW&KLOGOQGH[UHTXLHUH
XQDUHIHUHQFLDDOREMHWRFRPRVXSULPHUSDUiPHWURSRUORTXHQHFHVLWDFRQVHJXLUOD
UHIHUHQFLD GH DOJXQD PDQHUD VL QR HVWi GLVSRQLEOH FRQ XQD YDULDEOH UHJXODU /D
VROXFLyQHVXWLOL]DUHOPpWRGRJHW&KLOG$W
(OPpWRGRJHW&KLOG$WWRPDXQVRORDUJXPHQWRXQtQGLFHHQODOLVWDGHKLMRV
GHO FRQWHQHGRU \ GHYXHOYH XQD UHIHUHQFLD DO REMHWR GH YLVXDOL]DFLyQ ORFDOL]DGR HQ
HVH tQGLFH 6L HO tQGLFH HVSHFLILFDGR QR HV XQ tQGLFH YiOLGR HQ OD OLVWD VH ODQ]D XQ
5DQJH(UURU
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
,QGH[
&yPRPRYHUDORVKLMRVGHSURIXQGLGDGVHW&KLOG,QGH[
(OVLJXLHQWHHMHPSORFUHDYDULRVFtUFXORVGHYDULRVFRORUHV\WDPDxRV\ORVVLW~D
HQYDULRVOXJDUHVHQODSDQWDOOD&DGDYH]TXHVHSXOVDHOPRXVHHOKLMRHQODSDUWH
LQIHULRUVHVLW~DSRUHQFLPDGHWRGRVORVGHPiV
(MHPSOR
• ÉEUDQVHORVDUFKLYRVPRYHUIOD\0RYHUDV
• 6HJUDED0RYHUDVFRPR0RYHUDV
• 5HODFLyQHVHHODUFKLYRPRYHUIODFRQ0RYHUDVHQHOFDPSR'RFXPHQW
FODVV
• (OFRQWHQLGRGHODUFKLYRGHFODVHVVHVXVWLWX\HSRUHOVLJXLHQWH
package misClases{
import flash.display.*;
import flash.events.*;
0x009900,0x006600,0x0000FF,0x000099,0x000066,0xCCCCCC
];
//Crear 10 círculos y
//alinearlos diagonalmente
for (var i:int =0; i <10; i++) {
var circle:Shape =crearCirculo(color
[i ] ,20 );
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
circle.x = 100+i;
circle.y = i +110;
addChild(circle );
}
stage.addEventListener(MouseEvent.CLICK,updateDisplay
);
}
//Mover el círculo en la parte inferior
//hasta el principio
public function updateDisplay(e:MouseEvent ):void
{
//getChildAt(0) devuelve el objeto de
//visualización en la parte
//inferior, que luego se mueve hasta
//el principio al especificar el
//índice numChildren -1 en setChildIndex
setChildIndex(getChildAt(0),numChildren -1
);
}
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&yPRPDQLSXODUXQREMHWRTXH\DH[LVWHHQHOHVFHQDULR
shape.graphics.drawCircle(0,0,radius );
shape.graphics.endFill();
return shape;
}
}
}
• (MHF~WHVHODSHOtFXOD6HQRWDUiTXHFDGDYH]TXHVHSXOVHFRQHODSXQWDGRU
GHOPRXVHVREUHHOHVFHQDULRXQRGHORVFtUFXORVFDPELDUiVXSRVLFLyQFRQ
UHVSHFWRDORVGHPiV
&yPRPDQLSXODUXQREMHWRTXH\DH[LVWH
HQHOHVFHQDULR
$O SULQFLSLRHOPDQHMRGHOQXHYRPRGHORGHGDWRVYLVXDOHVSXHGH SDUHFHUXQ SRFR
FRPSOLFDGR <D HQ OD SUiFWLFD OR PDQHMDUHPRV GH IRUPD PiV QDWXUDO \ UDUD YH]
WHQGUHPRV TXH ´UHSDUHQWDUµ R KDFHU FRVDV H[WUDxDV 3RU HMHPSOR SDUD PDQLSXODU
XQREMHWRTXH\DH[LVWHHQHOHVFHQDULREDVWDFRQXWLOL]DUVXQRPEUHGHLQVWDQFLD
(MHPSOR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
package misClases{
import flash.display.Sprite;
import flash.events.Event;
}
}
• &RPRSXHGHREVHUYDUHOSHTXHxRFtUFXORVHPRYHUiGHGHUHFKDDL]TXLHUGD
\ YLFHYHUVD HQ HO HVFHQDULR \ QR IXH QHFHVDULR FUHDUOR GHVGH $FWLRQ6FULSW
SHURVHSXHGHPDQLSXODUVLQSUREOHPDFRQpO
&yPROODPDUDXQREMHWRJUiILFRGHODOLEUHUtD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&yPRPDQLSXODUXQREMHWRTXH\DH[LVWHHQHOHVFHQDULR
)LJXUD'HILQLFLyQGHFODVHHQHOFDPSR&ODVV
)LJXUD
1RWD
(Q $FWLRQ6FULSW OD IRUPD GH QRPEUDU ORV VtPERORV FDPELD 3RU OR JHQHUDO
XWLOL]iEDPRVXQSUHILMRFRPRPFSDUD0RYLH&OLSJUSDUDXQ*UiILFREWQSDUDXQERWyQ
&RPRDKRUDVHUHODFLRQDHOREMHWRFRQXQDFODVHHVSUHIHULEOH\DQRXVDUHOSUHILMR\
OODPDUOR GLUHFWDPHQWH &XDGUR &tUFXOR HWF 2EVHUYH TXH VH HVFULEH FRQ PD\~VFXOD
LQLFLDOSDUDUHODFLRQDUORFRQVXFODVH
3DUDOODPDUDOREMHWRGHODOLEUHUtDDOHVFHQDULRORFUHDUHPRVFRPRXQDLQVWDQFLD
GHFODVH2EVHUYHTXHVHFRORFDHQHOFXDGURGHFODVHHOQRPEUHGHOLGHQWLILFDGRU
(MHPSOR
• $EUD XQ DUFKLYR QXHYR GH )ODVK $FWLRQ6FULSW \ QyPEUHOR FRPR
FXDGURIODHQVXFDUSHWDGHWUDEDMR
• (Q HO DUFKLYR FXDGURIOD GLEXMH XQ UHFWiQJXOR GH DSUR[LPDGDPHQWH
SRUFRQODKHUUDPLHQWDFRUUHVSRQGLHQWH
• &RQYLHUWDHOUHFWiQJXORHQXQ0RYLH&OLS1RPEUHDOVtPERORFRPR&XDGUR
• $FWLYHODFDVLOOD([SRUWIRU$FWLRQ6FULSW
• (VFULEDHQHOFDPSR&ODVVODSDODEUD&XDGUR
• )ODVKOHLQGLFDUiTXHQRH[LVWHQLQJXQDFODVHHVGHFLUXQDUFKLYRGHFODVH
SHURQRLPSRUWDVyORQHFHVLWDPRVGHPRPHQWRHOLGHQWLILFDGRU&XDGUR
• %RUUHODLQVWDQFLDGHOHVFHQDULR\DVHJ~UHVHTXHHOVtPERORVHHQFXHQWUH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
HQODOLEUHUtD6LPXHYHXQSRFRODEDUUDLQIHULRUGHOSDQHOREVHUYDUiTXH
HOVtPEROR&XDGURWLHQHXQLGHQWLILFDGRUGHH[SRUWDFLyQTXHHVORTXHVH
QHFHVLWD
)LJXUD&XDGURTXHWLHQHXQLGHQWLILFDGRUGHH[SRUWDFLyQ
)LJXUD
• $KRUDDEUDXQDUFKLYR$FWLRQ6FULSW\QyPEUHORFRPR&XDGUR'RFXPHQWDV\
JXiUGHORGHQWURGHODFDUSHWDPLV&ODVHV
1RWD
6L OR QRPEUiUDPRV &XDGUR )ODVK SHQVDUtD TXH HV HO FRQWHQLGR GH OD FODVH TXH OR
YHUHPRVHQHOVLJXLHQWHLQFLVR&RQHOQRPEUHGH'RFXPHQWTXHUHPRVGHFLUTXHHVOD
FODVHGHOGRFXPHQWR(VWRSXHGHFDPELDUVHJ~QHODXWRUGHOFyGLJR
• (QHODUFKLYRGHFODVHHVFULEDHOVLJXLHQWHFyGLJR
package misClases{
import flash.display.Sprite;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
• &RPRSXHGHDSUHFLDUHQHVWHFDVRWDPELpQHVQHFHVDULRHODGG&KLOGSDUD
YLVXDOL]DUREMHWRVWUDtGRVGHODOLEUHUtD
• 6DOYHVXVDUFKLYRVSDUDXWLOL]DUORVHQHOSUy[LPRHMHUFLFLR
&yPRHVFULELUFyGLJRGHQWURGHOREMHWR
&RQ $FWLRQ6FULSW DXQ VH SXHGH HVFULELU FyGLJR GHQWUR GH XQ REMHWR GHQWUR GHO
HVFHQDULRHVGHFLUGHQWURGHO0RYLH&OLSSHURHVPXFKRPHMRUFUHDUXQDFODVH
• $EUDXQQXHYRDUFKLYR$FWLRQ6FULSWDV\QyPEUHORDKRUDVt&XDGURDVHQOD
FDUSHWDPLV&ODVHV
• (VFULEDHOVLJXLHQWHFyGLJR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
/DOLVWDGHYLVXDOL]DFLyQ
package misClases{
import flash.display.Sprite;
import flash.events.Event;
• 6LHMHFXWDODSHOtFXODFXDGURIODORVFXDGURVQRJLUDUiQKDVWDTXHORVOLJXH
FRQ OD FODVH 3DUD HOOR HQWUH D OD OLEUHUtD GH OD SHOtFXOD IOD VHOHFFLRQH HO
VtPEROR FXDGUR GHVSXpV VREUH pO Gp XQ FOLF FRQ HO ERWyQ GHUHFKR \
VHOHFFLRQHSURSLHGDGHV
• 6LQRHVWiDELHUWDODRSFLyQGHDYDQ]DGRVSXOVHHOERWyQFRUUHVSRQGLHQWH
(QODFDVLOOD&ODVVHVFULEDPLV&ODVHV&XDGUR
• $KRUDHMHFXWHODSHOtFXOD\YHUiJLUDUDORVFXDGURV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&yPRPDQLSXODUXQREMHWRTXH\DH[LVWHHQHOHVFHQDULR
$PDQHUDGHFRQFOXVLyQ
8QSDVRPX\LPSRUWDQWHSDUDGRPLQDUODSURJUDPDFLyQYLVXDOHQ$FWLRQ6FULSWHV
FRQRFHUELHQHOXVRGHODOLVWDGHYLVXDOL]DFLyQ(QHVWHFDStWXORDSUHQGLy
• &yPRDxDGLUXQHOHPHQWRDODOLVWDGHYLVXDOL]DFLyQ
• /LVWDGHYLVXDOL]DFLyQGHQWURGHXQFRQWHQHGRU
• &yPRUHSDUHQWDUREMHWRVHQODOLVWDGHYLVXDOL]DFLyQ
• &yPRHOLPLQDUXQREMHWRGHODOLVWDGHYLVXDOL]DFLyQ
• &yPRERUUDUXQHOHPHQWRVLQODUHIHUHQFLD
• &yPRHOLPLQDUDWRGRVORVKLMRVGHXQFRQWHQHGRU
• &yPRPRYHUDORVKLMRVGHSURIXQGLGDGVHW&KLOG,QGH[
• &yPRPDQLSXODUXQREMHWRTXH\DH[LVWHHQHOHVFHQDULR
• &yPROODPDUDXQREMHWRJUiILFRGHODOLEUHUtD
• (QHVWHQXHYRPRGHORHO'LVSOD\/LVWODFODVH0RYLH&OLSHVODPiVEDMD\
SHVDGD
• /DVFDUDFWHUtVWLFDVGHODVQXHYDVFODVHVPXFKRPiVHVSHFLDOL]DGDV\
OLJHUDVTXHKDFHQGHODYHUVLyQGH$FWLRQ6FULSWDOPHQRVYHFHVPiV
UiSLGD
(Q HO SUy[LPR FDStWXOR HVWXGLDUHPRV HO QXHYR PRGHOR GH PDQHMR GH HYHQWRV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
Manejo de eventos 5
0DQHMRGHHYHQWRV
&RPR VH PHQFLRQy HQ OD LQWURGXFFLyQ KD\ WUHV SXQWRV PX\ LPSRUWDQWHV TXH
FDPELDQHQ$FWLRQ6FULSW(OPDQHMRGH$FWLRQ6FULSWFRPRXQSURJUDPDRULHQWDGR
DREMHWRV223HOQXHYRPRGHORGHODOLVWDGHYLVXDOL]DFLyQ\HOQXHYRPRGHORGH
PDQHMRGHHYHQWRV(QHVWHFDStWXORYHUHPRVHOWHUFHURGHORVSXQWRVORVHYHQWRV
¢4XpVRQORVHYHQWRV"
/RVHYHQWRVSXHGHQFRQVLGHUDUVHVXFHVRVTXHRFXUUHQHQHOHQWRUQRGHOSURJUDPD\
TXHVRQGHOLQWHUpVGHOGHVDUUROODGRU/RVHYHQWRVSRUORJHQHUDOQRVRQSUHYLVLEOHV
HV GHFLU HO SURJUDPDGRU QR VDEH FXiQGR HO XVXDULR SXOVDUi XQD WHFOD QL FXiO GH
HOODVRKDFLDDGyQGHPRYHUiHODSXQWDGRUGHOPRXVHUDWyQ\GyQGHSXOVDUiHQOD
SDQWDOOD
6L XVWHG PDQHMy ODV YHUVLRQHV DQWHULRUHV GH $FWLRQ6FULSW UHFRUGDUi TXH
WHQtDPRVPXFKDVPDQHUDVGH´DWUDSDUµR´HVFXFKDUµORVHYHQWRV
• &RQWURODGRUHV GH HYHQWRV RQ TXH VH SXHGHQ FRORFDU GLUHFWDPHQWH HQ
LQVWDQFLDVGH%XWWRQ\0RYLH&OLS
• &RQWURODGRUHV RQ&OLS(YHQW TXH VH SXHGHQ FRORFDU GLUHFWDPHQWH HQ
LQVWDQFLDVGH0RYLH&OLS
• 3URSLHGDGHVGHIXQFLRQHVFDOOEDFNFRPR;0/RQORDG\&DPHUDRQ$FWLYLW\
• 'HWHFWRUHVGHHYHQWRVTXHSXHGHQUHJLVWUDUVHFRQHOPpWRGRDGG/LVWHQHU
• /DFODVH8,(YHQW'LVSDWFKHUTXHLPSOHPHQWDEDSDUFLDOPHQWHHOPRGHORGH
HYHQWRV'20
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
(Q$6VyORVHWLHQHXQPRGHORGH0DQHMRGHHYHQWRV
0DQHMRGHHYHQWRVHOFXDOVHEDVDHQODV
0DQHMRGHHYHQWRV
HVSHFLILFDFLRQHV GHO PRGHOR '20 'RFXPHQW 2EMHFW 0RGHO QLYHO 6L XVWHG
PDQHMyHYHQWRVGHFRPSRQHQWHVHQODVYHUVLRQHVDQWHULRUHVVHHQFRQWUDUiTXHHV
PX\VLPLODUPDQHMDUORVHQ$6
1RWD
6LQHFHVLWDPD\RULQIRUPDFLyQHQHVSDxROYLVLWH
KWWSZZZZRUJ'20&RUHHVGHVFULSFLRQKWPO
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
(VIUHFXHQWHPRVWUDUHQHOH[DPHQGHFHUWLILFDFLyQXQWUR]RGHFyGLJR\SUHJXQWDU
¢&XiOHVHOHUURU"
(MHPSOR
3XHGHVHUXQHUURUWDQVLPSOHFRPRHVFULELU9RLGHQ$FWLRQ6FULSWVHHVFULEHFRQ9
PD\~VFXOD\HQ$FWLRQ6FULSWYRLGVHHVFULEHWRGDVHQPLQ~VFXODV
(OHPHQWRVGHOPDQHMRGHHYHQWRV
$QWHVGHDSUHQGHUDKDFHUQXHVWURVSURSLRVPDQHMDGRUHVGHHYHQWRVHV~WLOVDEHU
FyPR PDQHMDU ORV HYHQWRV )ODVK /RV SDVRV TXH VH VLJXHQ DO JHQHUDU XQ HYHQWR
GHQWURGHOSURJUDPDVRQORVVLJXLHQWHV
1. &UHD XQ 2EMHWR GH HYHQWR
HYHQWR HO FXDO FRQWLHQH OD LQIRUPDFLyQ UHOHYDQWH
GHO HYHQWR \ VH OD SURSRUFLRQD DO SURJUDPDGRU $ HVWH REMHWR VH OH
FRQRFHFRPR( (YHQWREMHFW
YHQWREMHFW
2. (QHO (YHQWREMHFWVHLQGLFDHOREMHWR
(YHQWREMHFW HQHOFXDOVHHIHFWXyODDFFLyQ
GHO VLVWHPD R GHO XVXDULR HV GHFLU VL pVWH SXOVy XQ ERWyQ PRYLy HO
DSXQWDGRU GHO PRXVH HVFULELy WH[WR HQ XQ FDPSR HWF $O REMHWR HQ
TXH VH HMHFXWy HO HYHQWR SRU HMHPSOR XQ ERWyQ VH OH FRQRFH FRPR
HYHQWWDUJHW
HYHQWWDUJHWeVWHHVHOREMHWRTXHUHFLEHDOHYHQWR
3. )ODVK3OD\HUVHHQFDUJDGH´SURSDJDUORµR´GHVSDFKDUORµSURFHVRTXH
VHFRQRFHFRPR(YHQWGLVSDWFK
(YHQWGLVSDWFK
(YHQWGLVSDWFK
4. )ODVK 3OD\HU HQWUHJDUi HO REMHWR GHO HYHQWR D WRGRV DTXHOORV REMHWRV
TXH VH KD\DQ VXVFULWR
VXVFULWR SDUD UHFLELUOR $ HVWRV REMHWRV VH OHV FRQRFH
FRPROLVWHQHUV
OLVWHQHUVGHDKtYLHQHHOWpUPLQR´HVFXFKDUµXQHYHQWR
OLVWHQHUV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
5. &XDQGR GHWHFWH HO REMHWR HO OLVWHQHU GLVSDUDUi XQD IXQFLyQ R PpWRGR HO
FXDOHVODUHVSXHVWDGHOSURJUDPDDOHYHQWRH[WHULRU
&XDQGR GHWHFWH HO REMHWR HO OLVWHQHU GLVSDUDUi XQD IXQFLyQ R PpWRGR &DEH
PHQFLRQDUTXH)ODVKJHQHUDPXFKRVHYHQWRVVLQTXHQRVRWURVQRVGHPRVFXHQWD
/R LPSRUWDQWH HV TXH ´DWUDSHPRVµ HO HYHQWR TXH QHFHVLWDPRV 3RQJDPRV XQ
HMHPSORFRQJDWRV
(MHPSORFRQJDWRV
6XSRQJDPRVTXHVHHQFXHQWUDQGRFHJDWRVUHWR]DQGR\KDFLHQGRORTXHKDFHQORV
JDWRVHQXQFDOOHMyQORVJDWRVVHUtDQORVREMHWRV\HOFDOOHMyQHOHVFHQDULR(O~QLFR
SUREOHPDTXHWLHQHQHVFXDQGRSDVDHOSROLFtDGHOEDUULROODPpPRVOH´0DWXWHµHO
HYHQWR VH GLVSDUD FXDQGR HO SROLFtD SDVD SRU HO FDOOHMyQ (O DVWXWR MHIH GHO FODQ
IHOLQRGHFLGHSRQHUDXQRGHORVJDWRVFRPRYLJtDDODHQWUDGDGHOFDOOHMyQGLJDPRV
TXHVHOHFFLRQDD´(VSDQWRµSDUDTXHHVWpDOSHQGLHQWH(VSDQWRVHUtDHOYLJtDRHO
HVFXFKD TXH DYLVDUi D ORV GHPiV JDWRV HV GHFLU HV HO ´OLVWHQHUµ 3HUR KD\ XQ
SUREOHPD (VSDQWR VyOR DYLVDUi D VXV DPLJRV ORV VXVFULSWRUHV 3RU H[WUDxR TXH
SDUH]FD (VSDQWR OHV DYLVDUi D VXV DPLJRV HVFULELHQGR XQD QRWD HQ XQ SDSHO
´//(*ÐB0$787(µ&XDQGRHOHYHQWRVXFHGHHVGHFLU(VSDQWRGHWHFWDORVSDVRVGH
0DWXWH pVWH DYLVD D VXV DPLJRV ORV PLHPEURV GH VX SDQGLOOD \ pVWRV LQLFLDQ OD
KXLGDODDFFLyQ
(VWD DQDORJtD JDWXQD QRV VHUYLUi SDUD HQWHQGHU HO PRGHOR EURDGFDVWOLVWHQHU
EURDGFDVWOLVWHQHU
GHORVHYHQWRVGHO'203DUDSRGHULPSODQWDUHVWHSURFHVRHQ$6HVQHFHVDULR
UHDOL]DUORVVLJXLHQWHVSDVRV
1. 3ULPHURVDEHUTXpHYHQWRVHGHVHDGHWHFWDU\FXiOHVVXLGHQWLILFDGRU(Q
QXHVWUD DQDORJtD OR TXH TXHUHPRV GHWHFWDU HV FXDQGR OOHJD 0DWXWH DO
FDOOHMyQHLQYHQWDUHPRVXQDFRQVWDQWHTXHVHD´//(*ÐB0$787(µ
2. 'HWHUPLQDU HO WLSR GHO ´REMHWR GHO HYHQWRµ TXH LQWHUHVD (Q HVWH FDVR HO
HYHQW2EMHFWVHUiODQRWDHVFULWDHQHOSDSHODYLVDQGRGHOHYHQWRDORVJDWRV
3. &UHDU XQ OLVWHQHU HO FXDO ODQ]DUi OD IXQFLyQ GH UHVSXHVWD TXH VH GHVHD
(VSDQWRVHUiQXHVWURHVFXFKDRYLJtD
4. /LJDUDOREMHWRTXHUHFLEHHOHYHQWRHYHQWWDUJHWFRQHOREMHWRTXHODQ]DOD
UHVSXHVWD DO PLVPR OLVWHQHU $ HVWH SURFHVR VH OH OODPD SRU OR JHQHUDO
´VXVFULSFLyQµ /RV DPLJRV GH (VSDQWR VRQ ORV JDWRV ´VXVFULWRVµ DO HYHQWR
/RVGHPiVJDWRVQRVHYDQDHQWHUDU
5. (VSHUDUWUDQTXLODPHQWHDTXHHOHYHQWRVXFHGD
(QUHDOLGDGHOSURFHVRQRHVWDQFRPSOHMRFRPRORDSDUHQWD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
(QHOH[DPHQGHFHUWLILFDFLyQVHPXHVWUDXQSHTXHxRFyGLJR\VHVROLFLWDVXUHVXOWDGR
SRUHMHPSOR
P\&OLSLVD0RYLH&OLSRQWKHVWDJH
P\&OLSDGG(YHQW/LVWHQHU0RXVH(YHQW&/,&.FOLFN+DQGOHU
IXQFWLRQFOLFN+DQGOHUHYW0RXVH(YHQWYRLG^
WUDFHHYWWDUJHWBQDPH
`
/DUHVSXHVWDHVXQGHILQHG\DTXHQRH[LVWHODSURSLHGDGBQDPH
/DVSURSLHGDGHV\DQRXWLOL]DQJXLRQHVEDMRVDOLQLFLR
'HWHUPLQDUHOHYHQWR\VXLGHQWLILFDGRU
'HMDQGRORVJDWRV\SDVDQGRDO$FWLRQ6FULSWVXSRQJDPRVTXHGHVHDVDEHUFXiQGR
HOXVXDULRPXHYHHODSXQWDGRUGHOPRXVHHQFXDOTXLHUSDUWHGHOHVFHQDULRHVGHFLU
TXHUHPRVTXH)ODVKQRVDYLVHFXDQGRHOXVXDULRPXHYHVXPRXVH3DUDHOORDEUDOD
D\XGDODFODVH0RXVH\EXVTXHORVHYHQWRVGHHVWDFODVHORVFXDOHVVHHQFXHQWUDQ
HQ0RXVH(YHQW
1RWD
3RUORJHQHUDOHQ$FWLRQ6FULSWORVHYHQWRVVHHQFXHQWUDQVHSDUDGRVGHODFODVHSRU
HMHPSORH[LVWHODFODVH0RXVH\WHQHPRVODFODVH0RXVH(YHQW\DVtFRQRWUDVFODVHV
SRUHMHPSOR7H[W(YHQW7LPHU(YHQWHWFpWHUD
(QODGRFXPHQWDFLyQGHODFODVH0RXVH(YHQWVHHQFXHQWUDXQDWDEODFRQODV
FRQVWDQWHV\ODVFDGHQDVTXHFRQWLHQHQGLFKDVFRQVWDQWHV&RQHVWHLGHQWLILFDGRUVH
VDEUiFXDQGR)ODVK3OD\HUGHWHFWHTXHHOXVXDULRPRYLyHODSXQWDGRUGHOPRXVHVREUH
HOHVFHQDULR/DH[SOLFDFLyQGHORVGHPiVHYHQWRVVHYHUiHQHOVLJXLHQWHDSDUWDGR3RU
ORSURQWRORTXHVHEXVFDHV
MouseEvent.MOUSE_MOVE=”mouseMove”
$TXtVHHQFXHQWUDQYDULRVDVSHFWRVLPSRUWDQWHV
3HUWHQHFHDODFODVH0RXVH(YHQWSRUORTXHVHUiQHFHVDULRLPSRUWDUOD
/DFRQVWDQWHHV0286(B029(FRQODFXDOQRWLILFDUiHO)ODVK3OD\HUGHOHYHQWR
/DFDGHQDTXHLGHQWLILFDHOHYHQWRHV´PRXVH0RYHµ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
'HWHUPLQDUHOWLSRGHREMHWRGHOHYHQWR(YHQWREMHFW
$KRUDVHVDEHTXHHOHYHQWRTXHEXVFDPRVSHUWHQHFHDODFODVH0RXVH(YHQW(QOD
D\XGD GH )ODVK VH HQFRQWUDUi HO IRUPDWR GHO REMHWR GHO HYHQWR (YHQW REMHFW TXH
SURSRUFLRQDUiHO)ODVK 3OD\HU(VWH REMHWRFRQWHQGUiWRGDODLQIRUPDFLyQJHQHUDGD
SRUHOHYHQWR
Propiedad Descripción
GHIDXOW WUXH³'HWHUPLQDVLHOREMHWRGHHYHQWRSDUWLFLSDHQ
EXEEOHV
ODIDVHGHSURSDJDFLyQGHOIOXMRGHOHYHQWR
EXWWRQ'RZQ GHIDXOW IDOVH ³ ,QGLFD VL VH SXOVD HO ERWyQ SULQFLSDO GHO
PRXVH
FDQFHODEOH GHIDXOW IDOVH ³ 'HWHUPLQD VL VH SXHGH FDQFHODU HO REMHWR
(YHQW
FWUO.H\ GHIDXOW IDOVH³(Q:LQGRZVRHQ/LQX[LQGLFDVLODWHFOD&WUO
HVWi DFWLYDGD (Q 0DF LQGLFD VL HVWi DFWLYDGD OD WHFOD &WUO R
&RPDQGR
ORFDO; GHIDXOW 1D1 ³ /D FRRUGHQDGD KRUL]RQWDO HQ OD TXH VH
SURGXFHHOHYHQWRHQUHODFLyQFRQODFODVH6SULWHFRQWHQLGD
ORFDO< GHIDXOW 1D1³/DFRRUGHQDGDYHUWLFDOHQODTXHVHSURGXFH
HOHYHQWRHQUHODFLyQFRQODFODVH6SULWHFRQWHQLGD
WDUJHW (OREMHWRGRQGHUHFD\yHOHYHQWR
(VWD LQIRUPDFLyQ HV HO HTXLYDOHQWH DO SDSHOLWR TXH HQWUHJy (VSDQWR D OD
SDQGLOOD(QGLFKR´SDSHOLWRµYLDMDODLQIRUPDFLyQQHFHVDULD
1RWD
(QHOHYHQW2EMHFWYLDMDPiVLQIRUPDFLyQ\pVWDGHSHQGHGHODFODVH\GHOHYHQWR3DUD
PD\RU UHIHUHQFLD FRQVXOWH OD D\XGD HQ OtQHD GH )ODVK (Q OD YHUVLyQ KDEtD
PDQHMDGRUHV TXH UHFLEtDQ XQ SDUiPHWUR SRU HMHPSOR HO GHO ;0/ KDEtD RWUR TXH
UHFLEtDWUHVRPXFKRVFDVRVQRUHFLEtDQQDGD(Q$6WRGDODLQIRUPDFLyQQHFHVDULD
YLDMDHQXQVRORREMHWRHOHYHQW2EMHFW
(O VLJXLHQWH SDVR HV GHWHUPLQDU FXiO GH OD LQIRUPDFLyQ FRQWHQLGD HQ HO
HYHQW2EMHFWQRVHVGHXWLOLGDG
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
5HFXHUGHTXHHQ$FWLRQ6FULSWORVSRUFHQWDMHVYDQGHDGRQGHHVHO
3UHJXQWD
3UHJXQWD
¢&yPRSXHGHFDPELDUHODOSKDGHXQPRYLH&OLSDO"
5HVSXHVWD
5HVSXHVWD
(VFULELHQGRQRSXHVHVWRHVLQFRUUHFWR
&UHDXQOLVWHQHUSDUDHOHYHQWR
(VWR TXLHUH GHFLU TXH HO SURJUDPDGRU QHFHVLWD VDEHU ODV DFFLRQHV TXH GLVSDUDUi
FXDQGRVHOHQRWLILTXHGHOHYHQWRHQQXHVWURHMHPSORVHUtDKXLUGHOFDOOHMyQ'LFKD
QRWLILFDFLyQ SXHGH VHU WDQ VHQFLOOD FRPR XQ PHQVDMH D OD FRQVROD GH VDOLGD R XQD
DQLPDFLyQ3DUDHOORVHUHDOL]DUiXQPpWRGRRIXQFLyQ(QIRUPDJHQpULFDVHWHQGUtD
private function
nombreListener(objetoEvento:TipoEvento):void {
trace("LLEGÓ MATUTE");
}
$VSHFWRVLPSRUWDQWHVVREUHORVOLVWHQHUV
/RV OLVWHQHUV VRQ VHQWHQFLDV TXH VH HVFULEHQ GLUHFWDPHQWH HQ HO FyGLJR \
TXH SHUPLWHQ VDEHU FXiQGR RFXUUH XQ HYHQWR (Q FDVR GH TXH HO HYHQWR
RFXUUDHMHFXWDXQDIXQFLyQTXHHVWiSUHYLDPHQWHSURJUDPDGD(VFRPRXQ
´HVFXFKDGRUµTXHHVWiSHQGLHQWHGHTXHVHUHDOLFHFLHUWDDFFLyQ
/RVOLVWHQHUQRGHEHQVHU´YLVWRVµSRUORVXVXDULRVSRUORTXHVLHPSUHVRQ
SULYDWH
'HVSXpVGHOGHOLPLWDGRUGHDFFHVRVSULYDWHVLJXHODSDODEUDFODYHIXQFWLRQ
6HJXLGR GHO QRPEUH GHO OLVWHQHU 1R KD\ XQD FRQYHQFLyQ SDUD GLFKR
QRPEUH 3RU OR JHQHUDO VH SRQH HO HYHQWR TXH VH GHVHD GHWHFWDU PiV OD
SDODEUDOLVWHQHUSHURVHOHSXHGHSRQHUFXDOTXLHUQRPEUH
&RPRSDUiPHWUR)ODVK3OD\HUHQWUHJDUiHOHYHQW2EMHFW
HYHQW2EMHFWHVGHFLUXQREMHWR
HYHQW2EMHFW
FRQ WRGD OD LQIRUPDFLyQ GHO HYHQWR (Q HO PDQXDO GHO XVXDULR GHO SDTXHWH
SXHGHQYHUVHORVGHWDOOHVGHGLFKRREMHWR
(OWLSRGHOHYHQWRHVLPSRUWDQWHeVWHVHREWXYRHQHOSULPHUSDVR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
/RVOLVWHQHUVQRUHJUHVDQQLQJ~QYDORU6LHPSUHVRQGHWLSRYRLG
3RU~OWLPRHQWUHODVOODYHVYDQODVLQVWUXFFLRQHVTXHVHGLVSDUDUiQ
1RWD
&RPRVHPHQFLRQDHQHOSXQWRQRKD\XQDFRQYHQFLyQSDUDQRPEUDUDODVIXQFLRQHV
GHORVOLVWHQHUV$OJXQRVDXWRUHVXWLOL]DQODSDODEUDOLVWHQHURWURVHYHQWKDQGOHU\RWURV
RQ$GRSWHHOTXHPiVOHFRQYHQJDORLPSRUWDQWHHVTXHVHDFRQVLVWHQWH
targetObject.addEventListener(clase.CONSTANTE, listener);
1RWD
(Q HO PRGHOR GHO PDQHMR GH ORV FRPSRQHQWHV HQ $6 VH XWLOL]DED OD FDGHQD TXH
LGHQWLILFDEDHOHYHQWRSRUHMHPSOR´FOLFNµ(Q$6ODFRQVWDQWHTXHDOPDFHQDGLFKD
FDGHQD HV OD TXH DKRUD VH XWLOL]D HV GHFLU 0RXVH(YHQW&/,&. (VWR D\XGD D TXH HO
FRPSLODGRUGHWHFWHHUURUHVGHVLQWD[LV
(OOLVWHQHUVHUiHOTXHVHGHILQLyHQHOSXQWRDQWHULRU
(VSHUDUDTXHODVFRVDVVXFHGDQ
3RU~OWLPRKD\TXHHVSHUDUDTXHHOXVXDULRSUHVLRQHHOERWyQGHOPRXVHHQDOJXQD
iUHD GHO HVFHQDULR 7DPELpQ KD\ YHFHV TXH HO PLVPR SURJUDPD QHFHVLWD TXH VH
UHDOLFHXQDDFFLyQSRUHMHPSORLQLFLDUODFDUJDGHXQDUFKLYRGHXQDLPDJHQHWF$
HVWRV ~OWLPRV VH OHV OODPD ´(YHQWRV GHO VLVWHPDµ FRQWUD ´(YHQWRV GHO XVXDULRµ (Q
UHVXPHQWHQGUtDPRVORTXHVHDSUHFLDHQOD)LJ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
&UHDULQWHUDFFLRQHVGHOPRXVH
$ FRQWLQXDFLyQ VH PXHVWUDQ ORV SULQFLSDOHV HYHQWRV TXH VH SXHGHQ GHWHFWDU HQ OD
DFWLYLGDGFRQHOPRXVH
FOLFN
FOLFNVHJHQHUDFXDQGRHOXVXDULRSXOVD\VXHOWDHOERWyQGHOPRXVHVREUHHO
REMHWRGHYLVXDOL]DFLyQLQWHUDFWLYR
GRXEOH&OLFN
GRXEOH&OLFNVHJHQHUDFXDQGRHOXVXDULR SXOVD\VXHOWDHOERWyQGHOPRXVH
GRVYHFHVHQXQDUiSLGDVXFHVLyQVREUHHOREMHWRGHYLVXDOL]DFLyQLQWHUDFWLYR
PRXVH'RZQ
PRXVH'RZQVHJHQHUDFXDQGRHOXVXDULRSXOVDHOERWyQGHOPRXVHVREUHHO
REMHWRGHYLVXDOL]DFLyQLQWHUDFWLYR
PRXVH8S
PRXVH8S VH JHQHUD FXDQGR HO XVXDULR VXHOWD HO ERWyQ GHO PRXVH VREUH HO
REMHWRGHYLVXDOL]DFLyQLQWHUDFWLYR
PRXVH2YHU
PRXVH2YH VH JHQHUD FXDQGR HO XVXDULR PXHYH HO FXUVRU GHO PRXVH GHVGH
IXHUD GH ORV OtPLWHV GHO REMHWR GH YLVXDOL]DFLyQ LQWHUDFWLYR KDFLD DGHQWUR GH
pVWRV
PRXVH0RYH
PRXVH0RYHRYH VH JHQHUD FXDQGR HO XVXDULR PXHYH HO FXUVRU GHO PRXVH
PLHQWUDV HO FXUVRU HVWi GHQWUR GH ORV OtPLWHV GHO REMHWR GH YLVXDOL]DFLyQ
LQWHUDFWLYR
PRXVH2XW
PRXVH2XW VH JHQHUD FXDQGR HO XVXDULR PXHYH HO FXUVRU GHO PRXVH GHVGH
GHQWURGHORVOtPLWHVGHXQREMHWRGHYLVXDOL]DFLyQLQWHUDFWLYRKDFLDDIXHUDGH
HOORV
PRXVH:KHHO
PRXVH:KHH VHJHQHUDFXDQGRHOXVXDULRURWDODERODGHOPRXVHPLHQWUDVHO
FXUVRUGHOPRXVHVHHQFXHQWUDVREUHHOREMHWRGHYLVXDOL]DFLyQLQWHUDFWLYR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
8WLOL]DU HVWRV HYHQWRV HV VLPSOHPHQWH XQD FXHVWLyQ GH LQYRFDU
DGG(YHQW/LVWHQHU\GHILQLUXQPDQHMDGRUGHHYHQWRSDUDJHVWLRQDUHO0RXVH(YHQW
TXHVHOHKDSDVDGR(OVLJXLHQWHIUDJPHQWRGHFyGLJRFUHDXQ6SULWHTXHGLEXMDD
QXHVWUR DPLJR HO FtUFXOR URMR GHQWUR \ PXHVWUD XQ PHQVDMH HQ OD FRQVROD VLHPSUH
TXHHOPRXVHVHPXHYHVREUHHOFtUFXOR
(MHUFLFLR
• 6H DEUH XQ DUFKLYR )ODVK $6 VH OH QRPEUD PRYLPLHQWR0RXVHIOD \ VH
JXDUGDHQHOGLUHFWRULRGHWUDEDMR
• $KRUD VH DEUH XQ DUFKLYR $6 VH OH QRPEUD 0RYLPLHQWR0RXVHDV \ VH
JXDUGDHQODFDUSHWDPLV&ODVHV
• /tJXHQVHDPERVDUFKLYRVFRQHOFDPSR'RFXPHQWFODVV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.events.*;
import flash.geom.Point;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
• 2EVpUYHVH TXH VH HVWiQ LPSRUWDQGR WRGDV ODV FODVHV GHO SDTXHWH HYHQWV
SRUPHGLRGHODVWHULVFR/DIXQFLyQFRQVWUXFWRUDGLEXMDXQFtUFXORURMRFRQ
SL[HOHVGHGLiPHWUR(MHF~WHVHODSHOtFXOD\VHREVHUYDUiXQ´FtUFXORµHQ
VXHVFHQDULR(O´REMHWRGLVSDUDGRUµVHUiHQWRQFHVHO6SULWH´FtUFXORµ
• 3ULPHUR VH UHDOL]D OD IXQFLyQ OLVWHQHU )XHUD GH OD IXQFLyQ FRQVWUXFWRUD VH
HVFULEHODVLJXLHQWHIXQFLyQ
private function
detectaMovimientoMouse(objetoEvento:MouseEvent):void {
trace("Movimiento del mouse");
}
• 2EVpUYHVH TXH HV XQD IXQFLyQ SULYDGD \ QR UHJUHVD QLQJ~Q YDORU 6H HVWi
UHFLELHQGR HO REMHWR GHO HYHQWR HYHQW2EMHFW DXQTXH GH PRPHQWR QR VH
KD\DUHDOL]DGRQLQJXQDDFFLyQFRQVXLQIRUPDFLyQ
• 3RU ~OWLPR OtJXHVH DO REMHWR GLVSDUDGRU HO FtUFXOR URMR FRQ HO HYHQWR HV
GHFLU0RXVH(YHQW0286(B029(3DUDHOORVHHVFULEHODVLJXLHQWHOtQHDHQ
OD IXQFLyQ FRQVWUXFWRUD GHVSXpV GH DxDGLU HO ´FtUFXORµ D OD OLVWD GH
YLVXDOL]DFLyQ
circulo.addEventListener(MouseEvent.MOUSE_MOVE,detectaMovimi
entoMouse);
• (MHF~WHVH OD SHOtFXOD (Q HVWH HMHPSOR QyWHVH TXH HO PHQVDMH DSDUHFH
VRODPHQWH FXDQGR HO DSXQWDGRU GHO PRXVH VH PXHYH VREUH HO FtUFXOR (O
FtUFXORGHILQHORVOtPLWHVSDUDHO6SULWHHQHVWHFDVR
1RWD
/RV HYHQWRV GHO PRXVH VH JHQHUDQ GHVGH XQ REMHWR GH YLVXDOL]DFLyQ LQWHUDFWLYR
VRODPHQWHFXDQGRHOSXQWHURHVWiGHQWURGHORVOtPLWHVGHHVHREMHWR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
8QDSRVLEOHSUHJXQWDHQVXH[DPHQGHFHUWLILFDFLyQ$&(HVTXHVHOHSLGDXQDIRUPDGH
KDFHUDOJXQDWDUHDGH$FWLRQ6FULSW\FyPRVHKDFHDKRUDHQ$FWLRQ6FULSW3RU
HMHPSOR OH SXHGHQ SUHJXQWDU TXp FyGLJR VXVWLWX\H D ODV VLJXLHQWHV OtQHDV HQ
$FWLRQ6FULSW
PF&RQWDLQHUDWWDFK0RYLH%R[2F%R[PF&RQWDLQHUJHW1H[W+LJKHVW'HSWK
&RPR \D YLPRV HQ HO FDStWXOR DQWHULRU QHFHVLWDPRV XQ DGG&KLOG UHODFLRQDGR FRQ HO
REMHWR
2WURXVRFRP~QGHORVHYHQWRVGHOPRXVHVXUJHFXDQGRVHGHVHDLQVSHFFLRQDU
OD XELFDFLyQ GHO SXQWHUR GHO PRXVH SDUD FUHDU LQWHUDFWLYLGDG GHO PLVPR 3RU
HMHPSORSDUDGLEXMDUXQDOtQHDFRQHODSXQWDGRUGHOPRXVHODXELFDFLyQGHpVWHVH
WLHQHTXHFRQRFHUGHPRGRTXHODOtQHDVHSXHGDGLEXMDUGHIRUPDSUHFLVD+D\GRV
PDQHUDVGHGHWHUPLQDUODXELFDFLyQGHOSXQWHUR
8WLOL]DQGR ODV SURSLHGDGHV PRXVH; \ PRXVH< GLVSRQLEOHV HQ FXDOTXLHU
LQVWDQFLD'LVSOD\2EMHFW
8WLOL]DQGR ODV SURSLHGDGHV ORFDO; \ ORFDO< GLVSRQLEOHV GH OD LQVWDQFLD
0RXVH(YHQWSDVDGDVDOPDQHMDGRUGHHYHQWRGHOPRXVH
/DVSURSLHGDGHVPRXVH;\PRXVH<VHSXHGHQLQVSHFFLRQDUSDUDGHWHUPLQDUOD
XELFDFLyQ GHO FXUVRU GHO PRXVH UHODWLYR D OD HVTXLQD VXSHULRU L]TXLHUGD GHO REMHWR
'LVSOD\2EMHFW $PEDVSURSLHGDGHVVRQGHVyOROHFWXUDQRHVSRVLEOHHVWDEOHFHUOD
XELFDFLyQ GHO FXUVRU GHO PRXVH HV GHFLU PRYHU DO DSXQWDGRU SRU PHGLR GH
$FWLRQ6FULSWVyORH[DPLQDUODXELFDFLyQ3RUORWDQWRVXSyQJDVHXQUHFWiQJXORTXH
VHHQFXHQWUDHQODXELFDFLyQGHQWURGHOHVFHQDULR[ \ \HOXVXDULRPXHYH
HO DSXQWDGRU GHO PRXVH D OD XELFDFLyQ [ \ /D SURSLHGDG PRXVH; GHO
UHFWiQJXOR GHYXHOYH \ PRXVH< GHO UHFWiQJXOR LQIRUPD GH SRUTXH GHVGH OD
SHUVSHFWLYDGHOUHFWiQJXORHOPRXVHHVWiDSL[HOHVGHVGHODL]TXLHUGD\SL[HOHV
KDFLDDEDMRGHVGHODSDUWHVXSHULRU
/DV SURSLHGDGHV ORFDO; \ ORFDO< GH 0RXVH(YHQW VRQ WDPELpQ UHODWLYDV (Q HO
FDVR GH 0RXVH(YHQW ODV SURSLHGDGHV VRQ UHODWLYDV DO REMHWR GH YLVXDOL]DFLyQ TXH
HQYLyHOHYHQWR3RUORWDQWRFRQVLGpUHVHTXHXQUHFWiQJXORLQIRUPDGHPRXVH;GH
\HQYtDXQHYHQWRPRXVH0RYH/DSURSLHGDGORFDO;GHOHYHQWRHVWDPELpQ
3DUD REWHQHU OD SRVLFLyQ JOREDO GHO PRXVH GHVGH FRRUGHQDGDV ORFDOHV
XWLOtFHVH HO PpWRGR ORFDO7R*OREDO GH OD FODVH 'LVSOD\2EMHFW (O PpWRGR
ORFDO7R*OREDO DGRSWD D ORV REMHWRV GH OD FODVH IODVKJHRP3RLQW FRPR XQ
SDUiPHWUR TXH HVSHFLILFD ODV FRRUGHQDGDV ORFDOHV \ GHYXHOYH XQ QXHYR SXQWR FRQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
ODV FRRUGHQDGDV FRQYHUWLGDV DO HVSDFLR JOREDO (O VLJXLHQWH FyGLJR VH FHQWUD HQ HO
PDQHMDGRU GH HYHQWR \ GHPXHVWUD FyPR FRQYHUWLU ORFDO; \ ORFDO< HQ FRRUGHQDGDV
JOREDOHV
(MHUFLFLR
• 6H DEUH HO DUFKLYR 0RYLPLHQWR0RXVHDV GHO HMHUFLFLR DQWHULRU \ VH JUDED
FRPR0RYLPLHQWRV0RXVHDV
• /tJXHVHHODUFKLYRIODFRQHOFDPSR'RFXPHQWFODVV
• 0RGLItTXHVHODIXQFLyQGHWHFWD0RYLPLHQWR0RXVHFRQHOVLJXLHQWHFyGLJR\
VHJUDEDHODUFKLYR
private function
detectaMovimientoMouse(objetoEvento:MouseEvent):void {
trace( "local x: " + objetoEvento.localX );
trace( "local y: " + objetoEvento.localY );
// Crear el punto en que localToGlobal debería convertir
var localPoint:Point = new Point ( objetoEvento.localX,
objetoEvento.localY );
// Convertir a partir de las coordenadas
// locales del objeto de
// visualización que envía el evento a
// las coordenadas del escenario global
var globalPoint:Point =
objetoEvento.target.localToGlobal( localPoint );
trace( "global x: " + globalPoint.x );
trace( "global y: " + globalPoint.y );
}
• (MHF~WHVH OD SHOtFXOD 6H REVHUYDUi TXH HO SDQHO GH VDOLGD WLHQH ODV
FRRUGHQDGDVJOREDOHVFRQUHVSHFWRDOHVFHQDULR\ORFDOHVFRQUHVSHFWRDO
REMHWR
8Q HMHPSOR FRPSOHWR GH FUHDU LQWHUDFWLYLGDG SRU PHGLR GH JHVWLRQDU ORV
GLIHUHQWHV HYHQWRV GHO PRXVH VH SXHGH GHPRVWUDU FRQ HO VHQFLOOR SURJUDPD GH
GLEXMRTXHVLJXH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
6LHPSUHTXHVHSXOVDHOPRXVHVHLQLFLDHOGLEXMR$PHGLGDTXHHOXVXDULR
PXHYH HO DSXQWDGRU GHO PRXVH SRU OD SDQWDOOD VH GLEXMD XQD OtQHD TXH VLJXH HO
PRYLPLHQWR GHO FXUVRU &XDQGR HO XVXDULR VXHOWD HO ERWyQ GHO PRXVH HO GLEXMR VH
GHWLHQH
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$6\VHJXDUGDHQHODUFKLYRGHWUDEDMRFRQHO
QRPEUHGLEXMDUIOD
• $KRUD VH DEUH XQ DUFKLYR $6 \ VH JXDUGD HQ OD FDUSHWD PLV&ODVHV FRQ HO
QRPEUHGH'LEXMDUDV
• /tJXHQVHDPERVDUFKLYRVHQHOFDPSR'RFXPHQW&ODVV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHHVTXHOHWRGHFODVH
package misClases{
import flash.display.Sprite;
import flash.events.MouseEvent;
• 2EVpUYHVHTXHVHHVWiFUHDQGRXQDYDULDEOHERROHDQDSDUDGHWHUPLQDUVLHO
XVXDULRHVWiGLEXMDQGRRQR
• $KRUD VH HVFULEHQ ODV VLJXLHQWHV GHILQLFLRQHV GHQWUR GH OD IXQFLyQ
FRQVWUXFWRUD\VHGHILQHQODVOLJDVKDFLDORVOLVWHQHUV(OREMHWRGLVSDUDGRU
GHOHYHQWRVHUiHOHVFHQDULRPLVPR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
public function Dibujar( ) {
// Configurar el estilo de línea
graphics.lineStyle( 2, 0xFFCC33 );
// Dibujar es false hasta que el usuario pulsa el mouse
_dibujar = false;
// Añadir listeners del mouse en el objeto de escenario
para ser
//notificado de cualquier evento del mouse que sucede
mientras el
//apuntador se encuentra sobre toda la película
stage.addEventListener(MouseEvent.MOUSE_DOWN,iniciaDibu
jo);
stage.addEventListener( MouseEvent.MOUSE_MOVE, dibujo);
stage.addEventListener( MouseEvent.MOUSE_UP,
detieneDibujo);
}
• /RV HYHQWRV TXH VH GHVHDQ ´FDSWXUDUµ VRQ FXDQGR HO XVXDULR SXOVH HO
DSXQWDGRUGHOPRXVHFXDQGRORPXHYD\FXDQGROROHYDQWHSDUDGHMDUGH
GLEXMDU
• 6H KDFH HO OLVWHQHU SDUD LQLFLDU HO GLEXMR 6H HVFULEH OD VLJXLHQWH IXQFLyQ
IXHUDGHODIXQFLyQFRQVWUXFWRUD\GHQWURGHODFODVH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
• 2EVpUYHVH TXH VH HVWi YDOLGDQGR VL HO XVXDULR SXOVy HO HVFHQDULR FRQ HO
PRXVHFRQODYDULDEOHBGLEXMDU3RU~OWLPRVHHVFULEHHOOLVWHQHUSDUDGHMDU
GHGLEXMDU6LPSOHPHQWHVHPRGLILFDUiODYDULDEOHGHFRQWURO
public function detieneDibujo( event:MouseEvent ):void {
_dibujar = false;
}
(MHF~WHVH HO SURJUDPD \ YHULItTXHVH TXH VH SXHGH GLEXMDU FRQ HO DSXQWDGRU GHO
PRXVH6HJXDUGDQ\FLHUUDQDPERVDUFKLYRV
$UUDVWUDU\VROWDUREMHWRVFRQHODSXQWDGRUGHOPRXVH
&UHDU HO FRPSRUWDPLHQWR GH DUUDVWUDU \ VROWDU HQ $FWLRQ6FULSW QR HV WDQ GLItFLO
FRPRVHSRGUtDSHQVDU/DFODVH6SULWHDOLJXDOTXHVXKHUPDQLWDPD\RU0RYLH&OLS
LQFOX\H PpWRGRV HVSHFtILFDPHQWH SDUD OD ILQDOLGDG GH DUUDVWUDU \ VROWDU REMHWRV D
VDEHUVWDUW'UDJ\VWRS'UDJ
(O PpWRGR VWDUW'UDJ VH SXHGH LQYRFDU HQ FXDOTXLHU LQVWDQFLD 6SULWH SDUD
KDFHUTXHVLJDDODSXQWDGRUGHOPRXVHDOUHGHGRUGHODSDQWDOODFUHDQGRHOHIHFWR
GHDUUDVWUH3DUDGHMDUGHDUUDVWUDUVHLQYRFDHOPpWRGRVWRS'UDJHQODLQVWDQFLD
6SULWH'HVSXpVGHTXHODRSHUDFLyQGHDUUDVWUHHVWpFRPSOHWDVHSXHGHH[DPLQDU
ODSURSLHGDGGURS7DUJHWSDUDGHWHUPLQDUHOREMHWRVREUHHOTXHVHGHMyFDHU(OYDORU
GH GURS7DUJHW HV GH XWLOLGDG SDUD GHWHUPLQDU VL XQD RSHUDFLyQ GH VROWDU HV YiOLGD
FRPRVROWDUXQLFRQRGHFDUSHWDHQXQDSDSHOHUDSDUDHOLPLQDUOR
&XDQGRVHLQYRFDVWDUW'UDJQRVHWLHQHTXHHVSHFLILFDUQLQJ~QSDUiPHWURVLQ
HPEDUJRHOPpWRGRDFHSWDKDVWDGRVSDUiPHWURV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
ORFN&HQWHU
ORFN&HQWHU &XDQGR HV WUXH HO FHQWUR GH OD UHSUHVHQWDFLyQ GLJLWDO VH
EORTXHDHQODSRVLFLyQGHOPRXVHLQGHSHQGLHQWHPHQWHGHGyQGHHOXVXDULR
SXOVH HO PRXVH &XDQGR HV IDOVH OD UHSUHVHQWDFLyQ GLJLWDO VLJXH DO PRXVH
GHVGH OD XELFDFLyQ HQ GRQGH HO XVXDULR KL]R SULPHUR FOLF (O YDORU
SUHGHWHUPLQDGRHVIDOVH
ERXQGV
ERXQGV /D UHJLyQ GH OD FODVH 5HFWDQJOH GRQGH VH GHVHD UHVWULQJLU HO
DUUDVWUH 6SULWH QR VH SXHGH DUUDVWUDU IXHUD GH HVWD UHJLyQ (O YDORU SRU
GHIDXOWHVQXOOORTXHVLJQLILFDTXHQRH[LVWHUHVWULFFLyQGHiUHD
(O VLJXLHQWH FyGLJR GH HMHPSOR XWLOL]D HVWRV PpWRGRV SDUD HVWDEOHFHU XQ
VHQFLOORFRPSRUWDPLHQWRGHDUUDVWUDU\VROWDU([LVWHQWUHVUHFWiQJXORVDODL]TXLHUGD
TXH SXHGHQ VHU DUUDVWUDGRV URMR YHUGH \ D]XO (O UHFWiQJXOR GH OD GHUHFKD HV
EODQFR\VLUYHFRPRHOiUHDGHVWLQRGRQGHVHYDQDVROWDUORVUHFWiQJXORVGHFRORU
$UUDVWUDU \ VROWDU XQ UHFWiQJXOR GH FRORU HQ HO UHFWiQJXOR EODQFR FRORUHD HO
UHFWiQJXOREODQFRGHOPLVPRFRORUGHOUHFWiQJXORHQHOTXHVHKDGHMDGRFDHU
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$6\VHJXDUGDHQHODUFKLYRGHWUDEDMRFRQHO
QRPEUHGLEXMDUIOD
• $KRUDVHDEUHXQDUFKLYR$6\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUHGH'LEXMDUDV
• /tJXHQVHDPERVDUFKLYRVHQHOFDPSR'RFXPHQW&ODVV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHHVTXHOHWRGHODIXQFLyQ
package misClases{
import flash.display.Sprite;
import flash.display.DisplayObject;
import flash.events.MouseEvent;
import flash.geom.Point;
import flash.filters.DropShadowFilter;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
3ULPHURVHFUHDQODVLQVWDQFLDVYDFtDVGHORVUHFWiQJXORV\GHOREMHWRSXQWRGRQGH
VH DOPDFHQDUiQ ODV FRRUGHQDGDV GHO FXDGUR FXDQGR VH OH VXHOWH 1yWHVH TXH OD
IXQFLyQFRQVWUXFWRUDVyOROODPDGRVIXQFLRQHV(VWRFRQVWLWX\HXQDEXHQD SUiFWLFD
GH SURJUDPDFLyQ SXHV ODV IXQFLRQHV FRQVWUXFWRUDV QR GHEHQ HVWDU DWLERUUDGDV GH
FyGLJR
$KRUD GHEDMR GH OD IXQFLyQ FRQVWUXFWRUD \ GHQWUR GH OD FODVH VH HVFULEH OD
IXQFLyQSDUDFUHDUORVFXDWURFXDGURV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
_verde.graphics.beginFill(0x00FF00);
_verde.graphics.drawRect(0,30,10,10);
_verde.graphics.endFill();
_azul=new Sprite;
_azul.graphics.beginFill(0x0000FF);
_azul.graphics.drawRect(0,50,10,10);
_azul.graphics.endFill();
_blanco=new Sprite;
_blanco.graphics.beginFill(0xFFFFFF);
_blanco.graphics.drawRect(20,10,50,50);
_blanco.graphics.endFill();
addChild(_rojo);
addChild(_verde);
addChild(_azul);
addChild(_blanco);
}
(VWRQRHVFRPSOLFDGR\DTXHVyORVHWUDWDGHGLEXMDUORVFXDWURUHFWiQJXORV3XHGH
FDPELDUVHHOFRORUGHOFXDGUREODQFRSDUDTXHQRVHFRQIXQGDFRQVXHVFHQDULRR
FDPELDUHOFRORUGHOHVFHQDULRPLVPR3DUDHOORVHHVFULEHODIXQFLyQGHVSXpVGHOD
DQWHULRUSDUDOODPDUDORVOLVWHQHUV
private function addEventListeners():void {
_rojo.addEventListener(MouseEvent.MOUSE_DOWN,onArrastra);
_rojo.addEventListener(MouseEvent.MOUSE_UP,onSuelta);
_verde.addEventListener(MouseEvent.MOUSE_DOWN,onArrastra);
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
_verde.addEventListener(MouseEvent.MOUSE_UP,onSuelta);
_azul.addEventListener(MouseEvent.MOUSE_DOWN,onArrastra);
_azul.addEventListener(MouseEvent.MOUSE_UP,onSuelta);
}
2EVpUYHVHTXHVyORVHQHFHVLWDQGRVIXQFLRQHVODIXQFLyQRQ$UUDVWUDFRQODTXH
VHLQLFLyHODUUDVWUHGHODILJXUD\ODIXQFLyQRQ6XHOWDFRQODFXDOVHVROWyHOREMHWR
$PEDVIXQFLRQDQFRQORVWUHVREMHWRV6HHVFULEHODIXQFLyQ
• /RSULPHUR TXHVHKDFHHV JXDUGDUODVFRRUGHQDGDVDFWXDOHVHQHOREMHWR
SRLQW3DUDGLVWLQJXLUFXiOGHORVFXDGURVHVWiVLHQGRDUUDVWUDGRVHXWLOL]DHO
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
SDUiPHWUR WDUJHW GHO REMHWR GH HYHQWR \ GH HVWD PDQHUD VH VDEH FXiO GH
ORVREMHWRVGLVSDUyHOHYHQWR/XHJRVHLQLFLDODSURSLHGDGGHDUUDVWUH\VH
DxDGHXQILOWURGHVRPEUD3RU~OWLPRVHPXHYHHOREMHWRKDVWDDUULEDGHOD
OLVWDGHYLVXDOL]DFLyQ
• 6H HVFULEH OD VLJXLHQWH IXQFLyQ SDUD FRQWURODU HO DWHUUL]DMH GHO FXDGUR \
FDPELDUHOFRORUGHOFXDGUREODQFRVLHVTXHHVWRSURFHGH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
_blanco.graphics.drawRect(20,10,50,50);
_blanco.graphics.endFill();
}
// Devolver la representación digital
// a su ubicación original
event.target.x=startingLocation.x;
event.target.y=startingLocation.y;
}
• &XDQGR VH GHWHFWD HO HYHQWR PRXVH8S FRPLHQ]D OD RSHUDFLyQ GH VROWDU
PHGLDQWHHOPpWRGRRQ6XHOWD(QSULPHUOXJDUHOUHFWiQJXORKDLQYRFDGR
VWRS'UDJ SDUD GHWHQHU HO FRPSRUWDPLHQWR GH VHJXLU GHO DSXQWDGRU GHO
PRXVH \ ORV ILOWURV VH HOLPLQDQ SDUD LQYHUWLU HO HIHFWR GH SURIXQGLGDG $
FRQWLQXDFLyQ OD SURSLHGDG GURSW7DUJHW GHO UHFWiQJXOR VH H[DPLQD SDUD
GHWHUPLQDU VL VH KD VROWDGR VREUH HO UHFWiQJXOR EODQFR 6L HO UHFWiQJXOR
EODQFR HV GURS7DUJHW HO UHFWiQJXOR EODQFR WLHQH HO PLVPR FRORU TXH HO
UHFWiQJXORTXHVHVROWyVREUHpO3RU~OWLPRSXHVWRTXHHOUHFWiQJXORHVWi
IXHUD GH SRVLFLyQ DKRUD DO VHJXLU HO DSXQWDGRU GHO PRXVH VH UHVWDXUD OD
XELFDFLyQ GH SDUWLGD RULJLQDO (O FyGLJR DQWHULRU IXQFLRQD FRUUHFWDPHQWH
SHURH[LVWHQGRVSHTXHxRVSUREOHPDVODSURSLHGDGGURS7DUJHWQRVLHPSUH
HVILDEOH\DUUDVWUDUHVXQSURFHVRSRFRSUHFLVR
/D SURSLHGDG GURSW7DUJHW FDPELD FRQWLQXDPHQWH GXUDQWH HO PRYLPLHQWR
GHVSXpV GH HQYLDU VWDUW'UDJ 3DUD YHU HVWH HIHFWR HQ DFFLyQ VH UHDOL]DQ ORV
VLJXLHQWHVSDVRV
6HOHFFLRQDUHOUHFWiQJXORURMR
0RYHUORVREUHHOUHFWiQJXOREODQFR
0RYHU HO DSXQWDGRU GHO PRXVH PiV D OD GHUHFKD SDUD TXH HO UHFWiQJXOR
URMRHVWpIXHUDGHOiUHDGHOUHFWiQJXOREODQFR
&RQHOUHFWiQJXORURMRIXHUDGHOUHFWiQJXOREODQFRVROWDUOR
6H SXHGH YHU TXH HO UHFWiQJXOR EODQFR HVWi GH FRORU URMR SRUTXH GURS7DUJHW VLJXH
KDFLHQGR UHIHUHQFLD DO UHFWiQJXOR EODQFR DXQTXH HO UHFWiQJXOR URMR VH KD VROWDGR
IXHUDGHORVOtPLWHVGHOUHFWiQJXOREODQFR
3DUD DMXVWDU HVWH FRPSRUWDPLHQWR VH XWLOL]D HO PpWRGR KLW7HVW3RLQW SDUD
GHWHUPLQDU VL OD XELFDFLyQ GHO DSXQWDGRU GHO PRXVH HVWi GHQWUR GH ORV OtPLWHV GHO
REMHWRGHYLVXDOL]DFLyQGURS7DUJHW(OPpWRGRKLW7HVW3RLQWWRPDXQDXELFDFLyQ[[\ \
TXHGHYXHOYHXQYDORUYHUGDGHURWUXHRIDOVRIDOVHLQGLFDQGRVLODXELFDFLyQFDH
GHQWUR GH ORV OtPLWHV GHO REMHWR 8Q WHUFHU SDUiPHWUR ERROHDQR RSFLRQDO VH SXHGH
XWLOL]DU SDUD HVSHFLILFDU FyPR VH FDOFXOD HO iUHD DFWLYD (VSHFLILFDU IDOVH FRPR HO
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
WHUFHU SDUiPHWUR TXH XWLOL]DUi HO UHFWiQJXOR OtPLWH GHO REMHWR PLHQWUDV TXH WUXH
XWLOL]DODIRUPDDFWXDOGHOSURSLRREMHWR(OYDORUSUHGHWHUPLQDGRHVIDOVH
'HQWUR GHO PpWRGR RQ6XHOWD TXH FRPSUXHED VL HO UHFWiQJXOR FRORUHDGR VH
GHMy FDHU GH PDQHUD FRUUHFWD VH DxDGH XQD OODPDGD D KLW7HVW3RLQW GHQWUR GHO
FRQGLFLRQDO\pVWHFRPSUXHEDHOGURS7DUJHW&RQHVWRVHDVHJXUDGHTXHHOFXUVRU
GHOPRXVHVLJXHGHQWURGHORVOtPLWHVGHOUHFWiQJXOREODQFRDQWHVGHSHUPLWLUVROWDU
2WUR SUREOHPD FRQ HO FyGLJR HV OD DFWXDOL]DFLyQ PRYLGD GH OD SDQWDOOD GXUDQWH HO
PRYLPLHQWR GHO DSXQWDGRU GHO PRXVH (VWR VH GHEH D TXH ORV HYHQWRV GHO PRXVH
RFXUUHQ LQGHSHQGLHQWHPHQWH GHO SURFHVR GH UHQGHU (O tQGLFH GH PXHVWUHR GH OD
SHOtFXODGHWHUPLQDODIUHFXHQFLDFRQODTXHVHDFWXDOL]DODSDQWDOODSRUORTXHVLHO
DSXQWDGRU GHO PRXVH FDPELD OD YLVXDOL]DFLyQ OD YLVXDOL]DFLyQ DFWXDOL]DGD QR
DSDUHFHUi KDVWD TXH VH KD\D UHIUHVFDGR OD SDQWDOOD VHJ~Q OR HVSHFLILFDGR SRU HO
tQGLFHGHPXHVWUHRRIRWRJUDPDVSRUVHJXQGR>)36@
3DUD FRPEDWLU HVWH SUREOHPD OD FODVH 0RXVH(YHQW LQFOX\H HO PpWRGR
XSGDWH$IWHU(YHQW 1RUPDOPHQWH LQYRFDGR FXDQGR VH JHVWLRQD HO HYHQWR
PRXVH0RYHXSGDWH$IWHU(YHQWQRWLILFDDO)ODVK3OD\HUTXHODSDQWDOODKDFDPELDGR
\OHLQGLFDTXHYXHOYDDGLEXMDU(VWRHYLWDHOUHWUDVRTXHRFXUUHFXDQGRVHHVSHUDD
TXH HO tQGLFH GH PXHVWUHR DFWXDOLFH OD SDQWDOOD QRUPDOPHQWH GHVSXpV GHO
PRYLPLHQWRGHODSXQWDGRUGHOPRXVH
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
1RROYLGHUHSDVDUODVQXHYDVFDUDFWHUtVWLFDVGHOSDTXHWH
3RUHMHPSORVLYDDSUHVHQWDUHOH[DPHQGHFHUWLILFDFLyQSDUD&6OHSUHJXQWDUiQVREUH
ODKHUUDPLHQWDGHFRRVREUHODVQXHYDVIRUPDVGHDQLPDFLyQ
3RUORJHQHUDOHOH[DPHQVHUiGHGHODVKHUUDPLHQWDV\GH$FWLRQ6FULSW
*HVWLRQDUHOHYHQWRHQWHU)UDPH
(Q $FWLRQ6FULSW JHVWLRQDU HO HYHQWR HQWHU)UDPH HUD EDVWDQWH VHQFLOOR
6LPSOHPHQWH VH WHQtD TXH FUHDU XQD IXQFLyQ GH OtQHD GH WLHPSR GHQRPLQDGD
RQ(QWHU)UDPH \ VH LQYRFDED DXWRPiWLFDPHQWH FDGD YH] TXH HPSH]DED XQ QXHYR
IRWRJUDPD (Q $FWLRQ6FULSW VH WLHQH PXFKR PiV FRQWURO VREUH ORV GLIHUHQWHV
HYHQWRVHQXQDSHOtFXODSHURHVQHFHVDULRDOJRPiVGHWUDEDMRSDUDDFFHGHUDHOORV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
6LHVWiIDPLOLDUL]DGRFRQODFODVH(YHQW'LVSDWFKHUGH$FWLRQ6FULSWQRVHGHEHUtD
WHQHUQLQJ~QSUREOHPDFRQHOPpWRGRGHJHVWLRQDUHYHQWRVGH$FWLRQ6FULSW'H
KHFKR (YHQW'LVSDWFKHU KD SDVDGR GH VHU XQD FODVH GHILQLGD H[WHUQDPHQWH D VHU
XQD FODVH EDVH SDUD WRGRV ORV REMHWRV LQWHUDFWLYRV FRPR LPiJHQHV GH PDSDV GH
ELWV
3DUD UHVSRQGHU DO HYHQWR HQWHU)UDPH VH GHEH GHFLU D OD DSOLFDFLyQ TXH
´HVFXFKHµ HVH HYHQWR \ HVSHFLILTXH TXp PpWRGR GHVHD TXH VH LQYRTXH FXDQGR
RFXUUHHOHYHQWR
(VWR VH UHDOL]D FRQ HO PpWRGR DGG(YHQW/LVWHQHU FRPR \D VH KDEtD
PHQFLRQDGRTXHVHGHILQHGHODVLJXLHQWHIRUPD
addEventListener(evento:String,listener:Function)
1RWDV
([LVWHQ SDUiPHWURV DGLFLRQDOHV TXH SXHGHQ EXVFDUVH HQ ORV DUFKLYRV GH D\XGD
SHURpVWDHVODLPSOHPHQWDFLyQPtQLPD(OSDUiPHWURHYHQWRHVHOWLSRGHHYHQWRTXH
VH GHVHD HVFXFKDU (Q HVWH FDVR VHUtD OD FDGHQD HQWHU)UDPH 6LQ HPEDUJR XWLOL]DU
FDGHQDV OLWHUDOHV FRPR pVD DEUH HO FyGLJR D HUURUHV TXH HO FRPSLODGRU QR SXHGH
FDSWXUDU
6LDFFLGHQWDOPHQWHVHHVFULEHHQWHUIUDQHSRUHMHPSORODDSOLFDFLyQVLPSOHPHQWH
HVSHUDUtD GHWHFWDU XQ HYHQWR HQWHUIUDQH HO FXDO QR H[LVWH 3DUD HYLWDU HVWR HV
UHFRPHQGDEOHTXHVHXWLOLFHQODVSURSLHGDGHVHVWiWLFDVFRQVWDQWHVGHODFODVH(YHQW
(V QHFHVDULR LPSRUWDU D OD FODVH (YHQW SDUD TXH SXHGD LQYRFDU HO PpWRGR
DGG(YHQW/LVWHQHUGHODVLJXLHQWHIRUPD
addEventListener(Event.ENTER_FRAME, onEnterFrame);
$KRUDVLDFFLGHQWDOPHQWHVHHVFULEH(YHQW(17(5B)5$0(HOFRPSLODGRUVHTXHMDUiGH
TXHQRH[LVWHHVDSURSLHGDG(OVHJXQGRSDUiPHWURRQ(QWHU)UDPH
(QWHU)UDPHKDFHUHIHUHQFLDD
(QWHU)UDPH
RWURPpWRGRHQODFODVH2EVpUYHVHTXHHQ$FWLRQ6FULSWQRH[LVWHQLQJ~QUHTXLVLWR
SDUDTXHHVWHPpWRGRQRVHOODPHRQ(QWHU)UDPH
$TXtVHQRPEUyDODIXQFLyQGHOOLVWHQHUFRPRRQ(QWHU)UDPHSHURQDGDWLHQH
TXHYHUFRQHODQWLJXRGHWHFWRUGHHYHQWRV6yORHVXQSRFRGHQRVWDOJLD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
$HVWHPpWRGRVHOHSDVDXQDLQVWDQFLDGHODFODVH(YHQWFXDQGRVHLQYRFD3RU
ORWDQWRVHQHFHVLWDUiLPSRUWDUHVDFODVH\GHILQLUHOPpWRGRSDUDTXHDFHSWHXQREMHWR
HYHQW
import flash.events.Event;
private function onEnterFrame (e:Event ):void
{
}
7DPSRFR KD\ XQD FRQYHQFLyQ HVWDEOHFLGD SDUD QRPEUDU ORV REMHWRV GH HYHQWRV
HYHQW2EMHFW(QDOJXQRVFDVRVORVOODPDQ´HYHQWµR´HYHQW2EMHFWµ$TXtSUHIHULPRV
XVDU XQD VLPSOH ´Hµ 8VWHG VHOHFFLRQH OD QRPHQFODWXUD TXH PiV OH FRQYHQ]D \ VHD
FRQVLVWHQWHFRQHOOD
(O REMHWR H FRQWLHQH LQIRUPDFLyQ UHIHUHQWH DO HYHQWR TXH SXHGH VHU GH XWLOLGDG
SDUDJHVWLRQDUOR,QFOXVRVLQRVHXWLOL]DGHQWURGHODIXQFLyQRPpWRGRVHGHEHUtDKDFHU
TXHHOOLVWHQHUORDFHSWH
(Q YHUVLRQHV DQWHULRUHV KXER XQ SUREOHPD FRQ HO iPELWR GH DSOLFDFLyQ GH OD
IXQFLyQ XWLOL]DGD SDUDJHVWLRQDUHO HYHQWR TXHDPHQXGR UHTXHUtDHO XVR GHODFODVH
'HOHJDWH(Q$FWLRQ6FULSWHOiPELWRGHDSOLFDFLyQGHOPpWRGRGHJHVWLyQHVODFODVH
GHODTXHHVXQPpWRGRSRUORTXHQRKD\QHFHVLGDGGHXWLOL]DU'HOHJDWHSDUDFRUUHJLU
ORVSUREOHPDVGHiPELWRGHDSOLFDFLyQ
$ FRQWLQXDFLyQ VH SUHVHQWD XQD VHQFLOOD DSOLFDFLyQ TXH GLEXMD OtQHDV
DOHDWRULDVVXFHVLYDVXWLOL]DQGRWRGRVORVFRQFHSWRVDQWHULRUHV
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$6\VHJXDUGDHQODFDUSHWDGHWUDEDMRFRPR
HQWHUIUDPHIOD
• $KRUD VH DEUH XQ DUFKLYR $6 \ VH JXDUGD HQ OD FDUSHWD PLV&ODVHV FRQ HO
QRPEUH(QWHU)UDPHDV
• /LJXH DPERV DUFKLYRV HQ HO FDPSR 'RFXPHQW FODVV GHO ,QVSHFWRU GH
SURSLHGDGHV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
package misClases{
import flash.display.Sprite;
import flash.events.Event;
}
private function onEnterFrame(event:Event):void {
graphics.lineTo(Math.random()*400,Math.random() *400);
}
}
}
• $OHMHFXWDUODSHOtFXODVHREVHUYDUiTXHVHGLEXMDQOtQHDVQHJUDVHQIRUPD
DOHDWRULDHQXQFXDGURGHïSL[HOHV
$TXtQXHYDPHQWHXWLOL]DPRVHOPpWRGRUDQGRPGHODFODVHHVWiWLFD0DWK
5HVSRQGHUDHYHQWRVGHOPRXVH
*HVWLRQDU HYHQWRV GHO PRXVH R GHO WHFODGR HV PX\ VLPLODU D JHVWLRQDU HO HYHQWR
HQWHU)UDPHFRPRVHKDWUDWDGRDQWHULRUPHQWHSHURUHTXLHUHDOJRPiVGHWUDEDMR
3DUD HYHQWRV GHO PRXVH OD FODVH SULQFLSDO GH OD DSOLFDFLyQ QR ODV UHFLELUi
GLUHFWDPHQWH0RXVHSRUORTXHVHGHEH´HVFXFKDUODVµHQRWURREMHWRHQODOLVWDGH
YLVXDOL]DFLyQ(OVLJXLHQWHHMHPSORFUHDXQDLPDJHQGHPDSDGHELWVODDxDGHDOD
OLVWDGHYLVXDOL]DFLyQ\GLEXMDXQUHFWiQJXORHQHOOD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$6\VHJXDUGDHQODFDUSHWDGHWUDEDMRFRPR
HQWHUIUDPHIOD
• $KRUD VH DEUH XQ DUFKLYR $6 \ VH JXDUGD HQ OD FDUSHWD PLV&ODVHV FRQ HO
QRPEUH0RYLPLHQWR0RXVHDV
• /tJXHQVH DPERV DUFKLYRV HQ HO FDPSR 'RFXPHQW FODVV GHO ,QVSHFWRU GH
SURSLHGDGHV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHHVTXHOHWRGHODFODVH
package misClases{
import flash.display.Sprite;
import flash.events.MouseEvent;
• 6HGLEXMDUiVREUHXQREMHWR6SULWH6XVWLW~\DVHODIXQFLyQFRQVWUXFWRUD
SRUODVLJXLHQWH
public function MovimientoMouse2() {
_sprite=new Sprite;
addChild(_sprite);
_sprite.graphics.beginFill(0xffffff);
_sprite.graphics.drawRect(0,0,400,400);
_sprite.graphics.endFill();
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
_sprite.addEventListener(MouseEvent.MOUSE_DOWN,iniciaDi
bujo);
_sprite.addEventListener(MouseEvent.MOUSE_UP,terminaDi
bujo);
}
• 6HGHILQHXQ6SULWHGHïGHFRORUEODQFR6LVHGHVHDSXHGH
FDPELDUVH HO FRORU 7DPELpQ VH DxDGHQ GRV GHWHFWRUHV XQR SDUD
FXDQGR HO XVXDULR KDJD FOLF VREUH HO 6SULWH \ RWUR SDUD FXDQGR OR
OHYDQWH $KRUD VH KDFHQ ODV UXWLQDV SDUD PDQHMDU ORV HYHQWRV 'HEDMR
GH OD IXQFLyQ FRQVWUXFWRUD SHUR GHQWUR GH OD FODVH VH HVFULEH OD
VLJXLHQWHIXQFLyQ
private function iniciaDibujo(event:MouseEvent):void {
_sprite.graphics.lineStyle(1,0,1);
_sprite.graphics.moveTo(mouseX,mouseY);
_sprite.addEventListener(MouseEvent.MOUSE_MOVE,dibuja);
}
• &RQHVWRVHPXHYHHO$3,GHGLEXMRDODFRRUGHQDGDGHODSXQWDGRUGHO
PRXVH\VHOODPDDODUXWLQDTXHGLEXMDUi$FRQWLQXDFLyQVHHVFULEHOD
IXQFLyQGHGLEXMRGHEDMRGHODDQWHULRU
private function dibuja(event:MouseEvent):void {
_sprite.graphics.lineTo(mouseX,mouseY);
}
• 6L VH EORTXHDUD HO OLVWHQHU TXH OODPD D OD IXQFLyQ WHUPLQD'LEXMR \ OD
DSOLFDFLyQVHFRUULHUDVHGLEXMDUtDFRQHODSXQWDGRUGHOPRXVH\QRVH
GHWHQGUiGHGLEXMDUORFXDOUHVXOWDXQSRFRGLItFLO3DUDHOORVHHODERUD
ODUXWLQDTXHGHWLHQHHOGLEXMR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0DQHMRGHHYHQWRV
• &RPRSXHGHREVHUYDUVHVyOREDVWDFRQERUUDUHOGHWHFWRUGHOHYHQWR\
YROYHUDHPSH]DU
(VWRFUHDXQVHQFLOORSURJUDPDGHGLEXMRGLULJLGRSRUHYHQWRV
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
3DUDVXH[DPHQGHFHUWLILFDFLyQQRROYLGHUHSDVDUORVFRQFHSWRV´VHQFLOORVµSHURTXH
QRVLHPSUHDSOLFDPRVSRUHMHPSOR
¢5HFXHUGDSDUDTXpVLUYHQODVRSFLRQHVGHFDFKH$V%LWPDS\²VOLFHVFDOLQJ"
5HVSRQGHUDHYHQWRVGHOWHFODGR
(OVLJXLHQWHHMHPSORPXHVWUDXQDVHQFLOODFODVH TXHHVFXFKDHOHYHQWRNH\'RZQ\
VLJXHODSLVWDGHOFyGLJRGHFDUiFWHUSDUDHVDWHFOD
(VWR WDPELpQ GHPXHVWUD FyPR XWLOL]DU DOJXQRV GDWRV HQ HO REMHWR HYHQW
SDVDGRVDOPpWRGRGHPDQHMDGRU2EVpUYHVHTXHORVHYHQWRVGHWHFODGRXWLOL]DQOD
FODVH.H\ERDUG(YHQW
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$6\VHJXDUGDHQODFDUSHWDGHWUDEDMRFRPR
WHFODGRIOD
• $KRUD VH DEUH XQ DUFKLYR $6 \ VH JXDUGD HQ OD FDUSHWD PLV&ODVHV FRQ HO
QRPEUH7HFODGRDV
• /tJXHQVH DPERV DUFKLYRV HQ HO FDPSR 'RFXPHQW FODVV GHO ,QVSHFWRU GH
SURSLHGDGHV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHHVTXHOHWRGHODFODVH
package misClases{
import flash.display.Sprite;
import flash.events.KeyboardEvent;
public class Teclado extends Sprite {
public function Teclado() {
stage.focus=this;
addEventListener(KeyboardEvent.KEY_DOWN,onKeyDown);
}
private function
onKeyDown(event:KeyboardEvent):void {
trace("key down:" + event.charCode);
}
}
}
• $OHMHFXWDUORVHREVHUYDUiTXHKD\WHFODVTXHQR´DGPLWHµORFXDOVHGHEHD
TXHVHHVWiHMHFXWDQGRODSHOtFXODGHVGHHO,'(
&RPR HMHPSOR GHO XVR GH ORV PDQHMDGRUHV GH HYHQWRV SURJUDPDPRV HO FOiVLFR
MXHJRGHPHPRULD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
-XHJRGHPHPRULD
-XHJRGHPHPRULD
(Q HVWH HMHPSOR KDUHPRV HO FOiVLFR MXHJR GH PHPRULD GRQGH WHQHPRV SDUHV
LJXDOHV GH FDUWDV ODV FXDOHV EDUDMDPRV \ FRORFDPRV ERFD DEDMR /D ILQDOLGDG GHO
MXHJRHVHQFRQWUDUWRGRVORVSDUHVYROWHDQGRVyORGRVFDUWDVDODYH]\UHFRUGDQGR
ODXELFDFLyQGHODFDUWDVLPLODUHQHOPHQRUQ~PHURSRVLEOHGHLQWHQWRV3DUDHOOR
VLJDORVVLJXLHQWHVSDVRV
• 3ULPHUR KDUHPRV OD FODVH EDVH $EUD XQ DUFKLYR QXHYR )ODVK $FWLRQ6FULSW
\QyPEUHORFRPRPHPRULDIODGHQWURGHVXFDUSHWDGHWUDEDMR
• 'HQWUR GHO HVFHQDULR KDJD XQ UHFWiQJXOR GH ï GH FXDOTXLHU FRORU \
FRQYLpUWDORHQ0RYLH&OLS1RPEUHDO0RYLH&OLSFRPR&DUWD\H[SyUWHORSDUD
$FWLRQ6FULSW (Q OD GHILQLFLyQ GH FODVH GHO REMHWR HVFULED HO LGHQWLILFDGRU
&DUWDFRPRVHYHHQOD)LJ
)LJXUD&UHDFLyQGHODFDUWD
)LJXUD
• (QODOtQHDGHWLHPSRGHO0RYLH&OLSJHQHUHIRWRJUDPDVFODYHFDGDXQR
FRQ XQ VtPEROR GLIHUHQWH D SDUWLU GHO VHJXQGR IRWRJUDPD FODYH (VWRV
VtPERORV VHUiQ HO FRQWHQLGR GH QXHVWUDV FDUWDV \ SXHGHQ VHU GHVGH
Q~PHURVKDVWDLPiJHQHVGHPDSDVGHELWVVLPLODUHVDOD)LJ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
)LJXUD&RQWHQLGRGHODFDUWD
)LJXUD
• $EULPRV XQ DUFKLYR $FWLRQ6FULSW \ QyPEUHOR FRPR 0HPRULDDV UHFXHUGH
TXHODPD\~VFXODHQHOQRPEUHGHDUFKLYRHVREOLJDWRULD
• (VFULEDHOVLJXLHQWHFyGLJRSDUDKDFHUHOHVTXHOHWRGHODFODVHHQHODUFKLYR
DV
package{
import flash.display.MovieClip;
public class Memoria extends MovieClip{
public function Memoria(){
}
}
}
• /LJXH OD SHOtFXOD EDVH D OD FODVH FRPR 'RFXPHQW &ODVV FRQ OR FXDO HO
FRQVWUXFWRUGHODFODVH0HPRULDVHUiHMHFXWDGDDXWRPiWLFDPHQWH
• 2EVHUYH TXH JUDEDPRV OD FODVH HQ OD PLVPD FDUSHWD SRU OR TXH QR HV
QHFHVDULRLQGLFiUVHORHQHOSDFNDJHQLHQHO'RFXPHQW&ODVV
• 'HQWURGHODUFKLYRGHFODVHGHVSXpVGHODGHILQLFLyQGHFODVH\DQWHVTXH
ODIXQFLyQFRQVWUXFWRUDODVFRQVWDQWHVTXHQRVVHUYLUiQSDUDSDUDPHWUL]DU
HOMXHJRVRQODVVLJXLHQWHV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
-XHJRGHPHPRULD
private const _renglones:uint = 6;
private const _columnas:uint = 6;
private const _espaciox:uint = 10;
private const _espacioy:uint = 10;
private const _longx:uint = 50;
private const _longy:uint = 50;
private const _iniciox:int = 100;
private const _inicioy:int = 25;
• 'HVSXpVGH ODVFRQVWDQWHVFUHDUHPRVGRVREMHWRVSDUDDOPDFHQDUOD
SULPHUD\VHJXQGDFDUWDV
var cartaUno:Carta;
var cartaDos:Carta;
• 'HQWURGHO0RYLH&OLSWHQHPRVQ~PHURV \QHFHVLWDPRVXQ SDUGHFDGD
XQRHVGHFLUSDUDWHQHUWRGDVODVFDUWDVSDUDQXHVWURMXHJR
• 3DUD FRQWURODU ODV FDUWDV KDUHPRV XQ DUUHJOR FRQ ORV SDUHV \ GHVSXpV
ORV EDUDMDUHPRV DO D]DU 3DUD FUHDU HO DUUHJOR RUGHQDGR HVFULELPRV HO
VLJXLHQWHFyGLJRHQODIXQFLyQFRQVWUXFWRUD
var arregloCartas:Array = new Array();
for (var a=0; a<(_renglones*_columnas)/2; a++) {
arregloCartas.push(a,a);
}
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
$KRUDGHVSOHJDUHPRVODVFDUWDVGHQWURGHOHVFHQDULR+DUHPRVGRVFLFORVXQR
SDUD ORV UHQJORQHV \ RWUR SDUD ODV FROXPQDV /RV SDVRV TXH D FRQWLQXDFLyQ
FRGLILFDUHPRVVRQORVVLJXLHQWHV
&UHDUHPRVXQDFDUWDHQFDGDLWHUDFLyQ
/DXELFDUHPRVHQVXOXJDUGHQWURGHODFXDGUtFXODGHFDUWDV
6HOHFFLRQDPRVXQHOHPHQWRGHODUUHJORHQIRUPDDOHDWRULD
$OPDFHQDPRVHOQ~PHURHQODFDUWD
/RHOLPLQDPRVGHODUUHJOR
&UHDPRVHOOLVWHQHUSDUDODFDUWD
3DUDFRGLILFDUORVSDVRVDQWHULRUHVHVFULEDGHQWURODIXQFLyQFRQVWUXFWRUD\
GHEDMRGHOFLFORDQWHULRUHOVLJXLHQWHFyGLJR
nuevaCarta.stop();
nuevaCarta.x = _iniciox + (_longx + _espaciox)*j;
nuevaCarta.y = _inicioy + (_longy + _espacioy)*i;
var numCarta:uint =
Math.floor(Math.random()*arregloCartas.length);
nuevaCarta.dibujo = arregloCartas[numCarta];
addChild(nuevaCarta);
arregloCartas.splice(numCarta, 1);
nuevaCarta.addEventListener(MouseEvent.CLICK,
onVoltearCarta);
}
}
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
-XHJRGHPHPRULD
(VWDGRVGHODVFDUWDV
• &RPR SXHGH REVHUYDU FDGD XQD GH ODV FDUWDV FRQWLHQH XQ OLVWHQHU 'H
KHFKR WRGDV ODV FDUWDV WLHQHQ OD PLVPD IXQFLyQ GH OLVWHQHU &RQ
$FWLRQ6FULSWVDEUHPRVH[DFWDPHQWHFXiOGHODVFDUWDVIXHSXOVDGD
\D TXH FRPR VH KDEtD FRPHQWDGR DQWHULRUPHQWH HVWD LQIRUPDFLyQ VH
DOPDFHQDHQHOHYHQW2EMHFW
• $QWHV GH SDVDU D FRGLILFDU OD IXQFLyQ GHO OLVWHQHU RQ9ROWHD&DUWD
DQDOL]DUHPRV ORV SRVLEOHV HVWDGRV TXH SXHGHQ WRPDU D OR ODUJR GH XQD
SDUWLGDGHPHPRULD
• (VWDGR 6L HV OD SULPHUD FDUWD TXH VHOHFFLRQD HQWRQFHV JXDUGH HO
FRQWHQLGRGHODSULPHUDHOHFFLyQ\YROWHHODFDUWD
• (VWDGR 6L VHOHFFLRQy QXHYDPHQWH OD PLVPD FDUWD YROWpHOD \ OLPSLH
FDUWD8QR
FDUWD8QR
• (VWDGR6LVHOHFFLRQyRWUDFDUWDGLIHUHQWHHQVXVHJXQGDWLUDGDDOPDFHQH
ODWLUDGDHQFDUWD'RV
FDUWD'RV\ODYROWpHOD
FDUWD'RV
• 6LFDUWD8QR\FDUWD'RV
FDUWD8QR\FDUWD'RVVRQLJXDOHVERUUHODVFDUWDV\OLPSLHODVYDULDEOHV
FDUWD8QR\FDUWD'RV
• (VWDGR 6L QR HV QLQJXQD GH ODV RSFLRQHV DQWHULRUHV HV RWUD WLUDGD
GHVSXpV GH GRV WLUDGDV DQWHULRUHV HV GHFLU FDUWD8QR
FDUWD8QR \ FDUWD'RV
FDUWD'RV WLHQHQ
YDORUHV HQWRQFHV YROWHH ODV FDUWDV OLPSLH FDUWD'RV
FDUWD'RV DVLJQH FDUWD8QR
FDUWD8QR \
YROWHHFDUWD8QR
FDUWD8QR
FDUWD8QR
&RGLILFDUODIXQFLyQGHOOLVWHQHU
function onVoltearCarta(e:MouseEvent):void {
// Carta define el objeto relacionado
var cartita:Carta = (e.target as Carta);
}
• (VLPSRUWDQWHFRQYHUWLUHOHYHQWREMHFWDOIRUPDWR&DUWD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
0DQHMRGHHYHQWRV
//Estado 1
if (cartaUno == null) {
cartaUno = cartita;
cartaUno.gotoAndStop(cartita.dibujo + 2);
}
• (VWDGR (O XVXDULR VHOHFFLRQD QXHYDPHQWH OD PLVPD FDUWD 3DUD GHILQLU
HVWHHVWDGRHVFULEDGHQWURGHODIXQFLyQSHURGHEDMRGHOFyGLJRDQWHULRUHO
VLJXLHQWHFyGLJR
//Estado 2
else if (cartaUno == cartita) {
//Voleteamos la carta
cartaUno.gotoAndStop (1);
//Limpiamos la variable
cartaUno = null;
}
• (VWDGR6HOHFFLRQyRWUDFDUWDGLIHUHQWH'HEDMRGHOFyGLJRDQWHULRUSHUR
GHQWURGHODIXQFLyQGHOOLVWHQHUHVFULEDHOVLJXLHQWHFyGLJR
//Estado 3
else if (cartaDos == null) {
cartaDos = cartita;
//Volteamos la carta
cartaDos.gotoAndStop (cartita.dibujo + 2);
//
//Estado 3
else if (cartaDos == null) {
//Volteamos la carta
cartaDos.gotoAndStop (cartita.dibujo + 2);
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$PDQHUDGHFRQFOXVLyQ
//
if (cartaUno.dibujo == cartaDos.dibujo){
removeChild(cartaUno);
removeChild(cartaDos);
cartaUno= null
cartaDos = null
}
}
• (VWDGR(OXVXDULRVHOHFFLRQyXQDFDUWDGLIHUHQWHDODSULPHUD&RQHVWR
UHJUHVDUHPRV DO HVWDGR LQLFLDO HQ FDVR GH TXH HO XVXDULR KD\D SXOVDGR
FDUWDVTXHQRWLHQHQHOPLVPRVtPEROR
//Estado 4
} else {
cartaUno.gotoAndStop(1);
cartaDos.gotoAndStop(1);
cartaUno =cartita;
cartaDos = null;
cartaUno.gotoAndStop(cartita.dibujo +2);
}
$PDQHUDGHFRQFOXVLyQ
(OPDQHMRGHORVHYHQWRVHQHOPRGHOR'20KDFHD$FWLRQ6FULSWXQSRGHURVR\
ELHQHVWUXFWXUDGROHQJXDMHHQHVWHFDStWXORDSUHQGLy
• (OPDQHMRGHHYHQWRV
• $GHWHUPLQDUHOHYHQWRVXLGHQWLILFDGRU\HOWLSRGHREMHWRGHOHYHQWR
• $ FUHDU XQ OLVWHQHU SDUD HO HYHQWR \ VXVFULELU HO REMHWR GHVWLQR DO
OLVWHQHU
• $FUHDULQWHUDFFLRQHVGHOPRXVH
• &yPRUHVSRQGHUDHYHQWRVGHOWHFODGR
$KRUDTXH\DWHQHPRVORVWUHVFRQFHSWRVIXQGDPHQWDOHVUHYLVDGRVKDUHPRVRWUDV
FODVHVYLVXDOHVFRQODVFXDOHVVDFDUHPRVPXFKDYHQWDMDDOOHQJXDMH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
,QWURGXFFLyQ
+DVWD HVWH PRPHQWR KHPRV UHYLVDGR WUHV SXQWRV IXQGDPHQWDOHV SDUD GRPLQDU
$FWLRQ6FULSW/DSURJUDPDFLyQRULHQWDGDDREMHWRVDOPHQRVHQIRUPDEiVLFD
HOPDQHMRGHODOLVWDGHYLVXDOL]DFLyQ\HOQXHYRPRGHORGHHYHQWRV(QHVWHFDStWXOR
DEDUFDUHPRVXQSRFRGHFDGDXQRGHVDUUROODQGRFODVHVYLVXDOHVSHUVRQDOL]DGDVOR
FXDOQRVSHUPLWLUiVDFDUPiVMXJRD$FWLRQ6FULSW
8QRGHORVJUDQGHVEHQHILFLRVGHODOLVWDGHYLVXDOL]DFLyQHVXWLOL]DUODVQXHYDV
FODVHVTXHVRQPXFKRPiVOLJHUDV\SRUFRQVHFXHQFLDKDFHQODVDSOLFDFLRQHVGH
)ODVK PiV UiSLGDV (Q HO SDVDGR HUD SRVLEOH DPSOLDU 0RYLH&OLS SDUD FUHDU FODVHV
YLVXDOHV SHUVRQDOL]DGDV SHUR VLHPSUH WHQtD TXH VHU XQ VtPEROR 0RYLH&OLS HQ OD
ELEOLRWHFDYLQFXODGRFRQODFODVHSHUVRQDOL]DGDSDUDFUHDUXQDLQVWDQFLDHQSDQWDOOD
DWUDYpVGHDWWDFK0RYLH&RQODOLVWDGHYLVXDOL]DFLyQSRGHPRVKDFHUREMHWRVPiV
OLJHURV\FRQXQGHVHPSHxRPD\RU
(Q $FWLRQ6FULSW H[LVWHQ PXFKDV PiV FODVHV GH YLVXDOL]DFLyQ GLVSRQLEOHV
DGHPiV GH 0RYLH&OLS $QWHV GH FUHDU XQ REMHWR YLVXDO HV QHFHVDULR GHFLGLU TXp
FODVHQRVFRQYLHQHPiV
• 6LVRODPHQWHFRQWLHQHGLEXMRVYHFWRULDOHVVHTXHUUiDPSOLDUODFODVH6KDSH
• 6LVHFUHDXQERWyQSHUVRQDOL]DGRVHTXHUUiDPSOLDU6LPSOH%XWWRQ
• 6LVHGHVHDFUHDUXQFRQWHQHGRUSDUDDOPDFHQDURWURVREMHWRVGH
YLVXDOL]DFLyQ6SULWHHVXQDEXHQDRSFLyQVLQRVHUHTXLHUHHOXVRGHXQD
OtQHDGHWLHPSR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
,QWURGXFFLyQ
• 6L HV QHFHVDULD XQD OtQHD GH WLHPSR VH GHEHUi FUHDU XQD VXEFODVH GH
0RYLH&OLSTXHHVPXFKRPiVSHVDGDTXHODVGHPiV
• 6LGHVHDPRVFDUJDULPiJHQHVXRWUDVSHOtFXODVVZISRGHPRVXWLOL]DUODFODVH
/RDGHU
&DGDXQDGHODVFODVHVWLHQHXQILQHVSHFtILFR6HOHFFLRQDUODFODVHDGHFXDGD
D\XGDPXFKRDRSWLPL]DUHOWDPDxRGHODDSOLFDFLyQ\KDFHUODPiVUiSLGD
3RU HMHPSOR XQD VHQFLOOD FODVH &tUFXOR QR QHFHVLWD FUHDU XQD VXEFODVH GH
0RYLH&OLS SRUTXH QR UHTXLHUH OD OtQHD GH WLHPSR /D FODVH 6KDSH HV OD PHMRU
HOHFFLyQHQHVWHFDVRSRUTXHHVODRSFLyQPiVOLJHUDTXHVHDMXVWDSHUIHFWDPHQWHDO
FRQFHSWRGHXQFtUFXORYHFWRULDO
8QD YH] TXH VH KD GHFLGLGR OD FODVH EDVH WRGR OR TXH WLHQH TXH KDFHUVH HV
HVFULELUHOFyGLJRSDUDODPLVPD3RUHMHPSORVHUHWRPDHOHMHPSORGHOFtUFXOR\VH
FUHDXQDQXHYDFODVH&tUFXORTXHDPSOtHHOREMHWRGHYLVXDOL]DFLyQ6KDSH
(MHUFLFLR
• 6HFUHDXQDFDUSHWDOODPDGDXWLOHUtDVHQODFDUSHWDGHWUDEDMR
• (Q XQ QXHYR DUFKLYR $FWLRQ6FULSW GHQRPLQDGR &LUFXORDV VH HVFULEH HO
VLJXLHQWHFyGLJR\VHJXDUGDHQODFDUSHWDXWLOHUtDV
package utilerías{
import flash.display.Shape;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
(O FyGLJR DQWHULRU GHILQH XQ QXHYR REMHWR GH YLVXDOL]DFLyQ &tUFXOR &XDQGR VH FUHD
XQDLQVWDQFLD&tUFXORVH SXHGHHVSHFLILFDUWDQWRHOFRORUFRPRHOUDGLRHQHOFRQV
WUXFWRURGHMDUORVYDORUHVSRUGHIDXOW
/RVPpWRGRVGHOD$3,GHGLEXMRVHXWLOL]DQSDUDFUHDUHOFXHUSRGHOFtUFXORFRQ
ODSURSLHGDGJUDSKLFVTXHVHKHUHGDGHODVXSHUFODVH6KDSH
1RWD
6LHPSUH HV XQD EXHQD LGHD QR VDWXUDU D OD IXQFLyQ FRQVWUXFWRUD FRQ FyGLJR (O
FRQVWUXFWRUSDUD&tUFXORQRGLEXMDHOFtUFXORGLUHFWDPHQWHVLQRTXHLQYRFDHOPpWRGR
GLEXMRSDUDFUHDUORVHOHPHQWRVYLVXDOHV7RGRORTXHTXHGDSRUKDFHUHVFUHDUQXHYDV
LQVWDQFLDVGHQXHVWUDFODVHSHUVRQDOL]DGD&tUFXOR\DxDGLUODVDODOLVWDGHYLVXDOL]DFLyQ
FRQ DGG&KLOG R DGG&KLOG$W SDUD TXH DSDUH]FDQ HQ SDQWDOOD 3DUD FUHDU QXHYDV
LQVWDQFLDVGHODFODVHXWLOtFHVHODSDODEUDFODYHQHZ
(MHUFLFLR
• 6H FUHD XQ DUFKLYR )ODVK $6 QXHYR \ VH OH SRQH HO QRPEUH GH
XVDU&LUFXORIODHQHOGLUHFWRULRGHWUDEDMR
• 6H FUHD XQ DUFKLYR $6 \ VH OH SRQH HO QRPEUH GH8VDU&LUFXORDV (Q pO VH
HVFULEHHOVLJXLHQWHFyGLJR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
,QWURGXFFLyQ
package misClases{
import flash.display.Sprite;
public class UsarCirculo extends Sprite {
public function UsarCirculo () {
// Crear algunos círculos con
// la clase Círculo y
// cambia sus coordenadas para que
// se escalonen
// y no se sitúen todos en (0,0).
var rojo:Circulo = new
Circulo(0xFF0000,10);
rojo.x=10;
rojo.y=10;
var verde:Circulo=new Circulo(0x00FF00,10);
verde.x=25;
verde.y=25;
var azul:Circulo=new Circulo(0x0000FF,10);
azul.x=40;
azul.y=40;
// Añadir los círculos a la
// lista de visualización
addChild(rojo);
addChild(verde);
addChild(azul);
}
}
}
• (MHF~WHVHODSHOtFXOD\QyWHVHTXHVHIRUPDQORVWUHVFtUFXORVVROLFLWDGRV
1RWD
$OJXQRV DXWRUHV SUHILHUHQ DxDGLU OD SDODEUD 'RFXPHQW D ODV FODVHV GH GRFXPHQWR
FRPRODDQWHULRUSDUDGLVWLQJXLUODGHODVGHPiVHVGHFLUODFODVHDQWHULRUVHOODPDUtD
8VD&LUFXOR'RFXPHQWDV (Q QXHVWUR FDVR QR XWLOL]DUHPRV HVWD FRQYHQFLyQ KDVWD TXH
GHVDUUROOHPRVDSOLFDFLRQHV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
&UHDUERWRQHVVHQFLOORV
(Q$FWLRQ6FULSWQRSRGtDPRVFUHDUERWRQHVFRPRVtPERORV7HQtDPRVTXHGDUOH
DXQ0RYLH&OLSXQFRPSRUWDPLHQWRGHERWyQ\OLVWR&RQODQXHYDYHUVLyQSRGHPRV
KDFHUOR FRQ OD FODVH 6LPSOH%XWWRQ /D FODVH 6LPSOH%XWWRQ SHUPLWH D XQ XVXDULR
LQWHUDFWXDU FRQ HO REMHWR GH YLVXDOL]DFLyQ XWLOL]DQGR VX DSXQWDGRU GHO PRXVH \ OH
IDFLOLWDGHILQLUHVDLQWHUDFFLyQSRUPHGLRGHYDULRVHVWDGRVGHERWyQ/RVHVWDGRVGH
XQERWyQFUHDGRFRQ$FWLRQ6FULSWFRQODFODVH6LPSOH%XWWRQVRQORVPLVPRVTXH
WHQHPRVHQHO,'(GH)ODVK
• XS6WDWH8QREMHWRGHYLVXDOL]DFLyQSDUDHOHVWDGRXS(VWHHVWDGRVHPXHVWUD
XS6WDW
VLHPSUHTXHHODSXQWDGRUGHOPRXVHQRHVWpVREUHHOERWyQ
• RYHU6WDWH8QREMHWRGHYLVXDOL]DFLyQTXHGHWHUPLQDHODVSHFWRGHOERWyQFXDQGR
RYHU6WDWH
HO DSXQWDGRU GHO PRXVH VH PXHYH VREUH HO ERWyQ &XDQGR HO DSXQWDGRU GHO
PRXVHGHMDHOiUHDGHOERWyQHOERWyQUHJUHVDDOHVWDGRXS
• GRZQ6WDWH
GRZQ6WDWH8QREMHWRGHYLVXDOL]DFLyQTXHVHPXHVWUDFXDQGRVHSXOVDHOERWyQ
R VH KDFH FOLF VREUH pO &XDQGR HO ERWyQ HVWi HQ HO HVWDGR RYHU HO HVWDGR
GRZQVHPXHVWUDFXDQGRHOXVXDULRSXOVDHOERWyQL]TXLHUGRGHODSXQWDGRUGHO
PRXVH
• KLW7HVW6WDWH8QREMHWRGHYLVXDOL]DFLyQTXHGHILQHORVOtPLWHVGHODSXQWDGRUGHO
KLW7HVW6WDWH
PRXVH&XDQGRpVWHVHPXHYHGHQWURGHOiUHDDFWLYDGHOERWyQHOERWyQHQWUD
HQHOHVWDGRRYHUKLW7HVW6WDWHVHHVWDEOHFHWtSLFDPHQWHHQHOPLVPRREMHWRGH
YLVXDOL]DFLyQTXHXS6WDWHKLW7HVW6WDWHQXQFDVHPXHVWUDHQSDQWDOODVRODPHQWH
VHXWLOL]DSDUDILQHVGHVHJXLPLHQWRGHODSXQWDGRUGHOPRXVH
(OHVWDGRGHODSXQWDGRUGHOPRXVHORJHVWLRQDODFODVH6LPSOH%XWWRQ\VHEDVD
HQHOPRYLPLHQWRGHODSXQWDGRUGHOPRXVHGHOXVXDULR
1RWD
3RVLEOHPHQWHXVWHGVHSUHJXQWDUiSRUTXpKDFHUXQERWyQGHVGH$FWLRQ6FULSWVLHVWDQ
IiFLOKDFHUORHQHO,'(3XHVKDFHUORFRQ$FWLRQ6FULSWHVPiVUiSLGR\OLJHUR8VWHGGHEH
HYDOXDUVLQHFHVLWDKDFHUREMHWRVFRQFyGLJRRVLSUHILHUHDODDQWLJLWDKDFLpQGRORVFRQ
HOPRXVH
(MHPSOR
&UHDU XQD QXHYD LQVWDQFLD 6LPSOH%XWWRQ \ GHILQLU ORV HVWDGRV GHO ERWyQ XWLOL]DQGR
ODV FXDWUR SURSLHGDGHV FRPHQWDGDV DQWHULRUPHQWH 3DUD FDGD HVWDGR
QHFHVLWDUHPRV XQ REMHWR YLVXDO HV GHFLU XQ REMHWR GH OD FODVH 'LVSOD\2EMHFW HO
PpWRGRGHD\XGDFUHDU&LUFXORVHXWLOL]DSDUDFUHDUGLIHUHQWHVIRUPDVGHFtUFXORVGH
FRORUHVTXHVHYDQDXWLOL]DUSDUDORVGLIHUHQWHVHVWDGRVGHERWyQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUERWRQHVVHQFLOORV
package misClases{
import flash.display.*;
import flash.events.*;
public class Boton extends Sprite {
public function Boton() {
inicio()
}
Private function inicio():void{
// Crear un solo botón y
// configurar su ubicación
var boton:SimpleButton=new SimpleButton;
boton.x=20;
boton.y=20;
var rojo:Circulo = new
Circulo(0xFF0000,10);
var verde:Circulo = new
Circulo(0x00FF00,10);
var azul:Circulo = new
Circulo(0x0000FF,10);
// Crear los diferentes estados
// de botón, utilizando
// el método de ayuda para crear
// diferentes círculos de colores
boton.upState=rojo;
boton.overState=verde;
boton.downState=azul;
boton.hitTestState=boton.upState;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
'HVSXpVGHHMHFXWDUHVWHEORTXHGHFyGLJRDSDUHFHXQFtUFXORURMRHQ ODSHOtFXOD
&XDQGR VH PXHYH HO DSXQWDGRU GHO PRXVH VREUH HO FtUFXOR D]XO XQ FtUFXOR EODQFR
DOJRPD\RUDSDUHFHFRPRXQUROORYHU&XDQGRKDFHFOLFVREUHHOFtUFXOREODQFRVH
FRQYLHUWH HQ XQ FtUFXOR D]XO PiV SHTXHxR (O HIHFWR YLVXDO OR FUHD OD LQVWDQFLD
6LPSOH%XWWRQ FDPELDQGR HO HVWDGR EDViQGRVH HQ ODV DFFLRQHV GHO DSXQWDGRU GHO
PRXVH FDPELDQGR HQWUH ORV REMHWRV GH YLVXDOL]DFLyQ GHILQLGRV HQ ODV FXDWUR
SURSLHGDGHVGHHVWDGR
3DUD GHWHFWDU HYHQWRV GH OD LQVWDQFLD ERWRQ VH XWLOL]D HO PpWRGR
DGG(YHQW/LVWHQHU(OHYHQWRFOLFHVSHFLILFDGRFRQ0RXVH(YHQW&/,&.VHJHVWLRQD
HQHOFyGLJRDQWHULRUSRUHOPpWRGRRQ&OLFN
/DSURSLHGDGKLW7HVW6WDWHHVTXL]iODSURSLHGDGPiVLQWHUHVDQWHGHHVWDFODVH
6H REVHUYDUi TXH HO FyGLJR DQWHULRU HVWDEOHFH KLW7HVW6WDWH HQ HO PLVPR REMHWR GH
YLVXDOL]DFLyQTXHGHILQHXS6WDWH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&DUJDULPiJHQHVH[WHUQDVHQWLHPSRGHHMHFXFLyQODFODVH/RDGHU
1RWD
$XQTXH KLW7HVW6WDWH QXQFD HV YLVLEOH QR HVWDEOHFHU KLW7HVW6WDWH HQ XQ REMHWR GH
YLVXDOL]DFLyQ WLHQH FRPR UHVXOWDGR XQ ERWyQ FRQ HO TXH QR VH SXHGH LQWHUDFWXDU
5HFXHUGHHVWDEOHFHUVLHPSUHHOKLW7HVW6WDWHGHOERWyQLQFOXVRVLVRODPHQWHQHFHVLWDHO
YDORUGHXS6WDWH
/D SURSLHGDG KLW7HVW6WDWHVH SXHGH HVWDEOHFHU HQ FXDOTXLHU SXQWRFXDQGRVH
GHVHDFRQWURODUORVOtPLWHVDFWLYRVGHXQERWyQ3DUDFUHDUXQiUHDDFWLYDPD\RUSDUDHO
ERWyQVHLQWHQWDPRGLILFDUHOFyGLJRDQWHULRUSDUDHVWDEOHFHUHOKLW7HVW6WDWHSRUPHGLR
GHHVWDOtQHD
boton.hitTestState = crearCirculo( 0x000000, 50 ) ;
&DUJDULPiJHQHVH[WHUQDVHQWLHPSR
GHHMHFXFLyQODFODVH/RDGHU
3DUD FDUJDU LPiJHQHV R SHOtFXODV H[WHUQDV HQ HO WLHPSR GH HMHFXFLyQ VH XWLOL]D OD
FODVH/RDGHU(QHVWHSURFHVRWDPELpQSRQHRUGHQ$FWLRQ6FULSW\DTXHHQODV
YHUVLRQHVDQWHULRUHVFDUJDULPiJHQHV\RWUDVSHOtFXODVVHKDFtDGHIRUPDGLIHUHQWH
8QD GH ODV GLIHUHQFLDV HQWUH OD FODVH /RDGHU \ OD FODVH 85//RDGHU HV TXH OD
SULPHUD VLUYH SDUD FDUJDU LPiJHQHV \ SHOtFXODV H[WHUQDV \ PRVWUDUODV HQ SDQWDOOD
PLHQWUDVTXHODVLQVWDQFLDV85//RDGHUVRQGHXWLOLGDGSDUDFDUJDUGDWRV
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
8QDGHODVSUHJXQWDVTXHJHQHUDOPHQWHDSDUHFHQHQODFHUWLILFDFLyQ$&(GH)ODVKHVOD
GLIHUHQFLDHQWUH/RDGHU\85//RDGHU
([LVWHQWUHVSDVRVIXQGDPHQWDOHVSDUDFDUJDUFRQWHQLGRH[WHUQR
&UHDUXQDLQVWDQFLDGHODFODVH/RDGHU
$xDGLUODLQVWDQFLD/RDGHUDODOLVWDGHYLVXDOL]DFLyQ
,QYRFDUHOPpWRGRORDGSDUDLQFRUSRUDUXQDFWLYRH[WHUQR
(OPpWRGRORDGGHODFODVH/RDGHUHVUHVSRQVDEOHGHGHVFDUJDUODLPDJHQR
XQDUFKLYRVZI7RPDXQVRORREMHWR85/5HTXHVWFRPRXQSDUiPHWURTXHHVSHFLILFD
HO85/GHODFWLYRTXHVHYDDGHVFDUJDU\PRVWUDU
(O VLJXLHQWH HV XQ HMHPSOR GHO XVR GH OD FODVH /RDGHU SDUD GHVFDUJDU XQD
LPDJHQ OODPDGD LPDJHQMSJ HQ WLHPSR GH HMHFXFLyQ (O FyGLJR HQ HO FRQVWUXFWRU
&DUJD,PDJHQ VH KD FRPHQWDGR SDUD FRLQFLGLU FRQ ORV WUHV SDVRV EiVLFRV GH FDUJD
GHWDOODGRVDQWHULRUPHQWH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
(MHPSOR
• 6HDEUHXQDUFKLYR)ODVK$6VHQRPEUDFDUJD,PDJHQIOD\VHJUDEDHQ
ODFDUSHWDGHWUDEDMR
• &ySLHVHXQDLPDJHQDODPLVPDFDUSHWD5HQyPEUHODFRPRLPDJHQMSJ
• $KRUD VH DEUH XQ DUFKLYR $FWLRQ6FULSW \ VH JUDED HQ OD FDUSHWD PLV&ODVHV
FRQHOQRPEUHGH&DUJD,PDJHQDV
• (Q HO DUFKLYR GH FODVH VH HVFULEH HO VLJXLHQWH JXLyQ 6L HV QHFHVDULR
VXVWLW~\DVHHOQRPEUHGHODUFKLYRSRUHOQRPEUHGHODUFKLYRFRQODLPDJHQ
package misClases{
import flash.display.*;
import flash.net.URLRequest;
• (MHF~WHVHODSHOtFXOD'HEHUiGHVSOHJDUVHODLPDJHQGHODUFKLYRH[WHUQR
&XDQGR VH HMHFXWD HVWH FyGLJR HO )ODVK 3OD\HU EXVFD LPDJHQMSJ HQ HO PLVPR
GLUHFWRULRGHVGHHOTXHVHVLUYHODSHOtFXODVZISRUTXHHOREMHWR85/5HTXHVWXWLOL]D
XQ 85/ UHODWLYR 6H SXHGH XWLOL]DU XQ 85/ DEVROXWR HV GHFLU GHVGH HO
KWWSZZZPLVWLWRFRPRUHODWLYRSDUDDSXQWDUDOD XELFDFLyQGHVWLQRDFDUJDU
SHURODFDUJDUHDOGHODFWLYRHVWiJHVWLRQDGDSRUHOHQWRUQRGHVHJXULGDGGH)ODVK
3OD\HU OD IDPRVD FDMD GH DUHQD R VDQGER[ 7DQ SURQWR FRPR VH KD GHVFDUJDGR HO
DFWLYRVHDxDGHDXWRPiWLFDPHQWHFRPRXQKLMRGHODLQVWDQFLD/RDGHU
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&DUJDULPiJHQHVH[WHUQDVHQWLHPSRGHHMHFXFLyQODFODVH/RDGHU
• 6H DEUH XQ DUFKLYR $6 VH OH QRPEUD &DUJD,PDJHQDV \ VH JXDUGD HQ OD
FDUSHWDPLV&ODVHV
• 6H FDPELD OD FDVLOOD GH 'RFXPHQW &ODVV GH FDUJD,PDJHQIOD D
PLV&ODVHV&DUJD,PDJHQ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHFyGLJR
package misClases{
import flash.display.*;
import flash.text.*;
import flash.net.URLRequest;
import flash.events.*;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&DUJDULPiJHQHVH[WHUQDVHQWLHPSRGHHMHFXFLyQODFODVH/RDGHU
(MHF~WHVH HO SURJUDPD 3DUD TXH SXHGD YLVXDOL]DUVH HO SURFHVR VH VLPXOD OD FDUJD
GHVGHHOYLVRUGHEDQGD
1RWD
3DUD QRPEUDU ODV IXQFLRQHV GH ORV OLVWHQHUV QR KD\ XQD FRQYHQFLyQ HVWDEOHFLGD
'HSHQGH GH FDGD SURJUDPDGRU $OJXQRV DxDGHQ KDQGOH DO QRPEUH GHO HYHQWR SRU
HMHPSORSURJUHVV+DQGOHORDGHU+DQGOHHWF2WURVSUHIHULPRVDxDGLUXQ´RQµTXHQRV
UHFXHUGDORVYLHMRVWLHPSRVGH$FWLRQ6FULSWSRUHMHPSORRQ3URJUHVVRQ/RDGHU$GRSWH
HOHVWiQGDUTXHFUHDFRQYHQLHQWH/RLPSRUWDQWHHVTXHVHDFRQVLVWHQWHFRQpO.
&XDQGRVHHMHFXWDHOFyGLJRDQWHULRUVHYHTXHHOPHQVDMHGHDEULUDSDUHFHHQ
ODYHQWDQDGHVDOLGDVHJXLGRSRUXQRRPiVPHQVDMHVGHSURJUHVRTXHPXHVWUDQHO
SRUFHQWDMHDFWXDOGHFDUJDVHJXLGRSRUHOPHQVDMHGH´FRPSOHWRµTXHLQGLFDTXHOD
GHVFDUJDKDWHUPLQDGRFRQp[LWR
$O VLWXDU FyGLJR HQ ORV PDQHMDGRUHV GH HYHQWR SDUD HVWRV HYHQWRV VH SXHGH
PRVWUDU HO SURJUHVR GH XQD GHVFDUJD 3RU HMHPSOR HO PpWRGR RQ$EUH HVWDUtD
HQFDUJDGRGHFUHDUHOPHQVDMHSUHYLR\DxDGLUORDODOLVWDGHYLVXDOL]DFLyQ
(OPpWRGRRQ3URJUHVRDFWXDOL]DUiHOYDORUGHSRUFHQWDMHDVtFRPRHVWDEOHFHU
HOWH[WRGHXQDLQVWDQFLD7H[W)LHOGHQHOYDORUGHSRUFHQWDMH3RU~OWLPRHOPpWRGR
RQ&RPSOHWRUHDOL]DUiXQDOLPSLH]D\HOLPLQDUiHOFDUJDGRUSUHYLR\DTXHHODFWLYR
VHKDGHVFDUJDGRSRUFRPSOHWR&HQWUDQGRODDWHQFLyQHQHVWRVPpWRGRVHOFyGLJR
VHSRGUtDSDUHFHUDOVLJXLHQWHHMHPSOR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
(MHPSORSURJUHVRGHGHVFDUJDGHXQDLPDJHQHQFDPSRWH[WR
package misClases{
import flash.display.*;
import flash.text.*;
import flash.net.URLRequest;
import flash.events.*;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&DUJDULPiJHQHVH[WHUQDVHQWLHPSRGHHMHFXFLyQODFODVH/RDGHU
(QHVWHHMHPSOR\DQRVHPXHVWUDHODYDQFHGHODFDUJDHQODYHQWDQDGHVDOLGDOD
FXDO QR OD SXHGH DSUHFLDU HO XVXDULR DO HMHFXWDUVH OD SHOtFXOD VLQR TXH HO XVXDULR
YHUiHODYDQFHGHODPLVPDHQHOHVFHQDULRFRQHOFDPSRGHWH[WRTXHFUHDPRV
1RWD
(VXQDSUiFWLFDDQWHSRQHUXQJXLyQEDMRDODVSURSLHGDGHVLQWHUQDVHQXQDFODVH1RHV
UHTXLVLWRSHURVHJXUDPHQWHORYHUiHQDOJXQRVSURJUDPDVHQ$FWLRQ6FULSW
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
&DUJDUHLQWHUDFWXDUFRQSHOtFXODVH[WHUQDV
$QWHULRUPHQWH VH KD GHPRVWUDGR FyPR FDUJDU LPiJHQHV H[WHUQDV SRU PHGLR GH OD
FODVH/RDGHU3DUDFDUJDUSHOtFXODVVZIH[WHUQDVLPSOLFDXWLOL]DUODPLVPDWpFQLFDDO
LQYRFDUHOPpWRGRORDGHQXQDLQVWDQFLD/RDGHU\SDVDUXQ85/DXQVZIHQOXJDU
GH XQD LPDJHQ HO VZI VH FDUJD HQ OD SHOtFXOD 6L HO /RDGHU HVWi HQ OD MHUDUTXtD
SULQFLSDOGHYLVXDOL]DFLyQHOVZIWDPELpQDSDUHFHHQSDQWDOOD
(VWHHMHUFLFLRLPSOLFDFUHDUGRVDUFKLYRVVZIVHSDUDGRV
SHOLFXOD([WHUQDVZI\FDUJDGRUVZI/DSULPHUDSHOtFXODSHOLFXOD([WHUQDVZIVH
FDUJDUiHQWLHPSRGHHMHFXFLyQHQODVHJXQGDSHOtFXODFDUJD3HOLFXODVZI(OFyGLJR
SDUDSHOLFXOD([WHUQDVZIHVHOVLJXLHQWH
(MHPSOR
• 6H DEUH XQ DUFKLYR $6 VH OH QRPEUD 3HOLFXOD([WHUQDDV \ VH JXDUGD HQ OD
FDUSHWDPLV&ODVHV
• 6H DEUH XQ DUFKLYR )ODVK $FWLRQ6FULSW \ VH QRPEUD FRPR
SHOLFXOD([WHUQDIOD(QODFDVLOODGH'RFXPHQW&ODVVVHHQOD]DFRQODFODVH
HVFULELHQGRPLV&ODVHV3HOLFXOD([WHUQD
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHFyGLJR
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
public class PeliculaExterna extends Sprite
{
private var _color:uint =0x000000;
private var _Circulo:Shape;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&DUJDUHLQWHUDFWXDUFRQSHOtFXODVH[WHUQDV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
(MHFXWHODSHOtFXOD\REVHUYDUiHQHOHVFHQDULRXQEHOORFtUFXORQHJURGHSL[HOHV
HQODVFRRUGHQDGDV
(OFyGLJRSDUD3HOLFXOD([WHUQDVZIQRHVQDGDH[WUDRUGLQDULRVHFUHDXQFtUFXOR
QHJURFXDQGRVHHMHFXWDODSHOtFXOD/RSULQFLSDODGHVWDFDUVREUHHOFyGLJRHVTXH
H[LVWHQGRVPpWRGRVSXEOLFSDUDDFFHGHU\PRGLILFDUHOFRORUGHOFtUFXORJHW&RORU\
VHW&RORU6LHPSUHTXHVHLQYRFDHOPpWRGRVHW&RORUVHUHGLEXMDHOFtUFXORFRQHO
YDORUDFWXDOL]DGRGHFRORU
$O GHFODUDU HVWRV PpWRGRV FRPR S~EOLFRV SXEOLF ORV PpWRGRV VH SXHGHQ
OODPDUGHVGHXQDSHOtFXODTXHFDUJDHODUFKLYRGHSHOLFXOD([WHUQDVZIHQWLHPSRGH
HMHFXFLyQ 3RU HO FRQWUDULR HO PpWRGR SULYDWH LQLFLR QR VH HQFRQWUDUi GLVSRQLEOH
SDUDODSHOtFXODTXHVHFDUJDSRUTXHHVSULYDGR\VyORVHYHHQODFODVH
$KRUDTXHVHKDFUHDGR 3HOLFXOD([WHUQDVZIVHQHFHVLWDFUHDUXQQXHYRVZI
SDUDFDUJDUODSHOtFXODH[WHUQDHVWRVHUHDOL]DFRQFDUJDGRUVZI
(MHPSOR
• 6HDEUHXQDUFKLYR$6QXHYRVHQRPEUD&DUJD,PDJHQDV\VHJXDUGDHQ
PLV&ODVHV
• 6HHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.*;
import flash.net.URLRequest;
import flash.events.Event;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&DUJDUHLQWHUDFWXDUFRQSHOtFXODVH[WHUQDV
//cargada
_loader.contentLoaderInfo.addEventListener(Event.INIT,o
nInicio);
//Cargar la película externa
_loader.load(new
URLRequest("peliculaExterna.swf"));
}
//Manejador de evento invocado cuando
//la película cargada
//externamente está lista para interactuar
//con ella
private function onInicio(e:Event ):void {
//Escrito como * aquí porque el tipo
//no se conoce en tiempo de
//compilación.
var movie:*=_loader.content;
//Invoca un método en la película
//externa para extraer datos
//Muestra: 0
trace(movie.getColor());
//Invoca un método en la película
//externa para establecer datos.
//Establece el color en la película
//externa, lo que dibuja un círculo
//con el nuevo color, en este caso rojo
movie.setColor(0xFF0000 );
}
}
}
• /tJXHQVH DPEDV SHOtFXODV HQ HO DUFKLYR FDUJD,PDJHQIOD HQ HO FDPSR
'RFXPHQW&ODVV
• (MHF~WHVHODSHOtFXOD
(O FyGLJR SDUD &DUJD,PDJHQVZI HV PiV LQWHUHVDQWH TXH HO GH OD SHOtFXOD
DQWHULRU \D TXH VH FRPXQLFD FRQ OD SHOtFXOD FDUJDGD &RPR SXHGH REVHUYDU OD
SHOtFXODGHFDUJDQRVyORLPSRUWyODSHOtFXODH[WHUQDVLQRTXHXWLOL]yVXFyGLJR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
(O HYHQWR LQLW VH DFWLYD FXDQGR OD SHOtFXOD FDUJDGD VH KD LQLFLDOL]DGR OR
VXILFLHQWH\VXVPpWRGRV\SURSLHGDGHVVHHQFXHQWUDQGLVSRQLEOHVSDUDLQWHUDFWXDU
FRQHOORV/DSHOtFXODVHSXHGHFRQWURODUVRODPHQWHGHVSXpVGHTXHHOHYHQWRLQFLR
VHKDDFWLYDGRGHVGHHOORDGHU7UDWDUGHLQWHUDFWXDUFRQXQDSHOtFXODFDUJDGDDQWHV
GHTXHVHKD\DLQLFLDOL]DGRJHQHUDUiHUURUHVHQWLHPSRGHHMHFXFLyQ
3DUD FRQWURODU OD SHOtFXOD FDUJDGD SULPHUR VH QHFHVLWDUi FRQVHJXLU XQD
UHIHUHQFLD D HOOD (VWR VH UHDOL]D SRU PHGLR GH OD SURSLHGDG FRQWHQW GH OD FODVH
/RDGHU(QHOFyGLJRDQWHULRUODYDULDEOHORDGHUVHUHILHUHDO/RDGHUTXHLQFRUSRUDHO
DUFKLYR VZI H[WHUQR SRU OR TXH SXHGH DFFHGHU D OD SHOtFXOD SRU PHGLR GH
ORDGHUFRQWHQW
6L OD YDULDEOH ORDGHU QR HVWXYLHUD GLVSRQLEOH VH SRGUtD XWLOL]DU OD UXWD
HYHQWWDUJHWFRQWHQW HQ VX OXJDU SDUD OOHJDU D ORV FRQWHQLGRV GHO /RDGHU (VWR HV
SRUTXHHYHQWWDUJHWKDFHUHIHUHQFLDDODLQVWDQFLDTXHJHQHUyHOHYHQWRTXHHVOD
PLVPDLQVWDQFLDDODTXHVHUHILHUHODYDULDEOHORDGHU
/D SURSLHGDG FRQWHQW HV GH VyOR OHFWXUD \ GHYXHOYH XQ REMHWR GH WLSR
'LVSOD\2EMHFW (Q HO FyGLJR GH /RDGHU([DPSOHVZI VH REVHUYDUi TXH HQ OXJDU GH
HVFULELUODYDULDEOHGHODSHOtFXODFRPRXQ'LVSOD\2EMHFWHOPLVPRWLSRTXHGHYXHOYH
ODSURSLHGDGFRQWHQWVHXWLOL]DHOWLSR
(VWRHVQHFHVDULRSRUTXHWUDWDUGHLQYRFDU
ORV PpWRGRV JHW&RORU R VHW&RORU HQ OD UHIHUHQFLD D PRYLH JHQHUD HUURUHV HQ
WLHPSRGHFRPSLODFLyQVLPRYLHVHHVFULEHFRPRXQ'LVSOD\2EMHFW
1RWD
6RODPHQWHHVSRVLEOHLQWHUDFWXDUFRQDUFKLYRVVZIGHODYHUVLyQ\VXSHULRUXWLOL]DQGR
HVWDWpFQLFD&XDQGRVHFDUJDDUFKLYRVVZIGHODYHUVLyQRDQWHULRUHVHVWDWpFQLFDQR
IXQFLRQD SRUTXH HO FyGLJR $FWLRQ6FULSW VH HMHFXWD LQGHSHQGLHQWHPHQWH GH
$FWLRQ6FULSW\&RPXQLFDUVHFRQHVWRVDUFKLYRVVZIQRHVWULYLDOHLPSOLFDXWLOL]DU
/RFDO&RQQHFWLRQFRPRXQDVROXFLyQSDUDHQYLDU\UHFLELUPHQVDMHV
(O PpWRGR JHW&RORU GHYXHOYH HO FRORU GHO FtUFXOR HQ 3HOLFXOD([WHUQDVZI SDUD
&DUJD,PDJHQVZI&DUJD,PDJHQVZILQIRUPDGHOFRORUFRPRTXHHVORPLVPRTXH
[ R HO FRORU QHJUR (O PpWRGR VHW&RORU SHUPLWH TXH &DUJD,PDJHQVZI
FDPELHHOFRORUGHOFtUFXORGLEXMDGRSRU3HOLFXOD([WHUQDVZI
(Q HVWHFDVR HOFRORUGHOFtUFXOR HVWiHVWDEOHFLGR HQ URMR \VH SXHGHYHU TXH
3HOLFXOD([WHUQDVZI DFWXDOL]D OD YLVXDOL]DFLyQ GHVSXpV GH TXH VH HVWDEOHFH HO QXHYR
YDORUGHFRORUGHOFtUFXOR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&DUJDUHLQWHUDFWXDUFRQSHOtFXODVH[WHUQDV
¢<ORVPDSDVGHELWV"
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
8QDGHODVSUHJXQWDVHQHOH[DPHQ$&(HVUHVSHFWRDOPpWRGRGUDZ1RVPXHVWUDQ
FXDWURSRVLEOHVVLQWD[LVGHOPpWRGR\SLGHQTXHVHxDOHPRVFXiOHVODFRUUHFWD
8QD YH] TXHODLPDJHQHVFDUJDGDFRPR YLPRVHQODV VHFFLRQHVDQWHULRUHV
SRGHPRVDOLPHQWDUDOREMHWRELWPDSFRQODSURSLHGDG
event.target.loader.content
'RQGHHYHQWHVHOREMHWRGHHYHQWRWDUJHWHVHOREMHWRGHFDUJD\ORDGHUFRQWHQW
HV OD SURSLHGDG GRQGH VH DOPDFHQD OD LQIRUPDFLyQ GH OD LPDJHQ FDUJDGD QR VH
SUHRFXSH XQ SRFR PiV DGHODQWH KDUHPRV XQ HMHUFLFLR &RQ HVWD LQIRUPDFLyQ
FUHDPRVHOREMHWR%LWPDS
2EVHUYH TXH DO FUHDU HO REMHWR QR VH XWLOL]D OD SDODEUD UHVHUYDGD QHZ $KRUD
TXH \D WHQHPRV HO REMHWR SRGHPRV VDEHU VXV GLPHQVLRQHV FRQ ODV SURSLHGDGHV
ZLGWK \ KHLJKW 7UDV FUHDU XQ REMHWR %LWPDS XWLOLFH HO PpWRGR DGG&KLOG R
DGG&KLOG$WSDUDVLWXDUHOPDSDGHELWVHQODOLVWDGHYLVXDOL]DFLyQ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
6LGHVHDPRVPDQLSXODUHOFRQWHQLGRGHOPDSDGHELWVHVQHFHVDULRXWLOL]DUOD
FODVH %LWPDS'DWD /D FODVH %LWPDS'DWD OH SHUPLWH WUDEDMDU FRQ ORV GDWRV SL[HOHV
GHXQREMHWR%LWPDS3XHGHXWLOL]DUORVPpWRGRVGHODFODVH%LWPDS'DWDSDUDFUHDU
LPiJHQHV GH PDSD GH ELWV WUDQVSDUHQWHV X RSDFDV GH WDPDxR DUELWUDULR \
PDQLSXODUODV GH GLVWLQWDV IRUPDV HQ WLHPSR GH HMHFXFLyQ 7DPELpQ SXHGH REWHQHU
DFFHVR DO %LWPDS'DWD FRUUHVSRQGLHQWH D XQD LPDJHQ GH PDSD GH ELWV TXH KD
FDUJDGRFRQODFODVHIODVKGLVSOD\/RDGHU
8Q REMHWR %LWPDS'DWD FRQWLHQH XQ FRQMXQWR GH GDWRV GH SL[HOHV
UHSUHVHQWDGRVSRUXQEXIIHUGHHQWHURVGHELWVRVHDE\WH&RQHVWRVELWV
UHSUHVHQWDUHPRV XQ SL[HO GHQWUR GHO PDSD GH ELWV &DGD E\WHV UHSUHVHQWD FRPR
GHELyVXSRQHUDFDGDXQRGHORVFXDWURFDQDOHVGHFRORULQFOX\HQGRHODOIDTXH
VRQHOURMRUHGHOYHUGHJUHHQHOD]XOEOXH\HOFDQDODOIDRSDUDVLPSOLILFDUHO
$5*%&DGDE\WHDVLPLVPRSXHGHUHSUHVHQWDUXQQ~PHURHQWUH\
3RU OR JHQHUDO YDPRV D XWLOL]DU DPEDV FODVHV MXQWDV SXHV QHFHVLWDPRV D OD
FODVH %LWPDS SDUD YLVXDOL]DU HO PDSD GH ELWV \ D OD FODVH %LWPDS'DWD SDUD
PDQLSXODUOR $KRUD ¢FyPR OLJDPRV DPEDV FODVHV" 3DUD HOOR FRQWDPRV FRQ OD
SURSLHGDGELWPDS'DWDSDUDOLJDUDPEDVFODVHV
(Q HO VLJXLHQWH HMHUFLFLR XWLOL]DUHPRV HO PpWRGR FRS\3L[HOV HO FXDO
SURSRUFLRQD XQD UXWLQD UiSLGD SDUD OD PDQLSXODFLyQ GH SL[HOHV HQWUH LPiJHQHV VLQ
HIHFWRV GH FRORU URWDFLyQ QL H[SDQVLyQ (VWH PpWRGR FRSLD XQ iUHD UHFWDQJXODU GH
XQD LPDJHQ HQ XQ iUHD UHFWDQJXODU GHO PLVPR WDPDxR HQ HO SXQWR GH GHVWLQR GHO
REMHWR %LWPDS'DWD GH GHVWLQR &RQ HVWH FRPDQGR ORJUDUHPRV ´FRUWDUµ HQ SHGD]RV
UHFWDQJXODUHVXQPDSDGHELWVH[WHUQRRVHDXQMSJ
6HJ~QODD\XGDGH$FWLRQ6FULSWORVSDUiPHWURVSDUDHVWHPpWRGRVRQ
• VRXUFH%LWPDS'DWD%LWPDS'DWD
VRXUFH%LWPDS'DWD%LWPDS'DWD
%LWPDS'DWD /D LPDJHQ GH PDSD GH ELWV GH HQWUDGD
GHVGH OD TXH VH YDQ D FRSLDU SL[HOHV /D LPDJHQ GH RULJHQ SXHGH VHU RWUD
LQVWDQFLD GH %LWPDS'DWD R SXHGH KDFHU UHIHUHQFLD D OD LQVWDQFLD GH
%LWPDS'DWDDFWXDO
• VRXUFH5HFW5HFWDQJO
VRXUFH5HFW5HFWDQJOH
5HFWDQJOH 8Q UHFWiQJXOR TXH GHILQH HO iUHD GH OD LPDJHQ GH
RULJHQTXHVHYDDXWLOL]DUFRPRHQWUDGD
• GHVW3RLQW3RLQW
GHVW3RLQW3RLQW
3RLQW (O SXQWR GH GHVWLQR TXH UHSUHVHQWD OD HVTXLQD VXSHULRU
L]TXLHUGDGHOiUHDUHFWDQJXODUGRQGHVHVLW~DQORVQXHYRVSL[HOHV
• DOSKD%LWPDS'DWD%LWPDS'DWD
DOSKD%LWPDS'DWD%LWPDS'DWD
%LWPDS'DWD GHIDXOW
GHIDXOW QXOO
QXOO 8Q RULJHQ VHFXQGDULR GHO
REMHWR%LWPDS'DWDGHDOID
• DOSKD3RLQW3RLQW
DOSKD3RLQW3RLQW
3RLQW GHIDXOW QXOO
QXOO (O SXQWR GHO RULJHQ GHO REMHWR %LWPDS'DWD
GH DOID TXH FRUUHVSRQGH D OD HVTXLQD VXSHULRU L]TXLHUGD GHO SDUiPHWUR
VRXUFH5HFW
• PHUJH$OSKD%RROHDQ
PHUJH$OSKD%RROHDQ
%RROHDQ GHIDXOW IDOVH
IDOVH 3DUD XWLOL]DU HO FDQDO DOID GHILQD HO
YDORU FRPR WUXH 3DUD FRSLDU SL[HOHV VLQ HO FDQDO DOID GHILQD HO YDORU FRPR
IDOVH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDFLyQGHXQURPSHFDEH]DV
&RPRSXHGHREVHUYDUYDPRVDQHFHVLWDUGRVFODVHVDX[LOLDUHVSDUDFRQVHJXLU
FRUWDUQXHVWURELWPDS\ORJUDUKDFHUXQURPSHFDEH]DVODFODVH5HFWDQJOH\ODFODVH
3RLQW
/DFODVHIODVKJHRP5HFWDQJOH
8Q REMHWR 5HFWDQJOH HV XQ iUHD GHILQLGD SRU VX SRVLFLyQ VHJ~Q VH GHWHUPLQD HQ
IXQFLyQ GH VX iQJXOR VXSHULRU L]TXLHUGR [ \ \ GH VX DOWXUD ZLGWK \ DQFKXUD
KHLJKW6LQHPEDUJRODVSURSLHGDGHVULJKW\ERWWRPHVWiQUHODFLRQDGDVGHIRUPD
LQWHJUDOFRQGLFKDVFXDWURSURSLHGDGHV
/DFODVHIODVKJHRP3RLQW
(O REMHWR 3RLQW UHSUHVHQWD XQD XELFDFLyQ HQ XQ VLVWHPD GH FRRUGHQDGDV
ELGLPHQVLRQDO GRQGH [ UHSUHVHQWD HO HMH KRUL]RQWDO \ \ UHSUHVHQWD HO HMH YHUWLFDO
0HGLDQWH HO FyGLJR VLJXLHQWH VH FUHD XQ SXQWR HQ ODV FRRUGHQDGDV
&RQHVWRVHOHPHQWRVKDUHPRVXQHMHUFLFLRSUHYLRDOGHVDUUROORGHXQURPSHFDEH]DV
VHQFLOOR
1RWD
/DFODVH%LWPDSQRHVXQDVXEFODVHGHODFODVH,QWHUDFWLYH2EMHFWSRUORTXHQRSXHGH
GLVWULEXLU HYHQWRV GH PRXVH (V SRU HOOR TXH QHFHVLWDPRV YDFLDUOR HQ XQ REMHWR
´DUUDVWUDEOHµSRUORJHQHUDODXQ6SULWH
&UHDFLyQGHXQURPSHFDEH]DV
• (QHVWHHMHUFLFLRQRXWLOL]DUHPRVXQDFODVHGHGRFXPHQWRSRUORTXH
HVFULELUHPRVXQSRFRGHFyGLJRHQHODUFKLYRIOD
• $EUDXQDUFKLYR)ODVK$6\QyPEUHORURPSHFDEH]DVIODGHQWURGHVX
FDUSHWDGHWUDEDMR
• (QHOIRWRJUDPDFODYHGHODSULPHUD\~QLFDFDSDDEUDHOHGLWRUGHVFULSWV\
HVFULEDODVVLJXLHQWHVOtQHDV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
import misClases.Rompecabezas;
var imagen:Rompecabezas = new Rompecabezas(“imagen.jpg”, 4,
4);
addChild(imagen)
• $VHJ~UHVH GH WHQHU HQ OD PLVPD FDUSHWD XQD LPDJHQ ELWPDS GH
SUHIHUHQFLDMSJGHïSL[HOHV/RVSDUiPHWURVGHOFRQVWUXFWRUGHO
URPSHFDEH]DV VRQ HO QRPEUH GHO DUFKLYR D GLYLGLU \ HO Q~PHUR GH
UHQJORQHV\FROXPQDVHQTXHTXHUHPRVGLYLGLUODLPDJHQ
• 1RFRUUDODSHOtFXODDOPHQRVTXHOHJXVWHYHUHUURUHV$~QQRVIDOWDFUHDU
ODFODVH5RPSHFDEH]DV
• $EUD XQ DUFKLYR $FWLRQ6FULSW \ QyPEUHOR 5RPSHFDEH]DVDV GHQWUR GH OD
FDUSHWDGHPLV&ODVHV
• 'HQWURGHODUFKLYRGHFODVHHVFULEDHOVLJXLHQWHFyGLJR
package {
import flash.display.Loader;
import flash.display.Sprite;
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.events.Event;
import flash.net.URLRequest;
import flash.geom.Rectangle;
import flash.geom.Point;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDFLyQGHXQURPSHFDEH]DV
• &RPR SXHGH REVHUYDU HVWH PpWRGR QR GLILHUH HQ QDGD D ORV TXH KHPRV
YLVWRHQODVVHFFLRQHVDQWHULRUHV
• 3URFHGDPRV D UHDOL]DU OD IXQFLyQ GHO OLVWHQHU RQ&DUJD&RPSOHWD (VFULED
GHEDMR GHO PpWRGR DQWHULRU VLHPSUH GHQWUR GH OD FODVH HO VLJXLHQWH
PpWRGR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDFLyQGHXQURPSHFDEH]DV
nuevaPieza.x = x *
(ancho+separacion)+margenX;
nuevaPieza.y = y *
(largo+separacion)+margenY;
}
}
}
• (QHVWHPpWRGRHVGRQGHGLYLGLPRVHOELWPDS/DSDQWDOODGHVDOLGDGHEHUi
VHUVXLPDJHQELWPDSGLYLGLGDHQFXDGURVVHPHMDQWHDODTXHVH
PXHVWUDDFRQWLQXDFLyQ
)LJXUD/DLPDJHQGLYLGLGD
)LJXUD
$KRUDSURFHGHUHPRVDWHUPLQDUQXHVWURURPSHFDEH]DVFRQXQSRFRGHFyGLJR
DGLFLRQDO
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
(MHPSORURPSHFDEH]DVWLSRFDMDGHQ~PHURV
$ SDUWLU GHO HMHUFLFLR DQWHULRU GRQGH SDUWLPRV XQ ELWPDS HQ GLIHUHQWHV SDUWHV
UHDOL]DUHPRV XQ URPSHFDEH]DV WLSR ´FDMD GH Q~PHURVµ GRQGH GHVOL]DUHPRV ODV
SLH]DV VLQ ´OHYDQWDUODVµ KDVWD IRUPDU QXHYDPHQWH OD SLH]D 3DUD HOOR WHQGUHPRV
TXHHOLPLQDUODSLH]DGHODHVTXLQDLQIHULRUGHUHFKD
$QWHVGHGDUHODOJRULWPRWUDWHGHLPDJLQDUORSRUXVWHGPLVPR¢$OJXQDLGHD"
(Q HVWH SXQWR VLHPSUH OHV SUHJXQWR D PLV DOXPQRV ¢FyPR WH FRPHUtDV D XQ
HOHIDQWH" 'HVSXpV GH XQD EUHYH UHIOH[LyQ WRGRV FRLQFLGHQ HQ OD UHVSXHVWD SXHV
SRFRDSRFR
(Q HVWH FDVR HO HOHIDQWH SXHGH VHU GHVDUUROODU XQ MXHJR GH URPSHFDEH]DV R
XQDREUDDUTXLWHFWyQLFDFRORVDO6LXQSUREOHPDFRPSOHMRORGLYLGLPRVHQSHTXHxDV
SDUWHVSRGUHPRVUHVROYHUSHTXHxRVSUREOHPDVTXHQRVOOHYDUiQDUHVROYHUJUDQGHV
SUREOHPDV
5HJUHVDQGRDOURPSHFDEH]DVSRGUtDPRVGLYLGLUHOSUREOHPDHQYDULRVSDVRVD
UHVROYHU
0RGLILFDUHODOJRULWPRGHFRUWDGRSDUDFUHDUXQDUUHJOR\QRJHQHUDUHO
~OWLPRFXDGULWR
*HQHUDUHODOJRULWPRSDUD´EDUDMDUµORVFXDGURVGHODILJXUD
$OJRULWPRSDUDPRYHUODVSLH]DV
2EYLDPHQWH H[LVWHQ PXFKDV PDQHUDV GH UHVROYHU XQ PLVPR SUREOHPD SHUR
WRPHPRVHVWRVWUHVSDVRVFRPRVXILFLHQWHV\UHVROYDPRVGHXQRHQXQR
0RGLILFDUHODOJRULWPRGHFRUWDGRSDUDFUHDU
XQDUUHJOR\QRJHQHUDUHO~OWLPRFXDGUR
• 3ULPHURFRSLHODFDUSHWDGHOHMHUFLFLRDQWHULRUFRQHOQRPEUH
URPSHFDEH]DVIOD
• 3DUDSRGHUPRYHUODVSLH]DVUHFXHUGHTXHODFODVH%LWPDSQRDFHSWDHYHQWRV
GHO PRXVH QHFHVLWDUHPRV XQ DUUHJOR TXH DOPDFHQH ODV GLUHFFLRQHV GH FDGD
XQRGHORVHOHPHQWRVGHOURPSHFDEH]DV3DUDHOORFUHDUHPRVXQDUUHJORHQOD
FODVH5RPSHFDEH]DVDVIXHUDGHODVIXQFLRQHVSDUDTXHVHDXQREMHWRYLVLEOH
HQ WRGDV ODV IXQFLRQHV GH OD FODVH 3RU HMHPSOR HO Q~PHUR HV VyOR XQD
JXtDHQORVFRPHQWDULRV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDFLyQGHXQURPSHFDEH]DV
• 6LREVHUYDHOHMHUFLFLRDQWHULRUODUXWLQDTXHFRUWDODLPDJHQODGHMDPRVHQOD
IXQFLyQGHOLVWHQHURQ&DUJD&RPSOHWDORFXDOGHPRPHQWRQRHVEXHQDLGHD
\DTXHODPRGLILFDUHPRV(VSRUHOORTXHFUHDUHPRVXQDIXQFLyQHVSHFLDOTXH
VHOODPHFRUWD,PDJHQ\PRYHUHPRVHOFyGLJRGHFRUWHDODQXHYDIXQFLyQ
• 1RROYLGHLQYRFDUDODIXQFLyQGHVGHODIXQFLyQGHOOLVWHQHULQFOX\HQGROD
LQIRUPDFLyQGHOREMHWRELWPDSFRPRSDUiPHWURHVGHFLU
ELWPDSELWPDS'DWD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
• 2WUR SHTXHxR SDVR HV FUHDU D ODV YDULDEOHV DQFKR \ ODUJR IXHUD GH ODV
IXQFLRQHV SDUD TXH VHDQ YLVLEOHV HQ ODV GHPiV IXQFLRQHV \ QR WHQHU TXH
SDVDUODVFRPRSDUiPHWURVRUHFDOFXODUODV
//
private var ancho:Number;
private var largo:Number;
• (O VLJXLHQWH SDVR HV VDEHU TXp LQIRUPDFLyQ QHFHVLWDUHPRV SDUD PRYHU OD
SLH]D
o /DSRVLFLyQRULJLQDO1RVVHUYLUiSDUDVDEHUVLHOMXHJRKDWHUPLQDGR
o /DSRVLFLyQDFWXDO/DQHFHVLWDPRVSDUDPRYHUODSLH]D(QHOLQLFLR\
HQHOILQGHOMXHJRDPEDVSRVLFLRQHVVHUiQLJXDOHV
o /DUHIHUHQFLDGHODSLH]D
• (VWDLQIRUPDFLyQOD SRGHPRVJXDUGDUHQHOREMHWRPLVPRRHQXQDUUHJOR
/RKDUHPRVHQXQDUUHJOR\ORDOPDFHQDUHPRVFRPRXQDUUHJORGHREMHWRV
'HQWUR GH OD UXWLQD GH FRUWD,PDJHQ DQWHV GH FHUUDU ORV FLFORV IRU
JXDUGDUHPRVHVWDLQIRUPDFLyQHQXQREMHWR\SRVWHULRUPHQWHHQXQDUUHJOR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDFLyQGHXQURPSHFDEH]DV
• 0X\ ELHQ \D WHQHPRV OD LQIRUPDFLyQ DKRUD QHFHVLWDPRV XQ OLVWHQHU SDUD
TXHGHWHFWHFXiQGRODSLH]DHQHVWHFDVRXQ6SULWHIXHSXOVDGDDVtTXH
GHEDMRGHOFyGLJRDQWHULRUHVFULELUHPRVQXHVWURGHWHFWRUGHHYHQWRV
nuevaPieza.addEventListener(MouseEvent.CLICK, onClicPieza);
• 8Q SXQWR PX\ LPSRUWDQWH HV TXH QHFHVLWDPRV LPSRUWDU D OD FODVH
0RXVH(YHQW SDUD TXH IXQFLRQH QXHVWUR OLVWHQHU 3DUD WHUPLQDU HVWH SXQWR
QHFHVLWDPRV HOLPLQDU HO ~OWLPR FXDGULWR HV GHFLU HO GH OD HVTXLQD LQIHULRU
GHUHFKDSHURSDUDHYLWDUODSHQDGHKDFHUOR\OXHJRGHVWUXLUORVHUiPHMRU
HYLWDUFUHDUOR(VWRORFRQVHJXLUHPRVFRQXQDVHQWHQFLDFRQGLFLRQDOLI
• 3DUD VDEHU FXiO FXDGULWR VDOWDUQRV XWLOL]DUHPRV XQ REMHWR WLSR 3RLQW TXH
JHQHUDOPHQWH VH XWLOL]D SDUD SL[HOHV SHUR OR XVDUHPRV SDUD FRRUGHQDGDV
HVGHFLU
• (VWH REMHWR OR GHILQLUHPRV DQWHV GH ORV FLFORV IRU GHQWUR GH OD UXWLQD
FRUWD,PDJHQ )LQDOPHQWH GHQWUR GH DPERV FLFORV \ DQWHV GH FUHDU OD
SLH]DSUHJXQWDUHPRVVLHVOD~OWLPDGHODVSLH]DVGHOURPSHFDEH]DV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
)LJXUD&RRUGHQDGDVGHODVSLH]DV
)LJXUD
//1.6 Salta
if(blanco.equals(new Point(x,y))) continue;
• 2EVHUYHTXHHVRWUDIRUPDGHHVFULELUODVVHQWHQFLDVFRQGLFLRQDOHVFXDQGR
VyOR WLHQHQ XQD LQVWUXFFLyQ QR HV QHFHVDULR HVFULELU ODV OODYHV $XQTXH HV
XQDHVWUXFWXUDSHUIHFWDPHQWHYiOLGDQRHVDFRQVHMDEOHSRUTXHDYHFHVQR
HV PX\ FODUD /D SDODEUD UHVHUYDGD FRQWLQXH VDOWD WRGDV ODV LQVWUXFFLRQHV
GHQWURGHXQFLFOR
• &RQHVWRWHUPLQDPRVHOSULPHUSDVRSDUDQXHVWURURPSHFDEH]DV&RPHQWH
ODOtQHDGHOOLVWHQHUHODGG(YHQW/LVWHQHUSDUDTXHQRVHJHQHUHXQPHQVDMH
GH HUURU \D TXH QR KHPRV FUHDGR D~Q OD IXQFLyQ GHO OLVWHQHU \ HMHFXWH OD
SHOtFXOD'HEHUHPRVWHQHUODLPDJHQFRUWDGDSHURVLQOD~OWLPDSLH]D
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDFLyQGHXQURPSHFDEH]DV
)LJXUD(OMSJFRUWDGR\VLQOD~OWLPDSLH]D
)LJXUD
*HQHUDUHODOJRULWPRSDUD´EDUDMDUµORVFXDGURVGHODILJXUD
8QDYH]TXH\DWHQHPRVORVFXDGURVQHFHVLWDPRVFDPELDUORVGHOXJDUSDUDTXHHO
XVXDULR ORV YXHOYD D DFRPRGDU (O SUREOHPD HV TXH QR ORV SRGHPRV FDPELDU HQ
IRUPD DOHDWRULD GH OR FRQWUDULR FRUUHUtDPRV HO ULHVJR GH TXH HO URPSHFDEH]DV QR
WXYLHUDVROXFLyQDVtTXHHOSURJUDPDWHQGUiTXH´MXJDUµYDULDVYHFHVPRYLHQGRODV
SLH]DVGHWDOIRUPDTXHODVSLH]DVTXHGHQDSDUHQWHPHQWHGHVRUGHQDGDVSHURVHD
IDFWLEOHUHJUHVDUODV
3DUDHOORQXHVWURSURJUDPD´MXJDUiµYHFHVDQWHVGHGiUVHORDOXVXDULR
LJXDOTXHKDFtDPRVFXDQGRMXJiEDPRVFRQODVFDMLWDVGHQ~PHURV
&RPR XQD EXHQD SUiFWLFD DOPDFHQDUHPRV HQ XQD YDULDEOH HO Q~PHUR GH
MXJDGDV R LWHUDFLRQHV &RORFDUHPRV HVWD YDULDEOH IXHUD GH ODV IXQFLRQHV SDUD TXH
VHDDFFHVLEOHHQWRGRHOFyGLJRGHODFODVH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
(OFyGLJRTXHEDUDMDUiORVUHFXDGURVORHVFULELUHPRVHQXQDIXQFLyQTXHVHOODPDUi
EDUDMDU
1RROYLGHLQYRFDUODIXQFLyQGHVSXpVGHFUHDUORVFXDGURVVDOLHQGRGHOVHJXQGRIRU
$KRUDYHQGUiHOVLJXLHQWHSUREOHPDDUHVROYHU¢FyPRYDPRVDPRYHUHOUHFXDGUR"
3DUDHOORGHEHPRVFRQVLGHUDUODVVLJXLHQWHVUHVWULFFLRQHV
• 1RSXHGHPRYHUXQDSLH]DDXQOXJDURFXSDGRSRURWUDSLH]D
• 1RSXHGHPRYHUXQDSLH]DIXHUDGHOWDEOHUR
(VWRQRVWUDHXQSUREOHPDTXHHVPX\IUHFXHQWHFXDQGRGHVDUUROODPRVMXHJRV\HV
TXH OD FRPSXWDGRUD HQ UHDOLGDG QXHVWUR SURJUDPD VLHPSUH MXHJD LJXDO HV GHFLU
VLHPSUH PXHYH OD SULPHUD SLH]D GH LQLFLR 7RPDQGR HVWH ~OWLPR SXQWR FRPR RWUD
UHVWULFFLyQKDUHPRVXQDUUHJORFRQODVMXJDGDVSRVLEOHV\VHOHFFLRQDUHPRVXQDDO
D]DU
(QUHVXPHQSDUDUHDOL]DUHVWHDOJRULWPRORVSDVRVSUHYLRVVHUtDQ
• 8QDUUHJORGHWLUDGDVSRVLEOHVSDUDHOORUHFRUUHUHPRVWRGDVODVSLH]DV
• 6HOHFFLRQDPRVDOD]DUXQDGHODVWLUDGDVSRVLEOHV
/ODPDPRVDODUXWLQDPXHYH3LH]D
(OFyGLJRSDUDLPSOHPHQWDUODIXQFLyQVHUiHOVLJXLHQWH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDFLyQGHXQURPSHFDEH]DV
$TXtIDOWDUtDUHVROYHURWURVGRVSUREOHPDVTXHHQUHDOLGDGVRQGRVIXQFLRQHV
'HWHUPLQDUTXHXQDMXJDGDHVSRVLEOH
0RYHUODSLH]DUHVROYDPRVHOSULPHUR
¢&yPRVDEHPRVVLXQPRYLPLHQWRHVYiOLGR"
$O LJXDO TXH ORV SUREOHPDV DQWHULRUHV H[LVWHQ YDULDV IRUPDV HQ TXH SRGHPRV
UHVROYHUXQSUREOHPDRFRPRGLFHQFDGDTXLHQPDWDODVSXOJDVFRPRSXHGH8QD
GH ODV GLIHUHQWHV VROXFLRQHV HV TXH VDEHPRV FXiO GH ORV FXDGURV HVWi YDFtR OR
DOPDFHQDPRV HQ HO REMHWR GH WLSR 3RLQW ´EODQFRµ HO FXDO DOPDFHQD FRRUGHQDGDV
PiVTXHSL[HOHV
6L VDEHPRV HO OXJDU TXH HVWi GLVSRQLEOH SRU PHGLR GH ODV FRRUGHQDGDV
QXHVWURDOJRULWPRVHVLPSOLILFDPXFKR\DVyORKD\ TXH FRPSDUDUODVFRRUGHQDGDV
GHOHVSDFLRHQEODQFRFRQODVFRRUGHQDGDVGHQXHVWUDSLH]D
6XSRQJDTXHGHVHDPRVYHULILFDUHOFXDGURGHODVFRRUGHQDGDV\TXH
ODVFRRUGHQDGDVVHHQFXHQWUDQGLVSRQLEOHVFRPRVHPXHVWUDHQOD)LJ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
)LJXUD
)LJXUD3RVLEOHVMXJDGDVGHXQDSLH]D
• 6LREVHUYDPRVODVFRRUGHQDGDVGHODL]TXLHUGDGLVPLQX\HVXYDORUHQ\HQ
XQR \ DXPHQWH OD \ D OD GHUHFKD $OJR SDUHFLGR RFXUUH VL YHULILFDPRV ODV
FRRUGHQDGDVGHOHOHPHQWRKDFLDDUULEDGLVPLQX\HHOYDORUGHOD[\KDFLD
DEDMRDXPHQWDHQ
• $Vt TXH \D FRQ HVWD LQIRUPDFLyQ GH VyOR YDULDU HQ XQR \ FRPSDUDU FRQ HO
HVSDFLRHQEODQFRODIXQFLyQSRGUtDTXHGDUGHODVLJXLHQWHIRUPD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDFLyQGHXQURPSHFDEH]DV
• (O UHVXOWDGR VHUi XQD FDGHQD TXH QRV GLJD VL HO HVSDFLR HQ EODQFR VH
HQFXHQWUD MXQWR D OD SLH]D TXH VH UHYLVD GH OR FRQWUDULR PDQGDUHPRV OD
FDGHQDGH´LQYDOLGDµ\DTXHVDEHPRVFXiOHVGHODVSRVLEOHVPRYLGDVVRQ
YiOLGDV\VHOHFFLRQDPRVXQDDOD]DUHVWDPRVOLVWRVSDUDUHVROYHUQXHVWUR
VLJXLHQWHSUREOHPDPRYHUODSLH]D
• 3DUD PRYHU OD SLH]D GHWHUPLQDUHPRV ODV GLUHFFLRQHV SRU PHGLR GH GRV
YDULDEOHVG[\G\
• /XHJRFDOFXODUHPRVODVQXHYDVFRRUGHQDGDV\PRYHUHPRVODSLH]D
• 3RU~OWLPRDOPDFHQDUHPRVODVQXHYDVFRRUGHQDGDVHQEODQFR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
dx = -1;
dy = 0;
break;
case "derecha":
dx = 1;
dy = 0;
break;
}
//Calcula nuevas coordenadas
pieza.posActual.x += dx;
pieza.posActual.y += dy;
blanco.x -= dx;
blanco.y -= dy;
//Mueve objeto
pieza.pieza.x =
pieza.posActual.x*(ancho+separacion)+margenX;
pieza.pieza.y =
pieza.posActual.y*(largo+separacion)+margenY;
}
6LHMHFXWDODSHOtFXOD)ODVKGHEHUiWHQHUXQWDEOHURFRQODVSLH]DVEDUDMDGDV
)LJXUD
)LJXUD/DVSLH]DVHQGHVRUGHQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDFLyQGHXQURPSHFDEH]DV
0RYHUODVSLH]DV
<DTXHWHQHPRVODLPDJHQFRUWDGD\ODVSLH]DVIXHUDGHRUGHQQHFHVLWDPRVLQLFLDU
HOMXHJR'HPRPHQWRHOXVXDULRVyORQHFHVLWDSXOVDUFRQHODSXQWDGRUGHOUDWyQOD
SLH]DHQHOHVFHQDULRSDUDTXHpVWDVHPXHYDDOOXJDUDGHFXDGR1RKD\QHFHVLGDG
GHTXHHOXVXDULRODDUUDVWUH
3DUDPRYHUXQDSLH]DEDVWDUiFRQLQGLFDUOHODVQXHYDVFRRUGHQDGDV\SDUD
HOOR VyOR QHFHVLWDPRV DXPHQWDU R GLVPLQXLU HQ XQR ODV FRRUGHQDGDV 8QD SRVLEOH
VROXFLyQDHVWHSUREOHPDTXHGDUtDHQODVLJXLHQWHIXQFLyQ
case "abajo":
dx = 0;
dy = 1;
break;
case "izquierda":
dx = -1;
dy = 0;
break;
case "derecha":
dx = 1;
dy = 0;
break;
}
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
&UHDUFODVHVYLVXDOHVSHUVRQDOL]DGDV
//Mueve objeto
pieza.pieza.x =
pieza.posActual.x*(ancho+separacion)+margenX;
pieza.pieza.y =
pieza.posActual.y*(largo+separacion)+margenY;
}
3DUDWHUPLQDUHOWHUFHUSXQWRQRVKDFHIDOWDTXHHOXVXDULRSXOVHVREUHXQDSLH]D
&RPRXQDSLH]DVyORSXHGHPRYHUVHVLWLHQHHOHVSDFLRHQEODQFRDVXODGRQRKD\
QHFHVLGDG GH DUUDVWUDUOD QRVRWURV PRYHUHPRV OD SLH]D SDUD HOOR WHQHPRV XQ
SHTXHxRSUREOHPDODLQIRUPDFLyQHVWiHQXQDUUHJORQRHQHOREMHWR
$VtTXHWHQHPRVTXHHQFRQWUDUHOREMHWRDPRYHU
3DUD HOOR SULPHUR TXLWH HO FRPHQWDULR DO OLVWHQHU TXH GHILQLPRV HQ
FRUWD,PDJHQ+DJDPRVODIXQFLyQRQ&OLF3LH]DFRQXQFLFORYHULILFDPRVODSLH]DTXH
IXHSXOVDGD\HMHFXWDPRVODIXQFLyQPRYHU3LH]D
/DIXQFLyQTXHGDUtD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$PDQHUDGHFRQFOXVLyQ
• (MHFXWHODSHOtFXOD\MXHJXHYDULDVYHFHVFRQHOSURJUDPD¢&yPRKDUtD
SDUDTXHHOXVXDULRWXYLHUDXQPHQ~\SXGLHUDVHOHFFLRQDUODVSHOtFXODV
GHODPiTXLQD"
• 'HVDUUROOHHOSURJUDPDSDUDODVROXFLyQTXHSURSRQH
7,3
7,3
6LXVD)ODVK'HYHORS\QRTXLHUHWHFOHDUORVLPSRUWV
$O HVFULELU HQ OD OtQHD GH FyGLJR OD SDODEUD (YHQW R 0RXVH(YHQW VRPEUpHOD \
SXOVH >&75/@>6KLIW@>@ DXWRPiWLFDPHQWH )ODVK'HYHORS DJUHJDUi HO LPSRUW D ORV
DUFKLYRVPHQFLRQDGRV
$PDQHUDGHFRQFOXVLyQ
(QHVWHFDStWXORDSUHQGLy
• &yPRFUHDUERWRQHVVHQFLOORV
• &yPR FDUJDU LPiJHQHV H[WHUQDV HQ WLHPSR GH HMHFXFLyQ OD FODVH
/RDGHU
• &yPRFDUJDUHLQWHUDFWXDUFRQSHOtFXODVH[WHUQDV
• $'HVDUUROODUXQURPSHFDEH]DV
&RQRFLy PiV GH DOJXQDV GH ODV QXHYDV FODVHV YLVXDOHV TXH FRPR \D VH KDEtD
GLFKRKDFHQDVXVSURJUDPDVPiVOLJHURV\UiSLGRV
(OVLJXLHQWHFDStWXORORGHGLFDUHPRVDODVFODVHVTXHSHUPLWHQHOPDQHMRGH
WH[WR OR TXH HV SDUWLFXODUPHQWH LPSRUWDQWH FXDQGR UHDOL]DPRV DSOLFDFLRQHV HQ
)ODVK
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
Texto 7
,QWURGXFFLyQ
(OPDQHMRGHWH[WRWDPELpQWLHQHPRGLILFDFLRQHVHQ$6/DVFODVHVLQYROXFUDGDV
HQHOPDQHMRGHOWH[WRVHOLVWDQHQOD7DEOD
7DEOD&ODVHVLQYROXFUDGDVHQHOPDQHMRGHOWH[WR
7DEOD
Clase Descripció n
7H[W)LHOG &RQWURODHOWH[WRHQODSDQWDOOD0DQLSXODORVFDPSRV
KHFKRVFRQ$6\ORVGLQiPLFRV\GHHQWUDGDKHFKRV
FRQHO,'(
6WDWLF7H[W &RQWURODORVWH[WRVHVWiWLFRVKHFKRVFRQHO,'(
7H[W6QDSVKRW (VXQDFDGHQDTXHFRQWLHQHORVWH[WRVHVWiWLFRV
KHFKRVFRQ)ODVKGHVGHHO,'(
7H[W)RUPDW &UHDREMHWRVSDUDIRUPDWHDUFDMDVGHWH[WR
&606HWWLQJ (VWDFODVHFRQWURODODUHQGHUL]DFLyQGHOWH[WR\GHO
DQWLDOLDV
)RQW 3URYHHXQDOLVWDGHODVIXHQWHVGLVSRQLEOHVR
HPEHELGDVHQHODUFKLYRVZI
7H[W/LQH0HWULFV 'HVFULEHODVPHGLGDVGHXQDOtQHDGHWH[WRHQORV
FDPSRVGHWH[WR
8QRGHORVSULQFLSDOHVFDPELRVDSDUWHGHTXHFRPRREMHWRVYLVXDOHVKD\TXH
DxDGLUORV D OD OLVWD GH YLVXDOL]DFLyQ HV TXH VH QHFHVLWD FUHDU XQ REMHWR
LQGHSHQGLHQWH D XQ 0RYLH&OLS (Q ODV YHUVLRQHV DQWHULRUHV GH $6 OD VLQWD[LV SDUD
FUHDUXQDFDMDGHWH[WRHUD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)RUPDWRGHXQWH[WR
6H FUHDUi DXWRPiWLFDPHQWH XQD FDMD GH ï SL[HOHV OD FXDO QR VH YH HQ
SULPHUD LQVWDQFLD /DV FRRUGHQDGDV GH OD FDMD VRQ HQ UHODFLyQ FRQ VX
FRQWHQHGRU3DUDDxDGLUHOWH[WRDODFDMDEDVWDFRQDVLJQDUORDODSURSLHGDGWH[W
$XQTXH HQ ODV YHUVLRQHV DQWHULRUHV FRQ HVWR EDVWDUtD SDUD PRVWUDU HO WH[WR HQ HO
HVFHQDULR HQ $6 FRPR \D VH KD YLVWR HQ ORV HMHUFLFLRV GH ORV FDStWXORV
DQWHULRUHVKD\TXHDxDGLUORDODOLVWDGHYLVXDOL]DFLyQFRQ
addChild(texto);
)RUPDWRGHXQWH[WR
8QSDVRIXQGDPHQWDOHQHO PDQHMRGHWH[WRHQ)ODVKHVTXHVHOHGpIRUPDWRHV
GHFLUFDPELDUORGHFRORUIXHQWH\HVWLORSRUHMHPSORLWiOLFDVQHJULOODVRVXEUD\DGR
8QWH[WRHQ$FWLRQ6FULSWSXHGHVHUIRUPDWHDGRGHYDULDVPDQHUDV
&RQODVSURSLHGDGHVGHODFODVH7H[W)LHOG
&RQHWLTXHWDV+70/
&RQXQREMHWRGHIRUPDWRGHWH[WR7H[W)RUPDW
&RQHVWLORVHQFDVFDGD&66
7RGDV ODV WpFQLFDV SDUD IRUPDWHDU WH[WRV WLHQHQ YHQWDMDV \ GHVYHQWDMDV $
FRQWLQXDFLyQVHGHVFULEHEUHYHPHQWHFDGDXQDGHHOODV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
)RUPDWHRFRQODFODVH7H[W)LHOG
eVWDHVODPDQHUDPiVGLUHFWDGHGDUOHIRUPDWRDXQD FDMDGHWH[WRSHURWLHQHHO
LQFRQYHQLHQWH GH TXH KD\ TXH DSOLFDUOR FDMD SRU FDMD GH WH[WR \ HV GH GLItFLO
PDQWHQLPLHQWR HV GHFLU VL VH WLHQH XQ IRUPDWR FRQ FDMDV GH WH[WR FXDQGR
VXUJLHUDXQFDPELRVHWHQGUtDTXHPRGLILFDUORHQOXJDUHV$KRUDLPDJtQHVHGDUOH
PDQWHQLPLHQWR D WRGR XQ VLWLR $OJXQRV GH ORV FRPDQGRV TXH HQ VX PD\RUtD VRQ
VLPLODUHVDORVGHODVYHUVLRQHVDQWHULRUHVVHOLVWDQHQOD7DEOD
7DEOD&RPDQGRVSDUDIRUPDWHRGHWH[WR
7DEOD
Propiedad Descripció n
ZLGWK 0DQHMDHODQFKRGHODFDMD
KHLJKW 0DQHMDODDOWXUDGHODFDMD
EDFNJURXQG $FWLYDODYLVXDOL]DFLyQGHODFDMDGHWH[WR
EDFNJURXQG&RORU &DPELDHOFRORUGHODFDMDGHWH[WR
ERUGHU $FWLYDRGHVDFWLYDHOERUGHGHODFDMDGHWH[WR
ERUGHU&RORU &DPELDHOFRORUGHOERUGHGHODFDMD3RUGHIDXOWHVQHJUD
ZRUG:UDS 3HUPLWHMXVWLILFDUHOWH[WRKDFLDDEDMRGHODFDMD
DXWR6L]H $PSOtD OD FDMD VHJ~Q HO WDPDxR GHO WH[WR 6H UHFRPLHQGD
XWLOL]DU ODV FRQVWDQWHV GH OD FODVH 7H[W)LHOG$XWR6L]H FRPR
VRQ 121( /()7 5,*7+ &(17(5 SDUD TXH HO FRPSLODGRU
SXHGDYDOLGDUODV
WH[W&RORU &DPELDHOFRORUGHOWH[WR
$VLPLVPR GHQWUR GH HVWD FODVH VH FXHQWD FRQ GLIHUHQWHV PpWRGRV SDUD
PRGLILFDU HO FRQWHQLGR GHO WH[WR OD PD\RUtD VRQ QXHYRV HQ $6 (QWUH RWURV VH
HQFXHQWUDQUHODFLRQDGRVHQOD7DEODSDUDPD\RUUHIHUHQFLDSXHGHFRQVXOWDUOD
GRFXPHQWDFLyQGHOSDTXHWH
7DEOD0pWRGRVSDUDPRGLILFDUHOFRQWHQLGRGHOWH[WR
7DEOD
Método Descripció n
DSSHQG7H[W $xDGHXQDFDGHQDDOILQDOGHODFDMDGHWH[WR
UHSODFH7H[W 5HHPSOD]DWH[WRGHQWURGHODFDMDSRURWUD
VXEFDGHQD
UHSODFH6HOHFWHG7H[W 5HHPSOD]DHOWH[WRVHOHFFLRQDGRSRUXQD
VXEFDGHQD
JHW3DUDJUDSK/HQJWKLQGLFH 5HJUHVDHOQ~PHURGHFDUDFWHUHVGHXQSiUUDIR
GDGRHQHOtQGLFH
JHW)LUVW&KDU,Q3DUDJUDSKLQGLFH ,QGLFDODSRVLFLyQGHOSULPHUFDUiFWHUGHXQ
SiUUDIRLQGLFDGRHQHOtQGLFH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)RUPDWRGHXQWH[WR
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$6VHQRPEUDFRPRWH[WRIOD\VHJXDUGDHQOD
FDUSHWDGHWUDEDMR
• 6HFUHDXQDUFKLYR$FWLRQ6FULSWVHQRPEUDFRPR7H[WRDV\VHJXDUGDHQOD
FDUSHWDPLV&ODVHV
• (QHODUFKLYRWH[WRIODVHHVFULEHHQHOFDPSRGH'RFXPHQW&ODVVODFDGHQD
PLV&ODVHV7H[WR
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.text.*;
$OHMHFXWDUODSHOtFXODREVpUYHVHTXHODFDMDGHWH[WRDEDUFDïSL[HOHV\VH
HVWi MXVWLILFDQGR HQ IRUPD DXWRPiWLFD KDFLD DEDMR SHUR QR VH GHVSOLHJD WRGR HO
WH[WR /D FDMD GH WH[WR VyOR VH YLVXDOL]DUi DO PRPHQWR GH GDU HO DSSHQG&KLOG OR
PLVPRTXHVXFHGHFRQORVRWURVREMHWRVGHODVFODVHVYLVXDOHV
$KRUD VH DxDGLUiQ DOJXQRV FRPDQGRV GH IRUPDWHR EiVLFR 'LFKRV FRPDQGRV
GHEHUiQVHUFRORFDGRVDQWHVGHODDVLJQDFLyQGHODFDGHQDDOWH[WRGHORFRQWUDULR
QRVHUiQWRPDGRVHQFXHQWD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
package misClases{
import flash.display.Sprite;
import flash.text.*;
public class Texto extends Sprite {
public function Texto() {
//Básicos
miTexto.width = 250;
miTexto.height = 300;
miTexto.multiline = true;
miTexto.wordWrap = true;
miTexto.border = true;
miTexto.background = true;
miTexto.text = miCadena;
addChild(miTexto);
}
}
}
2EVpUYHVHTXHDKRUDVHGHVSOLHJDHOWH[WRFRPSOHWRDVtFRPRHOERUGHQHJURGHOD
FDMDGHWH[WR6HDxDGHQORVFRPDQGRVSDUDHOPDQHMRGHFRORUHVGHOERUGHGHODV
IXHQWHV\GHOIRQGRGHODFDMDGHWH[WR$KRUDVHHVFULEHQODVVLJXLHQWHVOtQHDVHQWUH
ORVFRPDQGRVEiVLFRV\DQWHVGHODDVLJQDFLyQGHODFDGHQD
//Color
miTexto.borderColor = 0xff0000;
miTexto.backgroundColor = 0x006666;
miTexto.textColor = 0xffffff;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)RUPDWRGHXQWH[WR
$OHMHFXWDUODSHOtFXODVHREVHUYDTXHDKRUDHOIRQGRGHODFDMDHVYHUGHHOERUGHHV
URMR\HOFRORUGHODIXHQWHHVEODQFR(QHVWHSXQWRVHDSOLFDQDOJXQRVPpWRGRVGH
$6SDUDHOPDQHMRGHWH[WR
3ULPHURVHXWLOL]DUiHOPpWRGRDSSHQG%ODQNHOFXDOSHUPLWHDxDGLUWH[WRDO
ILQDOGHXQDFDMDGHWH[WR\DFUHDGDVHWLHQHWDPELpQHOPpWRGRUHSODFH7H[WSDUD
VXVWLWXLUWH[WRDSDUWLUGHXQDSRVLFLyQLQLFLDOKDVWDXQDSRVLFLyQILQDO\ORUHHPSOD]D
SRUXQWH[WRQXHYR
&RQ HO PpWRGR JHW3DUDJUDSK/HQJWK VH REWLHQH OD ORQJLWXG GH XQ SiUUDIR
VHJ~Q HO Q~PHUR GH tQGLFH TXH VH OH SURSRUFLRQH 'HVSXpV GH OD DVLJQDFLyQ GH
FRORUHV \ GH OD DVLJQDFLyQ GH OD FDGHQD DO WH[WR VH HVFULEHQ ODV VLJXLHQWHV
VHQWHQFLDV
//Métodos
miTexto.appendText("\n...ESTO ES UNA MUESTRA DE LOS
METODOS");
miTexto.replaceText(0,5,"LOREM");
var ultimoCaracter:int = miTexto.getParagraphLength(0)
trace("El primer párrafo tiene "+ultimoCaracter+"
caracteres");
trace("El segundo párrafo inicia en el caracter
"+(ultimoCaracter+1));
trace("El segundo párrafo tiene
"+miTexto.getParagraphLength(ultimoCaracter)+"
caracteres.");
1yWHVH TXH VH OH DVLJQy XQ FDUDFWHU GH HVFDSH ´?Qµ SDUD JHQHUDU XQ UHWRUQR GH
FDUURGHQWURGHOWH[WR
)RUPDWRFRQ7H[W)RUPDW&ODVV
(VWDFODVH\DHVWDEDLPSOHPHQWDGDHQODVYHUVLRQHVDQWHULRUHVGH$68QDYHQWDMD
GH OD QXHYD YHUVLyQ HV TXH \D QR HV QHFHVDULR HO FRPDQGR VHW1HZ7H[W)RUPDW
$OJXQDV GH ODV SURSLHGDGHV GH IRUPDWR FRQ 7H[W)RUPDW &ODVV VH SUHVHQWDQ HQ OD
7DEOD/DVSURSLHGDGHVSDUDPDQHMRGHSiUUDIRVVHPXHVWUDQHQOD7DEOD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
7DEOD3URSLHGDGHVGHODFODVH7H[W)RUPDW
7DEOD
Propiedad Descripció n
EROG 0DQHMDODVOHWUDVHQQHJULWDV
FRORU 0RGLILFDHOFRORUGHODIXHQWH
IRQW &RQWURODODIXHQWHGHOWH[WR
LWDOLF ,QGLFDVLODIXHQWHHVLWiOLFD
NHUQLQJ 9DORU ERROHDQR TXH LQGLFD VL VH DMXVWDQ ORV SL[HOHV
HQWUHORVFDUDFWHUHVWUXHRQRIDOVH
OHWWHU6SDFLQJ (V XQ Q~PHUR HQWHUR TXH LQGLFD HO HVSDFLR HQWUH ORV
FDUDFWHUHV
VL]H (VHOWDPDxRHQSXQWRVGHORVFDUDFWHUHV3RUGHIDXOW
VXWDPDxRHV
XQGHUOLQH 9DORU ERROHDQR TXH LQGLFD VL HO WH[WR VH HQFXHQWUD
VXEUD\DGRWUXHRQRIDOVH
7DEOD
7DEOD3URSLHGDGHVSDUDHOPDQHMRGHSiUUDIRV
Propiedad Descripció n
DOLJQ ,QGLFD OD DOLQHDFLyQ GHO SiUUDIR VHJ~Q ODV FRQVWDQWHV
GHODFODVH7H[W)RUPDW$OLJQ
EORFN,QGHQW ,QGLFDODLQGHQWDFLyQGHOSiUUDIRHQSL[HOHV
EXOOHW ,QGLFDVLHOWH[WRFRQWLHQHXQEXOOHWWUXHRQRIDOVH
LQGHQW ,QGLFDODLQGHQWDFLyQGHOSULPHUFDUDFWHUGHXQSiUUDIR
OHDGLQJ (VHOHVSDFLRHQWUHOtQHDV
OHIW0DUJLQ (VHOQ~PHURGHSL[HOHVGHOPDUJHQL]TXLHUGR
ULJKW0DUJLQ (VHOQ~PHURGHSL[HOHVGHOPDUJHQGHUHFKR
WDE6WRSV (VXQDUUHJORFRQYDORUHVQXPpULFRVQRQHJDWLYRVSDUD
HOVDOWRGHODWHFOD>7DE@6XYDORUSRUGHIDXOWHV
1RWD
,QGHQWDFLyQ R LGHQWDFLyQ LQGHQWDWLRQ HV XQ DQJOLFLVPR XVDGR HQ LQIRUPiWLFD TXH
VLJQLILFDPRYHUXQEORTXHGHWH[WRKDFLDODGHUHFKDLQVHUWDQGRHVSDFLRVRWDEXODGRUHV
SDUDVHSDUDUORGHOWH[WRDG\DFHQWHOR TXHHQHOiPELWRGHODLPSUHQWDVHGHQRPLQD
VDQJUDGRRVDQJUtD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)RUPDWRGHXQWH[WR
3DUD TXH DSDUH]FDQ ORV FDPELRV GH ORV HVWLORV HQ OD FDMD GH WH[WR GHEH
DSOLFDUVH HO IRUPDWR DQWHV GH PRGLILFDU RDxDGLUWH[WRORVSDVRV SDUDDSOLFDUXQ
IRUPDWRDXQDFDMDGHWH[WRVRQ
1. &UHDUXQREMHWR7H[W)RUPDWRWDPELpQSXHGHVHUXQDFDMDGHWH[WRFUHDGD
FRQHO,'(
2. 3REODUHOREMHWRFRQYDORUHVSDUDODVSURSLHGDGHVGHODVWDEODVDQWHULRUHV
3. $SOLFDUHOIRUPDWRDODFDMDGHWH[WR
(OIRUPDWRSDUDDSOLFDUHOIRUPDWRGHWH[WRHV
cajadeTexto.setTextFormat(objetoTextFormat, indiceInicial,
indiceFinal);
/RVGRV~OWLPRVVRQRSFLRQDOHV6LQRVHLQFOX\HQHQODDVLJQDFLyQHOHIHFWRRFXUULUi
HQWRGRHOWH[WR6LVyORVHLQFOX\HHOtQGLFHLQLFLDO\QRHOILQDOHOIRUPDWRDSOLFDUiD
SDUWLUGHpVWHKDVWDHO~OWLPRFDUDFWHUGHOWH[WR
(MHPSOR
• 6H FDPELD HO 'RFXPHQWR GH FODVH HQ HO DUFKLYR WH[WRIOD SRU HO GH
PLV&ODVHV7H[WR
• 6H FUHD XQ QXHYR DUFKLYR $FWLRQ6FULSW \ VH JUDED HQ OD FDUSHWD PLV&ODVHV
FRQHOQRPEUHGH7H[WRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.text.*;
public class Texto1 extends Sprite {
private var miTexto:TextField;
private var miCadena:String = "Lorem ipsum dolor
sit amet, consectetuer adipiscing elit. Praesent id enim
rhoncus libero interdum luctus. Nam id nunc. Nullam
pharetra elit quis ipsum. Phasellus sed enim. Nulla
facilisi. \n\nUt pellentesque risus eget felis. Aliquam
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
//Básicos
miTexto= new TextField;
miTexto.width = 250;
miTexto.height = 300;
miTexto.multiline = true;
miTexto.wordWrap = true;
miTexto.border = true;
miTexto.background = true;
//Asignación
miTexto.text = miCadena;
//
var ultimoCaracter:int =
miTexto.getParagraphLength(0);
var segundoParrafo:int =
miTexto.getParagraphLength(ultimoCaracter+1);
trace(ultimoCaracter);
trace(segundoParrafo);
//Formatos
var formato1:TextFormat = new TextFormat();
var formato2:TextFormat = new TextFormat();
formato1.color = 0xff0000;
formato2.color = 0x00ff00;
miTexto.setTextFormat(formato1);
miTexto.setTextFormat(formato2,ultimoCaracter+1,ultimoCaracter+segundoParrafo
+1);
addChild(miTexto);
}
}
}
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)RUPDWRGHXQWH[WR
/DSULPHUDSDUWHFUHDHOWH[WRFRPRVHYLRHQODVHFFLyQDQWHULRU3RVWHULRUPHQWHVH
FDOFXODQORVGLIHUHQWHVSiUUDIRV
6HFUHDQGRVIRUPDWRV\VHDVLJQDQDORVSiUUDIRV(OSULPHURVHDSOLFDDWRGR
HOWH[WR\DTXHQRVHOHLQGLFDQLLQLFLRQLILQ
miTexto.setTextFormat(formato1);
(Q HO VLJXLHQWH UHQJOyQ VH OH GD XQ FDUDFWHU GH LQLFLR \ XQR GH ILQ SRU OR TXH HO
~OWLPR FDUDFWHU VH FDPELD D YHUGH $O HMHFXWDU OD SHOtFXOD HO UHVXOWDGR GHEHUi VHU
TXHHOSULPHUSiUUDIRDSDUH]FDHQURMR\HOVHJXQGRHQYHUGH
)LJXUD3iUUDIRVFRQGLIHUHQWHIRUPDWR
)LJXUD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
)RUPDWRFRQ+70/
2WUD PDQHUD GH GDUOH IRUPDWR D XQ WH[WR HV SRU PHGLR GH HWLTXHWDV +70/ HQ
YHUVLyQ/DVHWLTXHWDVTXHVHSXHGHQXWLOL]DUSDUDHOIRUPDWRVRQODVVLJXLHQWHV
7DEOD(WLTXHWDV+70/DGPLWLGDVHQ)ODVK
7DEOD
Etiqueta Descripció n
$! (WLTXHWDDQFODSDUDKDFHUXQKLSHUWH[WR
%! 0DQHMDODVQHJULWDVREROG
%5! 6DOWRGHOtQHDREUHDN
)217! &DPELDHOWLSRGHIXHQWH
,! 0DQHMDODVLWiOLFDV
,0*! 3XHGHGHVSOHJDUXQDLPDJHQ
/,! $xDGHXQEXOOHWDOSiUUDIR
3! (WLTXHWDTXHFUHDXQQXHYRSiUUDIR
63$1! 3HUPLWH UHODFLRQDU XQ &66 SRU PHGLR GHO SDUiPHWUR
&/$66
7(;7)250$7! 0DQHMDORVPiUJHQHVGHUHFKRHL]TXLHUGRODLGHQWDFLyQ
HQWUHRWUDVSURSLHGDGHVGHXQSiUUDIR
8! 0DQHMDHOVXEUD\DGRGHXQWH[WR
/RVSDVRVSDUDGDUOHIRUPDWRDXQWH[WRHQ+70/VRQXQDYH]FUHDGDODFDMD
GHWH[WR
1. &UHDUODFDGHQDFRQODVHWLTXHWDV+70/
2. $VLJQDUODFDGHQDFRQ+70/DODFDMDGHWH[WRSRUPHGLRGHOSDUiPHWUR
KWPO7H[W
(MHUFLFLR
• 6HFDPELDHOGRFXPHQWRGHFODVHHQHODUFKLYRWH[WRIODSRUHOGH
PLV&ODVHV7H[WR
• 6HFUHDXQQXHYRDUFKLYR$FWLRQ6FULSW\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUHGH7H[WRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)RUPDWRFRQ+70/
package misClases{
import flash.display.Sprite;
import flash.text.*;
public class Texto2 extends Sprite {
private var miTexto:TextField;
private var miCadena:String = "<p><b>Lorem ipsum
dolor sit amet,</b></p><br><font
color='#ff0000'>consectetuer adipiscing elit. Praesent id
enim rhoncus libero interdum luctus. Nam id nunc. Nullam
pharetra elit quis ipsum. Phasellus sed enim. Nulla
facilisi.</font><img src='imagen.jpg' WIDTH='100'
HEIGHT='100'><br><br><font color='#0000ff'>Ut pellentesque
risus eget felis. Aliquam egestas nibh id metus. Phasellus
eleifend nisi at ante. In hac habitasse platea dictumst.
Nunc auctor ligula eget felis.</font>";
public function Texto2() {
//Básicos
miTexto= new TextField;
miTexto.width = 250;
miTexto.height = 300;
miTexto.multiline = true;
miTexto.wordWrap = true;
miTexto.border = true;
miTexto.background = true;
//Asignación
miTexto.htmlText = miCadena;
addChild(miTexto);
}
}
}
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
/DVDOLGDGHHVWHJXLyQVHUi
)LJXUD7H[WRIRUPDWHDGRFRQHWLTXHWDV+70/
)LJXUD
)RUPDWRFRQ&66
8QD PDQHUD GH WHQHU PiV FRQWURO VREUH HO GLVHxR GHO WH[WR HV FRQ ORV HVWLORV HQ
FDVFDGDR&66(QWUHVXVPD\RUHVYHQWDMDVHVTXHHVSRVLEOHVHSDUDUHOWH[WRGHO
GLVHxR SXHV SXHGHQ DOPDFHQDUVH ORV HVWLORV HQ XQ DUFKLYR H[WHUQR &66 /DV
HWLTXHWDVGHWLSR&66TXHDGPLWH)ODVK3OD\HUVHPXHVWUDQHQOD7DEOD
7DEOD(WLTXHWDV&66DGPLWLGDVHQ)ODVK
7DEOD
Etiqueta Descripció n
FRORU (VHOFRORUGHODIXHQWH(OIRUPDWRHVKH[DGHFLPDO1R
VHDFHSWDQODVFDGHQDVWLSREOXHUHGHWFpWHUD
GLVSOD\ 6yORVRSRUWDORVYDORUHVLQOLQHEORFN\QRQH
IRQWIDPLO\ (VXQDOLVWDGH)XHQWHVVHSDUDGDVSRUFRPDVTXHSXHGHWRPDUHO
WH[WR
IRQWVW\OH (V HO WDPDxR HQ SL[HOHV GH OD IXHQWH 6yOR FRQWLHQH VX SDUWH
QXPpULFDDGLIHUHQFLDGHXQ&66HVWiQGDUQRVHLQFOX\HHOVXEILMR
S[RSW
&RQWLQ~D
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)RUPDWRFRQ&66
7DEOD
7DEOD &RQWLQXDFLyQ
Etiqueta Descripció n
)RQWLWDOLF &RQWUROD OD LQFOLQDFLyQ GH OD IXHQWH 3XHGH UHFRQRFHU ORV
YDORUHVQRUPDOHLWDOLF
IRQWZHLJKW &RQWURODHODQFKRGHODVOHWUDV3XHGHUHFRQRFHUORVYDORUHV
GHQRUPDO\EROG
NHUQLQJ 6RSRUWD ORV YDORUHV WUXH \ IDOVH (VWD SURSLHGDG VyOR
IXQFLRQD SDUD ODV IXHQWHV HPEHELGDV $OJXQDV IXHQWHV QR
VRSRUWDQHVWDSURSLHGDG
OHDGLQJ (V OD FDQWLGDG GH SL[HOHV HQWUH ODV OtQHDV GH XQ WH[WR 6L HO
YDORUHVQHJDWLYRODVPLVPDVVHFRODSVDQ1RVHDQDOL]DHO
WLSRGHXQLGDGHVS[RSW3XQWRV\SL[HOHVVRQHTXLYDOHQWHV
OHWWHUVSDFLQJ (V OD FDQWLGDG GH SL[HOHV GLVWULEXLGRV HTXLYDOHQWHPHQWH
HQWUH FDUDFWHUHV 1R VH UHFRQRFH OD SDUWH GH ODV XQLGDGHV
S[RSWVyORODSDUWHQXPpULFD
PDUJLQOHIW 0DUJHQL]TXLHUGRGHOWH[WRHQSL[HOHV
0DUJLQULJWK 0DUJHQGHUHFKRGHOWH[WRHQSL[HOHV
WH[WDOLJQ 5HFRQRFHORVYDORUHVOHIWULJKWFHQWHU\MXVWLI\
WH[WGHFRUDWLRQ 0DQHMDHOVXEUD\DGRGHOWH[WR
WH[WLQGHQW (VHOQ~PHURGHSL[HOHVSDUDODLQGHQWDFLyQ
/RV HVWLORV HQ FDVFDGD SXHGHQ VHU LQWHUQRV R H[WHUQRV 3ULPHUR VH DQDOL]DUi
FyPRDSOLFDUHVWLORVHQFDVFDGDLQWHUQRV
8QDYH]FUHDGDODFDMDGHWH[WRORVSDVRV SDUDGDUOHIRUPDWRDXQWH[WRFRQ
&66LQWHUQRVVRQ
&UHDUXQREMHWR6W\OH6KHHW
var estilo:StyleSheet = new StyleSheet();
&UHDUXQREMHWRJHQpULFRGRQGHVHDOPDFHQDUiQORVHVWLORV
var estiloObj:Object = new Object();
3REODUHOREMHWRJHQpULFRFRQORVYDORUHVGHORVHVWLORV
estiloObj.fontSize = "bold";
estiloObj.color = "#FF0000";
(QOD]DUHOREMHWRGHKRMDGHHVWLORFRQHOREMHWR\IRUPDUXQD´FODVHµ
estilo.setStyle(".colorado", estiloObj);
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
1RWD_
8QDFODVHHVXQWLSRGHHVWLORGHFDVFDGDTXHFXHQWDFRQXQSXQWRFRPRLQLFLRGHVX
LGHQWLILFDGRU\TXHSXHGHVHUDSOLFDGRYDULDVYHFHVHQXQGRFXPHQWR
$VLJQDUHOHVWLORHQFDVFDGDDOWH[WRSRUPHGLRGHODSURSLHGDGVW\OH6KHHW
miTexto.styleSheet = estilo;
3DUDDSOLFDUHOHVWLORHQHOWH[WRVHGHEHUiXWLOL]DUODHWLTXHWDVSDQ
FODVV µFRORUDGRµ!
3RU~OWLPRVHDVLJQDHOWH[WRDODFDMDSRUPHGLRGHODSURSLHGDGKWPO7H[W
PL7H[WRKWPO7H[W PL&DGHQD
(MHUFLFLRIRUPDWRFRQ&66LQWHUQRV
• &DPELDU HO GRFXPHQWR GH FODVH HQ HO DUFKLYR WH[WRIOD SRU HO GH
PLV&ODVHV7H[WR
• &UHDUXQQXHYRDUFKLYR$FWLRQ6FULSW\JUDEDUORHQODFDUSHWDPLV&ODVHVFRQ
HOQRPEUHGH7H[WRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.text.*;
public class Texto3 extends Sprite {
//
var estilo:StyleSheet = new StyleSheet();
var estiloObj:Object = new Object();
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)RUPDWRFRQ&66
//
private var miTexto:TextField;
private var miCadena:String = "<span
class='colorado'>Lorem ipsum dolor sit
amet,</b></p><br>consectetuer adipiscing elit. Praesent id
enim rhoncus libero interdum luctus. Nam id nunc. Nullam
pharetra elit quis ipsum. Phasellus sed enim. Nulla
facilisi.</span><img src='imagen.jpg' WIDTH='100'
HEIGHT='100'><br><br><font color='#0000ff'>Ut pellentesque
risus eget felis. Aliquam egestas nibh id metus. Phasellus
eleifend nisi at ante. In hac habitasse platea dictumst.
Nunc auctor ligula eget felis.</font>";
//
public function Texto3() {
estiloObj.fontSize = "bold";
estiloObj.color = "#FF0000";
estilo.setStyle(".colorado", estiloObj);
//
//Básicos
miTexto= new TextField;
miTexto.width = 250;
miTexto.height = 300;
miTexto.multiline = true;
miTexto.wordWrap = true;
miTexto.border = true;
miTexto.background = true;
//Asignación
miTexto.styleSheet = estilo;
miTexto.htmlText = miCadena;
addChild(miTexto);
}
}
}
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
(MHUFLFLRIRUPDWRFRQ&66H[WHUQRV
8QDYH]FUHDGDODFDMDGHWH[WRSDUDGDUOHIRUPDWRDXQWH[WRFRQ&66H[WHUQRVVH
UHDOL]DQORVVLJXLHQWHVSDVRV
• 6HFDPELDHO'RFXPHQWRGHFODVHHQHODUFKLYRWH[WRIODSRUHOGH
PLV&ODVHV7H[WR
• 6HFUHDXQQXHYRDUFKLYR$FWLRQ6FULSW\VHJUDEDHQODFDUSHWDPLV&ODVHV
FRQHOQRPEUHGH7H[WRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.text.TextField;
import flash.events.Event;
import flash.text.TextFieldAutoSize;
import flash.text.StyleSheet;
import flash.net.URLLoader;
import flash.net.URLRequest;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
)RUPDWRFRQ&66
'HEHH[LVWLUHODUFKLYRWH[WRFVVHQVXFDUSHWDGHORFRQWUDULRGHEHUiLQGLFDUOHHO
FDPLQR GH DFFHVR DO PLVPR (Q HVWH HMHPSOR HO DUFKLYR FRQWLHQH ORV VLJXLHQWHV
HVWLORV
p {
font-family: _sans;
color: #0000FF;
}
.colorado {
font-weight: bold;
font-style: italic;
color: #FF0000;
}
2EVpUYHVH TXH HO SULPHU HVWLOR PRGLILFD D OD HWLTXHWD S! (O VHJXQGR FUHD XQD
FODVHHQORVWpUPLQRVGHOOHQJXDMH&66FRQQRPEUHFRORUDGR3DUDODDSOLFDFLyQGH
HVWD~OWLPDKD\TXHXWLOL]DUXQDHWLTXHWDVSDQ!&XDQGRVHDVLJQDXQHVWLORDOD
HWLTXHWD SRU HMHPSOR S! QR HV QHFHVDULD OD HWLTXHWD VSDQ! $O HMHFXWDU HO
GRFXPHQWR)ODVKHOUHVXOWDGRGHEHUiVHUHOVLJXLHQWH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
)LJXUD7H[WRIRUPDWHDGRFRQ&66
)LJXUD
7H[WRVGHHQWUDGD
'HVGH$FWLRQ6FULSWWDPELpQSRGHPRVFUHDUWH[WRVGHHQWUDGDR7H[W,QSXW3ULPHUR
KD\ TXH KDFHU OD FDMD GH WH[WR \ GHVSXpV LQGLFDU HQ OD SURSLHGDG W\SH 7DPELpQ
WHQHPRVRWUDVSURSLHGDGHVFRPRHOFRORUGHODFDMDREDFNJURXQG \HOERUGHSDUD
GDUOHHVWLOR2WUDVSURSLHGDGHVODVYHUHPRVHQODVLJXLHQWHWDEOD
7DEOD3URSLHGDGHVGHODVFDMDVGHHQWUDGD
7DEOD
3URSLHGDG 'HVFULSFLyQ
W\SH ,QGLFDHOWLSRGHFDMDGHWH[WRVLHVGHHQWUDGD,1387
R GLQiPLFD '<1$0,& 'H SUHIHUHQFLD KD\ TXH XWLOL]DU ODV
FRQVWDQWHVGHODFODVH7H[W)LHOG7\SH
ERUGHU $FWLYD HO FXDGUR GH OD FDMD GH HQWUDGD 6XV YDORUHV
VHUiQYHUGDGHURWUXHRIDOVRIDOVH
ERUGHU&RORU &DPELDHOFRORUGHOERUGHGHODFDMDGHWH[WR
EDFNJURXQG $FWLYDHOIRQGRGHODFDMDGHOWH[WR
SDVVZRUG ,PSLGHYHUORVFDUDFWHUHVTXHLQWURGXFHHOXVXDULR\ORV
VXVWLWX\HSRUFDUDFWHUHVQHXWURVFRPRSHTXHxRVFtUFXORV
UHVWULFW 5HVWULQJH ORV FDUDFWHUHV TXH VH SXHGHQ LQWURGXFLU \
WDPELpQORVTXHQRVHSXHGHQLQWURGXFLU
PD[&KDUV 1~PHUR Pi[LPR GH FDUDFWHUHV TXH VH SXHGHQ
LQWURGXFLUHQODFDMDGHHQWUDGD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
7H[WRVGHHQWUDGD
(MHUFLFLR
• 6HFDPELDHO'RFXPHQWRGHFODVHHQHODUFKLYRWH[WRIODSRUHOGH
PLV&ODVHV7H[WR
• 6HFUHDXQQXHYRDUFKLYR$FWLRQ6FULSW\VHJUDEDHQODFDUSHWDPLV&ODVHV
FRQHOQRPEUHGH7H[WRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.text.TextField;
import flash.text.TextFieldType;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
textoEntrada1.width = 150;
textoEntrada1.maxChars = 20;
addChild(textoEntrada1);
(YHQWRVGHODVFDMDVGHWH[WR
(QORVFDPSRVGHHQWUDGD\DVHDFUHDGRVFRQ$FWLRQ6FULSWRGHVGHHO,'(SRGHPRV
GHWHFWDU FXiQGR HO XVXDULR VHOHFFLRQD OD FDMD GH WH[WR GH HQWUDGD )2&86B,1 \
FXiQGRHODSXQWDGRUGHOPRXVHGHOXVXDULRGHMDODFDMDGHHQWUDGD )2&86B287
(VWRVHUYLUiHQWUHRWUDVFRVDVSDUDYDOLGDUODHQWUDGDGHOXVXDULR
(MHUFLFLR
• 6HFDPELDHO'RFXPHQWRGHFODVHHQHODUFKLYRWH[WRIODSRUHOGH
PLV&ODVHV7H[WR
• 6HFUHDXQQXHYRDUFKLYR$FWLRQ6FULSW\VHJUDEDHQODFDUSHWDPLV&ODVHV
FRQHOQRPEUHGH7H[WRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
7H[WRVGHHQWUDGD
package misClases{
import flash.display.Sprite;
import flash.text.TextField;
import flash.text.TextField;
import flash.text.TextFieldType;
textoEntrada1.type = TextFieldType.INPUT;
textoEntrada1.x = 65;
textoEntrada1.y = 10;
textoEntrada1.border = true;
textoEntrada1.borderColor = 0xff0000;
textoEntrada1.background = true;
textoEntrada1.backgroundColor = 0xffcc00;
textoEntrada1.height = 20;
textoEntrada1.width = 150;
textoEntrada1.restrict = "a-zA-Z ";
textoEntrada1.maxChars = 26;
addChild(textoEntrada1);
textoEntrada2.type = TextFieldType.INPUT;
textoEntrada2.x = 65;
textoEntrada2.y = 40;
textoEntrada2.border = true;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
7H[WR
textoEntrada2.borderColor = 0xff0000;
textoEntrada2.background = true;
textoEntrada2.backgroundColor = 0xffcc00;
textoEntrada2.height = 20;
textoEntrada2.width = 20;
textoEntrada2.restrict = "0-9";
textoEntrada2.maxChars = 2;
addChild(textoEntrada2);
textoEntrada1.addEventListener(FocusEvent.FOCUS_IN,
onFocusIn);
textoEntrada1.addEventListener(FocusEvent.FOCUS_OUT,
onFocusOut);
function onFocusIn(e:FocusEvent):void {
trace("Captura el nombre");
}
function onFocusOut(event:FocusEvent):void {
if(textoEntrada1.text == ""){
trace("Campo obligatorio");
}
}
}
}
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$PDQHUDGHFRQFOXVLyQ
$PDQHUDGHFRQFOXVLyQ
(QHVWHFDStWXORDSUHQGLyODVFODVHVUHODFLRQDGDVFRQHOWH[WRSDUD$FWLRQ6FULSW
• &ODVHVLQYROXFUDGDVHQHOPDQHMRGHOWH[WR
• )RUPDWRGHXQWH[WR
• &RPDQGRVSDUDIRUPDWHDUWH[WR
• 0pWRGRVSDUDPRGLILFDUHOFRQWHQLGRGHOWH[WR
• 3URSLHGDGHVGHODFODVH7H[W)RUPDW
• 3URSLHGDGHVSDUDHOPDQHMRGHSiUUDIRV
• )RUPDWRFRQ+70/
• (WLTXHWDV+70/DGPLWLGDVHQ)ODVK
• )RUPDWRFRQ&66
• 7H[WRVGHHQWUDGD
• 3URSLHGDGHVGHODVFDMDVGHHQWUDGD
(Q HO SUy[LPR FDStWXOR DQDOL]DUHPRV XQD KHUUDPLHQWD SRGHURVD SDUD HO
GHVDUUROORGHDSOLFDFLRQHV\H[SHULHQFLDVHQ)ODVKODFODVH;0/.
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
XML
8
,QWURGXFFLyQ
6LELHQHVFLHUWRTXHVHSXHGHDFFHGHUDORVGRFXPHQWRV;0/GHVGH)ODVKFRQ
$FWLRQ6FULSW\FRQ$6HOPDQHMRGH;0/WXYRXQFDPELRUDGLFDOSDUDELHQ
DSHJiQGRVHDOHVWiQGDU(&0$6FULSWSDUD;0/PHMRUFRQRFLGRFRPR(;ORFXDOOR
KDFHPXFKRPiVVHQFLOORTXHODYHUVLyQDQWHULRUTXHVHEDVyHQHOHVWiQGDU:&
'20/DVFODVHVLQYROXFUDGDVHQODYHUVLyQ$6VRQODVTXHPXHVWUDOD7DEOD
7DEOD&ODVHVGHODQXHYDYHUVLyQGH$6
7DEOD
&ODVH
&ODVH 'HVFULSFLyQ
'HVFULSFLyQ
;0/ /DQXHYDFODVHFRQWLHQHSURSLHGDGHV\PpWRGRVQHFHVDULRV
SDUD PDQLSXODU ORV REMHWRV ;0/ DSHJDGRV D ORV HVWiQGDUHV
GH(&0$6FULSWSDUD;0/(;
;0//LVW &RQWLHQHPpWRGRVSDUDDQDOL]DUHOHPHQWRVOHtGRVSDUFLDOHV
RHQWHURVGHVGHXQDFRQVXOWD;0/
41DPH /RV REMHWRV 41DPH UHSUHVHQWDQ QRPEUHV FRPSOHWRV GH
HOHPHQWRV \ DWULEXWRV ;0/ &DGD REMHWR 41DPH WLHQH XQ
QRPEUH ORFDO \ XQ HVSDFLR GH QRPEUHV 8QLIRUP 5HVRXUFH
,GHQWLILHU85,
1DPHVSDFH /D FODVH 1DPHVSDFH FRQWLHQH PpWRGRV \ SURSLHGDGHV SDUD
GHILQLU\WUDEDMDUFRQHVSDFLRVGHQRPEUHV1DPHVSDFH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
,QWURGXFFLyQ
/DVFODVHVGHQWURGH$6TXHPDQHMDODYHUVLyQDQWHULRUGH;0/VHOLVWDQ
HQOD7DEOD/DFODVH;0/IXHUHQRPEUDGDD;0/'RFXPHQW
7DEOD&ODVHVHQ$6TXHPDQHMDODYHUVLyQDQWHULRUGH;0/
7DEOD
&ODVH
&ODVH
;0/'RFXPHQW /D FODVH ;0/'RFXPHQW UHSUHVHQWD HO REMHWR ;0/ TXH
HVWDEDSUHVHQWHHQ$FWLRQ6FULSW6XQRPEUHVHFDPELy
HQ $FWLRQ6FULSW SDUD ;0/'RFXPHQW SDUD HYLWDU
FRQIOLFWRV GH QRPEUHV FRQ OD QXHYD FODVH ;0/ GH
$FWLRQ6FULSW
;0/1RGH /D FODVH ;0/1RGH UHSUHVHQWD HO REMHWR ;0/ H[LVWHQWH HQ
$FWLRQ6FULSW \ TXH SDVy D OODPDUVH DVt HQ $FWLRQ6FULSW
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
57,),&$&,Ð1
(QVXH[DPHQ$&(SXHGDDSDUHFHUXQDSUHJXQWDTXHGLFH¢4XpEHQHILFLRVWLHQHHO
PRGHOR(;HQ$FWLRQ6FULSW"
/D UHVSXHVWD VHUtD TXH ORV REMHWRV ;0/ VRQ WUDWDGRV HQ IRUPD QDWLYD \ SXHGHQ VHU
DQDOL]DGRVORVQRGRVVLQUHIHULUVHDODHVWUXFWXUDFRPRYHUHPRVDORODUJRGHOFDStWXOR
/DVEDVHV
8Q DUFKLYR ;0/ H;WHQVLEOH 0DUNXS /DQJXDJH HV XQD HVWUXFWXUD MHUiUTXLFD SDUD
DOPDFHQDULQIRUPDFLyQ SRU PHGLRGHHWLTXHWDV(VWiEDVDGRHQ HO OHQJXDMH +70/
SHUR D GLIHUHQFLD GH pVWH HO ;0/ QR FRQWLHQH GLUHFWDPHQWH HVWLORV VyOR GDWRV
DJUXSDGRVHQHWLTXHWDV
(V SDUWH GH XQD HWLTXHWD JHQpULFD TXH HQJORED D RWUDV HWLTXHWDV OODPDGDV
´QRGRVµ/DUHSUHVHQWDFLyQGHXQGRFXPHQWR;0/SXHGHVHUHOGHXQiUEROGRQGH
ODHWLTXHWDJHQpULFDHVODUDt]/RVQRGRVVHUtDQODUHSUHVHQWDFLyQGHODVUDPDVGHO
PLVPR 6XSyQJDVH TXH VH GHVHD DOPDFHQDU OD LQIRUPDFLyQ GH VXV OLEURV /D
HWLTXHWDJHQpULFDVHUtD
<libros>
</libros>
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
&RPRVHSXHGHREVHUYDUODVHWLTXHWDVVRQVLPLODUHVDODVGH+70/&RQWLHQHQORV
VtPERORVGHPHQRUTXH\PD\RUTXH!\GHQWURGHHOODVXQLGHQWLILFDGRU6HWLHQH
FRPR HWLTXHWD GH FLHUUH DO PLVPR LGHQWLILFDGRU VyOR TXH pVWH OOHYD XQD GLDJRQDO
HQWUHHOVtPEROR´PD\RUTXHµ\HOLQLFLRGHOLGHQWLILFDGRU
'HQWUR GH HVWD HWLTXHWD JHQpULFD VH LQWURGXFLUi OD LQIRUPDFLyQ GH ORV OLEURV
FRPR VXEHWLTXHWDV R ´QRGRVµ (Q HO VXSXHVWR GH TXH VH WXYLHUDQ WUHV OLEURV OD
HVWUXFWXUDEiVLFDVHUtDODVLJXLHQWH
<libros>
<libro></libro>
<libro></libro>
<libro></libro>
</libros>
2EVpUYHVHTXHORVQRGRVWLHQHQHOPLVPRLGHQWLILFDGRUHOFXDOHVGLIHUHQWHDOGHOD
HWLTXHWD JHQpULFD (Q HVWH FDVR OD HWLTXHWD JHQpULFD HVWi HQ SOXUDO \ ORV QRGRV HQ
VLQJXODU(VWDSUiFWLFDQRHVREOLJDWRULDSHURYDULRVGHVDUUROODGRUHVODXWLOL]DQ
$KRUD VH GHEH HVFULELU OD LQIRUPDFLyQ GH FDGD OLEUR GHQWUR GHO QRGR SRU
HMHPSOR
<libro>
<título>El Quijote de la Mancha</título>
<autor>Miguel de Cervantes Saavedra</autor>
<editorial>Clásicos de la lengua</editorial>
<ISBN>109345671234</ISBN>
</libro>
/RV QRGRV LQWHUQRV WDPELpQ WLHQHQ HWLTXHWDV GH DSHUWXUD \ GH FLHUUH (O YDORU GHO
QRGRVHHVFULEHHQWUHHOODV\VHFRQVLGHUDQFRPRFDGHQDVLQFOXVRVLVRQQ~PHURV
VLQQHFHVLGDGGHHVFULELUORHQWUHFRPLOODV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
,QWURGXFFLyQ
'HQWUR GH XQD HWLTXHWD GH DSHUWXUD SXHGH HVFULELUVH LQIRUPDFLyQ OD FXDO VH
FRQRFH FRPR DWULEXWR /RV YDORUHV GH ORV DWULEXWRV VH HVFULEHQ HQWUH FRPLOODV VLQ
LPSRUWDUTXHVHDQQ~PHURVRSDODEUDVSRUHMHPSOR
<libro>
<título pag=”654” >El Quijote de la Mancha</título>
<autor>Miguel de Cervantes Saavedra</autor>
<editorial>Clásicos de la lengua</editorial>
<ISBN>109345671234</ISBN>
</libro>
/RVHVSDFLRVHQEODQFRTXHVLUYHQFRPRVDQJUtDDORVQRGRVHQUHDOLGDGVyORVLUYHQ
SDUDVXOHFWXUD'HKHFKRXQGRFXPHQWR;0/HVXQDFDGHQDFRQWLQXDODFXDOVHUtD
GLItFLOGHOHHUSDUDQRVRWURVSHURQRSDUDODVFRPSXWDGRUDV
,62 HV XQD QRUPD GH OD ,62 TXH GHILQH OD FRGLILFDFLyQ GHO DOIDEHWR ODWLQR
LQFOX\HQGROHWUDVDFHQWXDGDVxo\OHWUDVHVSHFLDOHVFRPRQHFHVDULDVSDUDOD
HVFULWXUD GH ODV VLJXLHQWHV OHQJXDV RULJLQDULDV GH (XURSD RFFLGHQWDO DOHPiQ
DUDJRQpVFDWDOiQGDQpVHVFRFpVHVSDxROIHURpVILQpVIUDQFpVJDpOLFRJDOOHJR
LQJOpV LVODQGpV LWDOLDQR QHHUODQGpV QRUXHJR SRUWXJXpV VXHFR \ YDVFR 6L QR VH
WLHQH HVWD HWLTXHWD SXHGHQ WHQHUVH SUREOHPDV SDUD OD OHFWXUD GH SDODEUDV
DFHQWXDGDV\FRQHxHV
$XQTXH HO OHQJXDMH ;0/ HV PXFKR PiV HODERUDGR FRQ HVWRV HOHPHQWRV VH
HVWiOLVWRSDUDFUHDUOHHU\H[SORWDUODLQIRUPDFLyQGHGRFXPHQWRV;0/FRQ$6
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
&UHDUREMHWRV;0/FRQ$6
3ULPHURHOHQIRTXHVHUiFUHDUXQGRFXPHQWR;0/LQWHUQDPHQWHHQ)ODVKHVGHFLU
QRVHOHHUiGHQLQJ~QDUFKLYRH[WHUQR
• 6HDEUHXQDUFKLYRQXHYRSDUD$6\VHJUDEDFRPR;0/IODHQODFDUSHWD
GHWUDEDMR
• $KRUD VH DEUH XQ DUFKLYR SDUD $FWLRQ6FULSW \ VH JUDED HQ OD FDUSHWD
PLV&ODVHV FRQ HO QRPEUH GH ;0/HMHPSOR SURFXUDQGR QR JUDEDU ORV
DUFKLYRVGHFODVHVSURSLDVFRQHOPLVPRQRPEUHGHFODVHVGH$FWLRQ6FULSW
SDUDHYLWDUSUREOHPDV
• (Q HO DUFKLYR )/$ GHEH YHULILFDUVH TXH VH HQFXHQWUH HQ HO PRGR HVWULFWR
GHFRPSLODFLyQ\VHHVFULEHODVLJXLHQWHFDGHQDHQHOFDPSR'RFXPHQWRGH
FODVHPLV&ODVHV;0/HMHPSOR
• (QHODUFKLYRGHODFODVHVHHVFULEHHOVLJXLHQWHFyGLJR
package misClases{
import flash.display.Sprite;
import flash.xml.*;
public class XMLejemplo extends Sprite {
public function XMLejemplo() {
//1. Directo en la asignación
var ejemplo1:XML = <libros>
<libro>
<título>El Quijote</título>
<autor>Cervantes</autor>
</libro>
</libros>;
trace(ejemplo1);
}
}
}
/RSULPHURTXHVHKDFHHVLPSRUWDUODVFODVHVGH;0/6HFUHDHOREMHWRHMHPSOR
FRPR XQ ;0/ \ VH OH HVWi DVLJQDQGR GLUHFWDPHQWH XQ SHTXHxR GRFXPHQWR ;0/
2EVpUYHVH TXH HVWRV QRGRV QR OOHYDQ FRPLOODV VyOR ORV GHOLPLWD HO SXQWR \ FRPR
ILQDO
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUREMHWRV;0/FRQ$6
$OSXEOLFDUHODUFKLYR)ODVKVHGHEHUiWHQHUODVLJXLHQWHVDOLGD
<libros>
<libro>
<título>El Quijote</título>
<autor>Cervantes</autor>
</libro>
</libros>
3RGUtDGHFLUVHTXHHVWDIRUPDGHFUHDUREMHWRV;0/HV´DOYXHORµ$KRUDVHVXVWLWX\H
HOFyGLJRDQWHULRURVHFRPHQWDSDUDODFUHDFLyQGHXQREMHWR;0/SRUPHGLRGH
XQDFDGHQD
package misClases{
import flash.display.Sprite;
import flash.xml.*;
$OSXEOLFDUHODUFKLYRVHGHEHUiWHQHUODVLJXLHQWHVDOLGD
<libros>
<libro>
<título>Cien años de soledad</título>
<autor>Gabriel García Márquez</autor>
</libro>
</libros>
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
0XFKDV YHFHV VH QHFHVLWD FUHDU XQ GRFXPHQWR FRQ GDWRV TXH SURSRUFLRQD HO
XVXDULRGHFiOFXORVSRUORFXDOVLHPSUHHV~WLODUPDUODFDGHQDFRQYDULDEOHV3DUD
HOORVHFRPHQWDRVHVXVWLWX\HHOFyGLJRDQWHULRUSRUHOVLJXLHQWH
package misClases{
import flash.display.Sprite;
import flash.xml.*;
public class XMLejemplo extends Sprite {
public function XMLejemplo() {
//3. Con variables 1
var autor:String = "James Joyce";
var titulo:String = "Ulises";
var cadena:String =<libros><libro><titulo>"+titulo;
cadena +=
"</titulo><autor>"+autor+"</autor></libro></libros>";
var ejemplo3:XML = new XML(cadena);
trace(ejemplo3);
}
}
}
1RWD
(QHVWRVHMHPSORVVHSDUWHQODVFDGHQDVSDUDIDFLOLWDUVXOHFWXUDSHURHQHOFyGLJRQR
HVQHFHVDULRKDFHUOR
/DVDOLGDGHEHUiVHUODVLJXLHQWH
<libros>
<libro>
<título>Ulises</título>
<autor>James Joyce</autor>
</libro>
</libros>
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUREMHWRV;0/FRQ$6
([LVWH RWUD IRUPD GH DUPDU HO REMHWR ;0/ FRQ YDULDEOHV HYLWDQGR FRQFDWHQDU
FDGHQDV3DUDHOORVHFRPHQWDRVXVWLWX\HHOFyGLJRDQWHULRU SRU HOVLJXLHQWHHQ HO
DUFKLYRGHFODVH
package misClases{
import flash.display.Sprite;
import flash.xml.*;
public class XMLejemplo extends Sprite {
public function XMLejemplo() {
//4. Con variables 2
var autor:String = "La Divina Comedia";
var titulo:String = "Dante";
var cadena:String =
<libros><libro><titulo>{titulo}</titulo><autor>{autor}</auto
r></libro></libros>;
var ejemplo4:XML = new XML(cadena);
trace(ejemplo4);
}
}
}
1yWHVH TXH VH HVWi DVLJQDQGR XQD FDGHQD SHUR QR VH XWLOL]DQ FRPLOODV \ SDUD
LQFOXLUORVYDORUHVGHODVYDULDEOHVVHXVDQODVOODYHV(OUHVXOWDGRGHEHUiVHU
<libros>
<libro>
<título>Dante</título>
<autor>La Divina Comedia</autor>
</libro>
</libros>
$xDGLUQRGRV;0/FRQ$6
$KRUD TXH \D VH WLHQH HO REMHWR HO VLJXLHQWH SDVR VHUi DxDGLUOH GDWRV 3DUD HOOR
H[LVWHQ YDULDV IRUPDV GH KDFHUOR 6H HOLPLQD R FRPHQWD HO FyGLJR GHO HMHUFLFLR
DQWHULRU\VHHVFULEHHOVLJXLHQWH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
package misClases{
import flash.display.Sprite;
import flash.xml.*;
2EVpUYHVHFyPRFRQODQRWDFLyQSXQWRVHSXHGHQDxDGLUQRGRVDXQGRFXPHQWR/D
VDOLGDGHEHUiVHUVLPLODUDODVLJXLHQWH
<libros>
<libro>
<título>El principito</tìtulo>
<autor>Saint Exupery</autor>
</libro>
<libro>
<título>Crimen y castigo</título>
<autor>Dostoievsky</autor>
</libro>
</libros>
7DPELpQVHSXHGHQLQVHUWDUSDUpQWHVLVFXDGUDGRV6LVHGHVHDVHSXHGHDxDGLUHO
VLJXLHQWHFyGLJR DOILQDOGH ODIXQFLyQ;0/HMHPSORSDUDTXHVH YHDFyPRVH YDQ
LQVHUWDQGRORVQRGRVHQHVWHHMHPSORVHRPLWHHOFyGLJRGHFODVHVXSRQLHQGRTXH
VHOHYDDLQVHUWDU
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUREMHWRV;0/FRQ$6
ejemplo5["libro"+3] = <libro><título>Yo
robot</título><autor>Asimov</autor></libro>;
trace(ejemplo5);
$OHMHFXWDUODSHOtFXODVHGHEHUiWHQHUODVLJXLHQWHVDOLGD
<libros>
<libro>
<título>El principito</título>
<autor>Saint Exupery</autor>
</libro>
<libro>
<título>Crimen y castigo</título>
<autor>Dostoievsky</autor>
</libro>
<libro>
<título>Yo robot</título>
<autor>Asimov</autor>
</libro>
</libros>
6HFDPELDODYDULDEOHGHQWURGHORVSDUpQWHVLVFXDGUDGRVGHD\REVpUYHQVHORV
UHVXOWDGRV&RPR\DH[LVWtDXQOLEURORVGDWRVGHOPLVPRVRQVXVWLWXLGRV
(Q$6KD\GRVPpWRGRVSDUDLQVHUWDUXQQRGRLQVHUW&KLOG%HIRUHLQVHUWDU
HO QRGR DQWHV GH XQ QRGR GHWHUPLQDGR HLQVHUW&KLOG$IWHU LQVHUWDU GHVSXpV GH XQ
QRGRGHWHUPLQDGR/DVLQWD[LVGHDPERVPpWRGRVHVODVLJXLHQWH
objetoXML.insertChildBefore(nodo1:Object, nodo2:Object);
(O SULPHU QRGR HV OD UHIHUHQFLD GRQGH VH LQVHUWDUi DQWHV HO QRGR /D VLQWD[LV GHO
VHJXQGRPpWRGRHV
objetoXML.insertChildAfter(nodo1:Object, nodo2:Object);
(OSULPHUQRGRHVODUHIHUHQFLDGRQGHVHLQVHUWDUiGHVSXpVHOQRGR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
6HDxDGHHOVLJXLHQWHFyGLJRSDUDREVHUYDUFyPRVHDxDGHQORVQRGRVVHJ~Q
XQQRGRGHUHIHUHQFLD
ejemplo5 = ejemplo5.insertChildBefore(ejemplo5.libro[0],
<libro><título>El
Quijote</título><autor>Cervantes</autor></libro>);
ejemplo5 = ejemplo5.insertChildAfter(ejemplo5.libro[2],
<libro><título>Cien años de soledad</título><autor>Gabriel
García Márquez</autor></libro>);
trace(ejemplo5);
$KRUD (O 4XLMRWH VHUi HO SULPHU QRGR \ HO OLEUR GH *DUFtD 0iUTXH] GHVSXpV GH
&ULPHQ\FDVWLJR
<libros>
<libro>
<título>El Quijote</título>
<autor>Cervantes</autor>
</libro>
<libro>
<título>El principito</título>
<autor>Saint Exupery</autor>
</libro>
<libro>
<título>Crimen y castigo</título>
<autor>Dostoievsky</autor>
</libro>
<libro>
<título>Cien años de soledad</título>
<autor>Gabriel García Márquez</autor>
</libro>
<libro>
<título>Yo robot</título>
<autor>Asimov</autor>
</libro>
</libros>
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUREMHWRV;0/FRQ$6
7DPELpQVHWLHQHQPpWRGRVSDUDDxDGLUQRGRVDOLQLFLR\DOILQDOGHXQGRFXPHQWR
;0/ FRQ HO PpWRGR DSSHQG&KLOG VH DxDGH XQ QRGR DO ILQDO GHO GRFXPHQWR (O
PpWRGRSUHSHQG&KLOGDxDGHXQQRGRDOLQLFLRGHOGRFXPHQWR;0/6HSXHGHDxDGLU
HOVLJXLHQWHFyGLJRDOILQDOGHODIXQFLyQ
$O HMHFXWDU OD SHOtFXOD VH SRGUi REVHUYDU TXH /D 2GLVHD VHD HO ~OWLPR QRGR \ /D
,OtDGDHOSULPHUR3RUFXHVWLRQHVGHHVSDFLRVyORVHPRVWUDUiQHVWRVQRGRV
<libros>
<libro>
<título>La Ilíada</título>
<autor>Homero</autor>
</libro>
…
<título>La Odisea</título>
<autor>Homero</autor>
</libro>
</libros>
$xDGLUDWULEXWRV;0/FRQ$6
$KRUDVHYHUiFyPRDxDGLUDWULEXWRVDODVHWLTXHWDVGHORVQRGRV3DUDHOORVHXWLOL]D
ODQRWDFLyQSXQWRFRQXQDDUURED6HSXHGHHVFULELUHOVLJXLHQWHFyGLJRDOILQDOGHOD
IXQFLyQ6HDxDGLUiQGRVDWULEXWRVHQFDGDQRGRSRUPHGLRGHXQFLFORIRU
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
$OHMHFXWDUODSHOtFXODVHREVHUYDFyPRVHDxDGLHURQORVDWULEXWRVDORVSULPHURV
QRGRV
<libros>
<libro id="0" pag="0">
<título>La Ilíada</título>
<autor>Homero</autor>
</libro>
<libro id="1" pag="101">
<título>El Quijote</título>
<autor>Cervantes</autor>
</libro>
…
</libros>
3DUDKDFHUHOGRFXPHQWRXQREMHWR;0//LVWVHXWLOL]DHOFRPDQGRHOHPHQWV
3RUHMHPSORVHFRPHQWDQODVVHQWHQFLDVWUDFHTXHVHHQFXHQWUDQHQHOJXLyQ
\HQODSDUWHILQDOVHHVFULEHODVLJXLHQWHVHQWHQFLD
trace(ejemplo5.elements());
6HHMHFXWDODSHOtFXOD\VHREVHUYDTXHDKRUDVHPXHVWUDXQDOLVWDGHQRGRV
$KRUDVHFRPHQWDHVWD~OWLPDVHQWHQFLD\VHHVFULEHQODVVLJXLHQWHVOtQHDVDOILQDO
GHODIXQFLyQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUREMHWRV;0/FRQ$6
trace(ejemplo5.elements("*").length());
trace(ejemplo5.elements("*")[0].toXMLString());
trace(ejemplo5.elements("libro")[1].toXMLString());
/DVDOLGDVHUiODVLJXLHQWH
(OQ~PHURFRUUHVSRQGHDORVQRGRVHQHOGRFXPHQWR/RVVLJXLHQWHVVRQORVQRGRV
HOSULPHUR\HOVHJXQGR
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
$XQTXH SDUHFH XQD QRWDFLyQ VDFDGD GH RWUR OHQJXDMH XQD SUHJXQWD TXH SXHGH
DSDUHFHU HQ WX H[DPHQ $&( HV TXH WH PXHVWUHQ XQ QRGR GH XQ REMHWR ;0/ \ TXH
LQGLTXHV OD IRUPD GH H[WUDHU HO YDORU GH XQ QRGR /D UHVSXHVWD HV
REMHWR;0/QRGR#DWULEXWR
$KRUDVHFRQMXQWDHOPpWRGRHOHPHQWVFRQHOFLFORIRUHDFK6HFRPHQWDQODV
VHQWHQFLDVWUDFHDQWHULRUHV\VHHVFULEHHOVLJXLHQWHFyGLJR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
(O SULPHU FtUFXOR DQDOL]D ORV QRGRV GHO OLEUR HO VHJXQGR ORV DWULEXWRV /D SULPHUD
SDUWHGHODVDOLGDVHUtDODVLJXLHQWH
Homero
0
0
Cervantes
1
101
Saint Exupery
2
202
Dostoievsky
3
303
,JXDOPHQWHVHFRPHQWDHOFyGLJRDQWHULRU\VHHVFULEHHOVLJXLHQWHHQODIXQFLyQ
(O SULPHU WUDFHPXHVWUDHO QRPEUHGHODXWRUHOVHJXQGRPXHVWUDDPERVDWULEXWRV
HQXQDVRODFDGHQD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUREMHWRV;0/FRQ$6
Homero
00
--------------
Cervantes
1101
--------------
Saint Exupery
2202
--------------
Dostoievsky
3303
--------------
(QHVWDQXHYDYHUVLyQVHSXHGHEXVFDUGHQWURGHORVGRFXPHQWRVGHPDQHUDPX\
IiFLO
//13.
trace(ejemplo5.libro.(autor=="Asimov").título);
trace(ejemplo5.libro.(@pag > "500").título);
(Q OD SULPHUD VHQWHQFLD VH EXVFD HO WtWXOR GHO DXWRU FRQ QRPEUH ´$VLPRYµ /D
VLJXLHQWH VHQWHQFLD EXVFD HO WtWXOR GH ORV QRGRV FX\RV DWULEXWRV REVpUYHVH OD
DUUREDVHDQPD\RUHVGH/DVDOLGDGHHVWDVLQVWUXFFLRQHVHV
Yo robot
<título>Yo robot</título>
<título>La Odisea</título>
%RUUDU\PRGLILFDUQRGRV\DWULEXWRV
(Q HVWD YHUVLyQ GH $FWLRQ6FULSW HV PX\ VHQFLOOR ERUUDU XQ QRGR XQ VXEQRGR R XQ
DWULEXWREDVWDXQFRPDQGRGHOHWH3RUHMHPSORVHFRPHQWDQODVVHQWHQFLDVWUDFH
GH ORV HMHPSORV DQWHULRUHV \ VH HVFULEHQ ORV VLJXLHQWHV FRPDQGRV DO ILQDO GH OD
IXQFLyQ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
delete ejemplo5.libro[0];
delete ejemplo5.libro[1].@pag;
delete ejemplo5.libro[2].autor;
trace(ejemplo5);
$OHMHFXWDUODSHOtFXODVHREWHQGUiXQDVDOLGDFRPRODVLJXLHQWH
<libros>
<libro id="1" pag="101">
<título>El Quijote</título>
<autor>Cervantes</autor>
</libro>
<libro id="2">
<título>El principito</título>
<autor>Saint Exupery</autor>
</libro>
<libro id="3" pag="303">
<título>Crimen y castigo</título>
</libro>
2EVpUYHVH TXH HO SULPHU QRGR /D ,OtDGD KD VLGR HOLPLQDGR 3RU HOOR (O 4XLMRWH VH
FRQYLHUWH HQ HO QRGR \ GHO QRGR (O 3ULQFLSLWR VH HOLPLQD HO DWULEXWR SDJ
SDJ 3RU
~OWLPRHOVXEQRGR$XWRUHVHOLPLQDGRGHOQRGR&ULPHQ\FDVWLJR
0RGLILFDUQRGRVWDPELpQHVPX\VHQFLOOR3ULPHURVHWLHQHTXHLQGLFDUHOQRGR
RHODWULEXWR\DVLJQDUOHHOYDORUGHVHDGR6HFRPHQWDODVHQWHQFLDWUDFHGHOEORTXH
DQWHULRU\VHHVFULEHHQVHJXLGDHOVLJXLHQWHFyGLJR
//15.
ejemplo5.libro[0].título = "El Quijote de la Mancha";
ejemplo5.libro[0].autor = "Miguel de Cervantes Saavedra";
ejemplo5.libro[0].@pag = 880;
trace(ejemplo5);
$OHMHFXWDUODSHOtFXODVHSRGUiQREVHUYDUORVFDPELRVHQHOSULPHUQRGR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUREMHWRV;0/FRQ$6
<libros>
<libro id="1" pag="880">
<título>El Quijote de la Mancha</título>
<autor>Miguel de Cervantes Saavedra</autor>
</libro>
…
/HFWXUDGHXQDUFKLYR;0/
3DUDOHHUXQDUFKLYRH[WHUQRVHQHFHVLWDUiQODVFODVHV85//RDGHU\85/5HTXHVW/D
SULPHUD SHUPLWH OHHU DUFKLYRV GH WLSR WH[WR ELQDULRV R DUFKLYRV GH YDULDEOHV
6H XWLOL]D SRU OR JHQHUDO SDUD DSOLFDFLRQHV TXH UHTXLHUHQ XQ SURFHVR GH GDWRV 6H
SXHGHPRQLWRUHDUHOSURFHVRGHFDUJDFRQODVSURSLHGDGHVE\WHV/RDGHG\E\WHV7RWDO
\WDPELpQVHSXHGHFRQWURODUSRUPHGLRGHHYHQWRV
/D FODVH 85/5HTXHVW FDSWXUD WRGD OD LQIRUPDFLyQ GH XQD OODPDGD D XQD
VROLFLWXG +773 3RU ~OWLPR VH QHFHVLWDUi OD FODVH (YHQW (O DUFKLYR TXH VH OHHUi HV
[PO([WHUQR[PO(OLQLFLRGHOPLVPRHV
[PO([WHUQR[PO
<libros>
<libro ISBN="0909090909">
<título>La Ilíada</título>
<autor>
<apellido>Homero</apellido>
<nombre/>
</autor>
</libro>
<libro ISBN="0234567889">
<título>El principito</título>
<autor>
<apellido>Saint Exupery</apellido>
<nombre/>
</autor>
</libro>
<libro ISBN="56768895445">
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
<título>El Quijote</título>
<autor>
<apellido>Cervantes</apellido>
<nombre>Miguel</nombre>
</autor>
</libro>
…
</libro>
(QHODUFKLYR)ODVHFDPELDHOFDPSR'RFXPHQW&ODVVSRUPLV&ODVHV;0/H[WHUQR
6HDEUHXQQXHYRDUFKLYRGH$FWLRQ6FULSW\VHJUDEDHQODFDUSHWDPLV&ODVHV
FRQHOQRPEUH;0/H[WHUQR
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
8QD SUHJXQWD TXH SXHGH DSDUHFHU HQ VX H[DPHQ GH FHUWLILFDFLyQ HV ¢&RQ TXp
HOHPHQWR SXHGH FDUJDU XQ REMHWR ;0/" &RPR OR KHPRV YLVWR HVH REMHWR HV XQ
85//RDGHU
6HHVFULEHHOVLJXLHQWHFyGLJRHQHODUFKLYRGHFODVH
package misClases{
import flash.display.Sprite;
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLRequest;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUREMHWRV;0/FRQ$6
URLRequest("xmlExterno.xml");
loader.load(request);
loader.addEventListener(Event.COMPLETE,
onComplete);
}
function onComplete(event:Event):void {
var loader:URLLoader = event.target as
URLLoader;
if (loader != null) {
xmlExterno = new XML(loader.data);
trace(xmlExterno.toXMLString());
} else {
trace("¡No se puede cargar el
archivo!");
}
}
}
}
3ULPHURVHFUHDHOREMHWR;0/[PO([WHUQR\HOREMHWRGHFDUJDORDGHU
'HQWURGH ODIXQFLyQVHFUHDHOREMHWR TXHFRQWURODUiODGHVFDUJDGHODUFKLYR
UHTXHVW\VHOHLQGLFDHODUFKLYRDEDMDU[PO([WHUQR[PO
(QODVLJXLHQWHLQVWUXFFLyQVHLQGLFDTXHLQLFLHODFDUJD\VHLQGLFDHOREMHWRTXH
FRQWURODUi OD GHVFDUJD UHTXHVW (Q OD ~OWLPD OtQHD GH OD IXQFLyQ VH OH LQGLFD OD
IXQFLyQFDOO%DFNSDUDFXDQGRODFDUJDVHDWHUPLQDGD
(QODIXQFLyQRQ&RPSOHWHTXHUHFLEHHOREMHWRHYHQWVHUHFLEHHOHVWDGRGHOD
FDUJD HQ HO REMHWR ORDGHU 6L HVWH REMHWR HV QXOR VLJQLILFD TXH OD FDUJD QR IXH
H[LWRVD 'H OR FRQWUDULR VH FRQYLHUWH HO SDUiPHWUR GDWD HQ XQ REMHWR ;0/
)LQDOPHQWH VH PXHVWUD HO FRQWHQLGR GHO REMHWR ;0/ $KRUD SXHGHQ DSOLFDUVH ORV
PpWRGRV\SURSLHGDGHVYLVWRVHQODSULPHUDSDUWHGHOFDStWXOR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
3'(&(57,),&$&,Ð1
8QDSUHJXQWDHQWXH[DPHQ$&(SRGUtDVHU¢&yPRWUDEDMDUtDVFRQORVGDWRVDQWHVGH
TXHWHUPLQHODFDUJDVLHODUFKLYRHVPX\JUDQGH"ODUHVSXHVWDHVSRUPHGLRGHXQ
REMHWR85/6WUHDP\ODSURSLHGDGE\WHV$YDLODEOH
(MHPSORGHVDUUROORGHXQMXHJRGHWULYLD
$KRUD KDJDPRV XQD DSOLFDFLyQ SDUD XQ MXHJR GH WULYLD VREUH ODV FDSLWDOHV GHO
PXQGR /HHUHPRV XQ DUFKLYR ;0/ FRQ FDGD XQD GH ODV SUHJXQWDV 7RGRV ORV
UHJLVWURVWLHQHQWUHVRSFLRQHV(QHVWDWULYLDVyORVHUHDOL]DXQDSUHJXQWDDODYH]$O
VHU FRQWHVWDGD FRPR FRUUHFWD VH DYDQ]D D OD VLJXLHQWH KDVWD WHUPLQDU /R
LPSRUWDQWHHQHOHMHUFLFLRHVODOHFWXUD\WUDWDPLHQWRGHODUFKLYR;0/
• $EUDHODUFKLYRWULYLDIODGHHMHPSOR
• (QHODUFKLYRWHQGUiORVFDPSRVGHWH[WR\ERWRQHVQHFHVDULRVSDUD
GHVFDUJDUODVSUHJXQWDVHQODSDQWDOOD
)LJXUD1RPEUHGHODVLQVWDQFLDVGHOHMHUFLFLR
)LJXUD
• (QODFDUSHWDGDWRVVHWLHQHHODUFKLYRSUHJXQWDV[PO/DHVWUXFWXUDGHODV
SUHJXQWDVHVODVLJXLHQWH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUREMHWRV;0/FRQ$6
)LJXUD(MHPSORGHXQDSUHJXQWDGHODUFKLYR;0/
)LJXUD
• 6HFUHDXQQXHYRDUFKLYR$FWLRQ6FULSW\VHJUDEDHQODFDUSHWDPLV&ODVHV
FRQHOQRPEUHGH7ULYLDDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.events.EventDispatcher;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.net.URLRequest;
import flash.net.URLLoader;
import flash.net.URLVariables;
import flash.net.URLRequestMethod;
import flash.net.URLLoaderDataFormat;
import flash.events.IOErrorEvent;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
recibir.dataFormat=URLLoaderDataFormat.TEXT;
recibir.addEventListener(Event.COMPLETE,onDatosCargados
);
recibir.addEventListener(IOErrorEvent.IO_ERROR,onErrorC
arga);
//
recibir.load(enviar);
//
a_btn.addEventListener(MouseEvent.CLICK,
onSelecciona);
b_btn.addEventListener(MouseEvent.CLICK,
onSelecciona);
c_btn.addEventListener(MouseEvent.CLICK,
onSelecciona);
siguiente_btn.addEventListener(MouseEvent.CLICK,
onSiguiente);
//
siguiente_btn.visible = false;
}
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
&UHDUREMHWRV;0/FRQ$6
protected function
onSelecciona(e:MouseEvent):void {
var boton:String = e.target.name;
var correcto:Boolean = false;
if(boton=="a_btn" &&
preguntas_array[numPreg].ok=="1"){
correcto = true;
}
if(boton=="b_btn" &&
preguntas_array[numPreg].ok=="2"){
correcto = true;
}
if(boton=="c_btn" &&
preguntas_array[numPreg].ok=="3"){
correcto = true;
}
if(correcto){
resultado_txt.text = "Correcto"
siguiente_btn.visible = true;
} else {
resultado_txt.text = "Fíjate bien,
ésa no es la respuesta"
}
}
protected function
onDatosCargados(event:Event):void {
XML.ignoreWhitespace=true;
data= new XML(recibir.data);
preguntas_array = [];
numPreg = 0;
//Hace el array de preguntas
numReg = data.pregunta.length();
//Evalúa el no de preg. en el archivo
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
;0/
var objeto:Object;
for (var i = 0; i<numReg; i++) {
//Genera Vector y vacía variables
objeto = new Object();
objeto.num =
data.pregunta[i].num.text();
objeto.texto =
data.pregunta[i].texto.text();
objeto.op1 =
data.pregunta[i].opcion1.text();
objeto.op2 =
data.pregunta[i].opcion2.text();
objeto.op3 =
data.pregunta[i].opcion3.text();
objeto.ok =
data.pregunta[i].correcta.text();
objeto.km =
data.pregunta[i].km.text();
preguntas_array.push(objeto)
}
proximaPregunta();
}
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$PDQHUDGHFRQFOXVLyQ
$PDQHUDGHFRQFOXVLyQ
8QD GH ODV FODVHV PiV LPSRUWDQWHV SDUD GHVDUUROODU DSOLFDFLRQHV FRQ )ODVK HV OD
FODVH;0/GHODTXHDSUHQGLy
• /DVEDVHVGH;0/
• &yPRFUHDUREMHWRV;0/FRQ$6
• &yPRDxDGLUQRGRV;0/FRQ$6
• &yPRERUUDU\PRGLILFDUQRGRV\DWULEXWRV
• &yPRUHDOL]DUODOHFWXUDGHXQDUFKLYR;0/
&RQHVWDVEDVHVGHVDUUROOyXQMXHJRGHWULYLD
&RPR VH SXGR DSUHFLDU HV PX\ SRWHQWH \ VL HO OHFWRU FRQRFH OD YHUVLyQ
DQWHULRUQRWDUiTXHHVWDYHUVLyQHVPXFKRPiVVHQFLOOD
$KRUDFRQRFHUHPRVXQDFODVHPX\FRPSOHWD\TXHQRVD\XGDUiDFUHDUHIHFWRV
PX\LQWHUHVDQWHVODFODVH6KD
6KDSH
6KDSH
SH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
Dibujo con
con
ActionScript 3.0 9
,QWURGXFFLyQ
(QODVYHUVLRQHVDQWHULRUHVGH$FWLRQ6FULSWVHXWLOL]DEDHO$3,GHGLEXMRHQXQFOLSGH
SHOtFXODYDFtR(QHVWDYHUVLyQVHGLEXMDUiHQREMHWRVGHODFODVH6KDSH
6KDSHORVFXDOHV
6KDSH
VRQPiVOLJHURVSRUORTXHHVQHFHVDULRLPSRUWDUODFODVHSDUDGLEXMDUHQHOORV
(OSULPHUSDVRHVLPSRUWDUODFODVHTXHVHHQFXHQWUDHQHOSDTXHWHGLVSOD\6H
UHTXLHUHFUHDUXQREMHWRGHODFODVH6KDSH\VHGLEXMDUiHQODSURSLHGDGJUDSKLFV
/RVREMHWRV6KDSHVRQD~QPiVSHTXHxRVTXHORVREMHWRV6SULWHVLQHPEDUJRORV
SULPHURVQRSXHGHQUHFLELUHYHQWRVGHOPRXVH
0pWRGROLQH6W\OH
(VWH PpWRGR SHUPLWH HO HVWLOR GH OD SOXPD FRQ OD TXH VH GLEXMDUi &X\D VLQWD[LV
JHQHUDOHV
&RPRVHSXHGHREVHUYDUORVSDUiPHWURVVRQRSFLRQDOHV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
,QWURGXFFLyQ
1RWD
(VXQDFRQYHQFLyQWLSRJUiILFDTXHORVSDUiPHWURVRSFLRQDOHVHQXQDVLQWD[LVJHQHUDO
VHDQHVFULWRVHQWUHFRUFKHWHV
• *URVRUGHOtQHD,QGLFDHOJURVRUGHODOtQHDGHGLEXMRHQSXQWRV\WLHQHXQUDQJRGH
D6LQRLQGLFDQLQJ~QYDORUODOtQHDQRVHGLEXMD(OHVXQYDORUPX\ILQR\
XQ YDORU VXSHULRU D )ODVK WRPDUi 'HVSXpV GH YHU ORV GRV VLJXLHQWHV
PpWRGRVVHHQVD\DUiXQHMHPSOR
• &RORU 5*% (V HO YDORU HQ KH[DGHFLPDO FRQ HO FXDO VH GLEXMDUi OD OtQHD HQ OD
FRPSRVLFLyQGHFRORUHV5RMR5HG9HUGH*UHHQ\$]XO%OXH3RUHMHPSORHOURMR
HV [)) HO YHUGH [)) \ HO $]XO [)) (O FRORU SRU GHIDXOW HV HO
QHJUR[
• $OID(VHOYDORUHQWHURHQWUH\SDUDHOPDQHMRGHOFDQDODOIDGHOFRORU3RU
GHIDXOWHODOIDHVVyOLGR
0pWRGRPRYH7R
(VWHPpWRGRSHUPLWHPRYHUVHHQODVFRRUGHQDGDVGHOREMHWRGHGLEXMR\DVHDFOLS
GH SHOtFXOD 6SULWH R 6KDSH 5HFXpUGHVH TXH OD FRRUGHQDGD RULJHQ HQ )ODVK HV OD
HVTXLQDVXSHULRUL]TXLHUGD(OHMH´[µHVKRUL]RQWDO\HOHMH´\µHVYHUWLFDO/DVLQWD[LV
JHQHUDOHV
shape.graphics.moveTo(x, y);
3RU HMHPSOR VL VH GDQ FRRUGHQDGDV GH HQ HVH SXQWR )ODVK LQLFLDUi
FXDOTXLHULQVWUXFFLyQGHGLEXMRTXHVHOHLQGLTXH
0pWRGROLQH7R
&RQ HVWH PpWRGR VH SXHGH WUD]DU XQD OtQHD GHVGH HO SXQWR GHWHUPLQDGR KDVWD HO
SXQWRTXHVHOHLQGLTXHHQODVFRRUGHQDGDVGHOPpWRGROLQH7R6XVLQWD[LVJHQHUDO
HVODVLJXLHQWH
shape.graphics.lineTo(x, y);
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
'RQGH ´[µ HV HO YDORU KRUL]RQWDO \ ´\µ HV HO YDORU YHUWLFDO &RPR VH PHQFLRQy ODV
FRRUGHQDGDVRULJHQVHHQFXHQWUDQHQODHVTXLQDVXSHULRUL]TXLHUGDHQUHODFLyQFRQ
HO FOLS GH SHOtFXOD 6L VH WRPD FRPR EDVH D URRW ODV FRRUGHQDGDV VRQ ODV PLVPDV
TXHODSHOtFXODSULQFLSDO
(MHUFLFLRGLEXMDUGRVWULiQJXORV
(QHVWHHMHUFLFLRGLEXMDUHPRVXQSDUGHWULiQJXORVFRQHO$3,GHGLEXMR
• 6HDEUHXQDUFKLYR$6\VHQRPEUD'LEXMRIODHQODFDUSHWDGHWUDEDMR
• (QHOFDPSR'RFXPHQW&ODVVVHHVFULEHHOQRPEUHGHODUFKLYRGHFODVHTXH
VHKDUiHQXQPRPHQWRPLV&ODVHV'LEXMR
• 6HDEUH XQDUFKLYR $FWLRQ6FULSW\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHVWHDUFKLYRVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHUFLFLRGLEXMDUGRVWULiQJXORV
7,3'(&(57,),&$&,Ð
7,3'(&(57,),&$&,Ð1
(O $3, GH GLEXMR QR HV XQR GH ORV IDYRULWRV HQ ODV SUHJXQWDV GH ORV H[iPHQHV GH
FHUWLILFDFLyQ8QDGHODVSUHJXQWDVDOUHVSHFWRHVODIXQFLyQGHODSURSLHGDG*UDSKLFV
(OUHVXOWDGRGHEHUiVHUXQWULiQJXORURMR\RWURYHUGHFRPRORPXHVWUDOD)LJ
)LJXUD7ULiQJXORVGLEXMDGRVFRQHO$3,GHGLEXMR
)LJXUD
0pWRGRVEHJLQ)LOO\HQG)LOO
(VWRVPpWRGRVSHUPLWHQUHOOHQDUXQREMHWRTXHVHKDFUHDGRFRQORVRWURVPpWRGRV
GHGLEXMR6HPDUFDHOLQLFLRGHOUHOOHQRFRQHOPpWRGREHJLQ)LOO\VHFRQFOX\HFRQ
HQG)LOO/DVLQWD[LVGHORVPpWRGRVHV
shape.graphics.beginFill(color, alfa);
Sentencias de dibujo
shape.graphics.endFill();
• FRORU(VHOFRORUHQQRWDFLyQKH[DGHFLPDOLJXDODORVRWURVPpWRGRV
FRORU
• DOID
DOID (V HO YDORU HQWHUR GH D GRQGH HV VyOLGR \ HV
FRPSOHWDPHQWHWUDQVSDUHQWH\VLQFRORU
6LHOREMHWRQRHVFHUUDGRQRVHHIHFWXDUiHOUHOOHQR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
(MHPSORFRQWRUQHDU\UHOOHQDUGRVWULiQJXORV
$KRUD KDUHPRV D ORV GRV WULiQJXORV SHUR HVWD YH] ORV FRQWRUQRV GH ODV OtQHDV VRQ
QHJURV\HOUHOOHQRVHUiURMR\YHUGHUHVSHFWLYDPHQWH
• (QHODUFKLYRGLEXMRIODVHFDPELDHO'RFXPHQWFODVVSRUHODUFKLYRTXHVH
FUHDUiHQVHJXLGDPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$FWLRQ6FULSW\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQ
HOQRPEUH'LEXMRDV
• 6HHVFULEHHOVLJXLHQWHJXLyQHQHODUFKLYRGHFODVH
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHUFLFLRGLEXMDUGRVWULiQJXORV
(OUHVXOWDGRVHDSUHFLDHQOD)LJ
)LJXUD7ULiQJXORVFRQUHOOHQR
)LJXUD
6L IDOWDUD OD ~OWLPD OtQHD ORV PpWRGRV EHJLQ)LOO \ HQG)LOO ´FRPSOHWDUiQµ OD IRUPD
JHRPpWULFD\HIHFWXDUiQHOUHOOHQR3DUDIDPLOLDUL]DUVHFRQHVWRVPpWRGRVFiPELHVH
HOFRORU\HODOID
0pWRGRVEHJLQ*UDGLHQW)LOO\HQG)LOO
&RQHOPpWRGREHJLQ*UDGLHQW)LOOVHPDUFDHOLQLFLRGHXQUHOOHQRGHJUDGDGRGHQWUR
GH XQD ILJXUD FUHDGD FRQ ORV PpWRGRV GH GLEXMR (VWD RSHUDFLyQ VH FLHUUD FRQ HO
PpWRGRHQG)LOOYLVWRHQODVHFFLyQDQWHULRU
/DVLQWD[LVGHEHJLQ*UDGLHQW)LOOHV
/RVSDUiPHWURVVRQ
• WLSR GH UHOOHQR
UHOOHQR 6H WLHQHQ GRV RSFLRQHV ´OLQHDUµ TXH HV XQ GHJUDGDGR
OLQHDO\´UDWLRµTXHHVXQGHJUDGDGRFLUFXODU
• FRORUHV
FRORUHV$UUHJORGHFRORUHVHQIRUPDWRKH[DGHFLPDOTXHVHXWLOL]DUiQHQHO
GHJUDGDGRGHODIRUPDGLEXMDGD
• DOIDV(VXQDUUHJORFRQORVYDORUHVDOIDHQFRUUHVSRQGHQFLDFRQODPDWUL]GH
DOIDV
FRORUHV/RVYDORUHVYDQGHOD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
• UDWLRV
UDWLRV (V XQ DUUHJOR UHODFLRQDGR FRQ OD PDWUL] GH FRORUHV 6RQ Q~PHURV
HQWHURVTXHYDQGHODO(VWHYDORULQGLFDODDQFKXUDHQHOTXHHOFRORU
VHPXHVWUDDOFLHQSRUFLHQWR
• PDWUL](VHOFRQMXQWRGHSDUiPHWURVGHWUDQVIRUPDFLyQ\SXHGHVHUGHGRV
PDWUL]
WLSRV
7LSRDEFGHIJKL
7LSRWLSRGH0DWUL][\ZKU
(MHUFLFLRFXDGURFRQFRORUHVGHVYDQHFLGRV
• $EUDXQDUFKLYR$FWLRQ6FULSW*XiUGHORHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUHGH'LEXMRDV
• (QHVWHDUFKLYRHVFULEDHOVLJXLHQWHFyGLJR
package misClases{
import flash.display.*;
import flash.geom.Matrix;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHUFLFLRFXDGURFRQFRORUHVGHVYDQHFLGRV
colores,
alphas,
ratios,
matrix,
metodo,
interpolacion,
focalPtRatio);
cuadro.graphics.drawRect(0, 0, 100, 100);
addChild(cuadro);
}
}
}
(OUHVXOWDGRHVXQGHVYDQHFLGRGHYHUGHDURMR
var colores:Array = [0xFF0000, 0xFFFF00];
'HFRORUHVVyOLGRV
/DFRPELQDFLyQGHORVFRORUHVLQLFLDHQ\WHUPLQDODWUDQVIRUPDFLyQHQOD~OWLPD
SDUWH
/DPDWUL]LQGLFD
(OUHVXOWDGRGHEHVHUDOJRSDUHFLGRDODSDQWDOODTXHPXHVWUDOD)LJ
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
)LJXUD&XDGURUHOOHQRFRQJUDGLHQWHGHJUDGDGR
)LJXUD
2WURHMHPSORGHJUDGLHQWHVVHSXHGHHQFRQWUDUHQHODUFKLYR'LEXMRDV
0pWRGRGUDZ5HFW
&RQHVWHPpWRGRVHSRGUiGLEXMDUIiFLOPHQWHXQUHFWiQJXOR/DVLQWD[LVGHOPLVPR
HVH[FOXVLYRGH$6
$QWHVGHXVDUHVWHPpWRGRHVQHFHVDULRGHILQLUHOWLSRGHOtQHDGHOFRQWRUQR\HOWLSR
GHUHOOHQR8QHMHPSORGHOPLVPRSXHGHVHUHOVLJXLHQWH
(MHUFLFLRGHILQLUOtQHDGHFRQWRUQR\WLSRGHUHOOHQR
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHUFLFLRGHILQLUOtQHDGHFRQWRUQR\WLSRGHUHOOHQR
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
/DVDOLGDGHEHUiVHUODTXHPXHVWUDOD)LJ
)LJXUD&XDGUDGRVFRQHOFDQDODOID
)LJXUD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
0pWRGRFXUYH7R
(VWH PpWRGR HV KHUHQFLD GH ODV YHUVLRQHV DQWHULRUHV GH $FWLRQ6FULSW \ FRQ pO VH
SXHGHQKDFHUFXUYDV/DVLQWD[LVJHQHUDOHV
• FRQWURO;
FRQWURO; 1~PHUR HQWHUR TXH HVSHFLILFD XQD SRVLFLyQ KRUL]RQWDO
UHODWLYDDOSXQWRGHUHJLVWURGHOFOLSGHSHOtFXODSULQFLSDOGHOSXQWRGH
FRQWURO
• FRQWURO< 1~PHUR HQWHUR TXH HVSHFLILFD XQD SRVLFLyQ YHUWLFDO UHODWLYD
FRQWURO<
DOSXQWRGHUHJLVWURGHOFOLSGHSHOtFXODSULQFLSDOGHOSXQWRGHFRQWURO
• DQFODMH; 1~PHUR HQWHUR TXH HVSHFLILFD XQD SRVLFLyQ KRUL]RQWDO
UHODWLYDDOSXQWRGHUHJLVWURGHOFOLSGHSHOtFXODSULQFLSDOGHOVLJXLHQWH
SXQWRGHDQFODMH
• DQFODMH<
DQFODMH< 1~PHURHQWHURTXHHVSHFLILFDXQDSRVLFLyQYHUWLFDOUHODWLYD
DOSXQWRGHUHJLVWURGHOFOLSGHSHOtFXODSULQFLSDOGHOVLJXLHQWHSXQWRGH
DQFODMH
(MHUFLFLRGLEXMDUXQDFXUYDDSDUWLUGHWUHVSXQWRV
(OFyGLJRSDUDXQDFXUYDFRQVXVUHVSHFWLYRVWUHVSXQWRVHVHOVLJXLHQWH
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
public class Dibujo05 extends Sprite {
public function Dibujo05() {
var cuadrado:Shape = new Shape();
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHUFLFLRGLEXMDUXQDFXUYDDSDUWLUGHWUHVSXQWRV
cuadrado.graphics.lineStyle(5,0x000000);
cuadrado.graphics.moveTo(300,300 );
cuadrado.graphics.curveTo(400,300,400,200
);
addChild(cuadrado);
}
}
}
$OHMHFXWDUODSHOtFXODVHREWHQGUiODFXUYDFRQORVWUHVSXQWRVTXHPXHVWUDOD)LJ
)LJXUD'LEXMRGHXQDFXUYD
)LJXUD
$OSULQFLSLRFXHVWDXQSRFRXELFDUDFDGDXQRGHORVSDUiPHWURV/DVLJXLHQWH
LPDJHQSXHGHD\XGDUQRVSDUDFRPSUHQGHUHVWHPpWRGR
)LJXUD
)LJXUD(MHPSORGHXQVHJPHQWRGHFXUYD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
(MHUFLFLRFtUFXORDSDUWLUGHFXDWURFXUYDV
6LVHGHVHDKDFHUXQFtUFXORQRPX\SHUIHFWRVHQHFHVLWDQFXDWURFXUYDV
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
(OUHVXOWDGRVHUiHOFtUFXORTXHPXHVWUDOD)LJ
)LJXUD
)LJXUD8QFtUFXORUHDOL]DGRDSDUWLUGHFXDWURVHJPHQWRVGHFXUYD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHUFLFLRFtUFXORUHDOL]DGRFRQRFKRVHJPHQWRV
'HEH UHFRUGDUVH TXH )ODVK XWLOL]D ODV FXUYDV GH %H]LHU FXDGUiWLFDV )LJ
SDUD KDFHU FXUYDV YHFWRULDOHV 3DUD VLPXODU XQ FtUFXOR HV QHFHVDULR RFKR GH HVWDV
FXUYDV&RQODVFXUYDVGH%H]LHUF~ELFDV)LJODVFXDOHVXWLOL]DQODPD\RUtDGH
ORVSDTXHWHVGHGLVHxRWDQVyORVRQQHFHVDULDVFXDWURFXUYDV(VSRUHVRTXHHQHO
HMHPSORDQWHULRUHO´FtUFXORµVHYHXQSRFRDIHFWDGR
)LJXUD
)LJXUD(MHPSORVGHFXUYDVGH%H]LHU
'RQGHHOSXQWR´DµHVHORULJHQHQTXHVHHQFXHQWUDODSOXPDYLUWXDOHOSXQWR
´Eµ VRQ ORV SXQWRV GH FRQWURO ORV GRV SULPHURV SDUiPHWURV \ HO SXQWR ´Fµ HV OD
FRRUGHQDGDILQDORGHDQFODMH
3DUD XQ FtUFXOR PiV DSUR[LPDGR KHFKR FRQ RFKR FXUYDV VH UHTXLHUH PiV
PDWHPiWLFDV
(MHUFLFLRFtUFXORUHDOL]DGRFRQRFKRVHJPHQWRV
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
// definir x en el punto
//central del círculo
var x:Number = 200;
// definir y en el punto central
//del círculo
var y:Number = 200;
// el radio es la mitad del ancho,
// así que 100/2 = 50.
var radio:Number = 50;
// cada segmento es de 45 grados,
// por lo tanto convertir a radianes.
var theta:Number = (45/180)*Math.PI;
// esto obtiene el radio del
// punto de control
var ctrlradio:Number = radio/Math.cos(theta/2);
// definir lineStyle
cuadrado.graphics.lineStyle(5,0x000000);
//se inicia el círculo en el
//extremo derecho.
cuadrado.graphics.moveTo(x+radio, y);
// comenzar el dibujo en el ángulo 0;
var angulo:Number = 0;
var anguloMid:Number = 0;
var cx:Number = 0;
var cy:Number = 0;
var px:Number = 0;
var py:Number = 0;
// este bucle dibuja el círculo
// en 8 segmentos
for (var i = 0; i<8; i++) {
// incrementar los ángulos
angulo += theta;
anguloMid = angulo-(theta/2);
// calcular el punto de control
Cx = +Math.cos(anguloMid)*(ctrlradio);
Cy = +Math.sin(anguloMid)*(ctrlradio);
// calcular el punto final
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHUFLFLRFtUFXORUHDOL]DGRFRQRFKRVHJPHQWRV
px = x+Math.cos(angulo)*radio;
py = y+Math.sin(angulo)*radio;
// dibujar el segmento de círculo
cuadrado.graphics.curveTo(cx,cy,px,
py);
}
addChild(cuadrado);
}
}
}
(OUHVXOWDGRVHUiDOJRPiVSDUHFLGRDXQFtUFXORFRPRHOTXHVHYHHQOD)LJ
)LJXUD
)LJXUD&tUFXORUHDOL]DGRFRQRFKRVHJPHQWRV
([LVWHRWUDIRUPDGHKDFHUXQIDOVRFtUFXOR\DTXHHQUHDOLGDGQRHVXQFtUFXOR
VLQRXQJUDQSXQWRHQODSDQWDOOD3XHVWRTXHODGLVWDQFLDPtQLPDSDUDGLEXMDUXQ
WUD]RYLVLEOHSDUD)ODVKHVGHSL[HOHV\TXHSRUGHILQLFLyQ)ODVKUHGRQGHDODV
HVTXLQDVGHORVWUD]RVVLVHKDFHXQWUD]RORVXILFLHQWHPHQWHSHTXHxRHQORQJLWXG
SHURFRQXQDOtQHDPX\JUXHVDDUULEDGHSL[HOHVHQHOSLQFHOHOUHVXOWDGRVHUi
XQJUDQSXQWRTXHDSDUHQWDVHUXQFtUFXORSHURTXHQRORHV\DTXHVLVHGHIRUPDQ
VXVHVFDODVHOUHVXOWDGRVHUiXQDOtQHDDPSOLDGD
(MHUFLFLR
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
(OUHVXOWDGRVHUiFRPRHOGHOD)LJ
)LJXUD
)LJXUD8QFtUFXORTXHHQUHDOLGDGHVXQHQRUPHSXQWR
1RWD
6LVHGHVHDXQDH[SOLFDFLyQPiVH[WHQVDGHODVFXUYDVGH%H]LHUHQ)ODVKSXHGH
FRQVXOWDUVHODILFKDWpFQLFDQ~PHURGH)ODVKDXQTXHHVSDUDODYHUVLyQQR
SLHUGHYDOLGH]
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHUFLFLRFtUFXORFRQHOPpWRGRGUDZ&LUFOH
0pWRGRGUDZ&LUFOH
8QPpWRGRPXFKRPiVVHQFLOORH[FOXVLYRGH$6HVGUDZ&LUFOH3ULPHURVHGHEH
HVWDEOHFHU HO WLSR GH OtQHD FRQ OLQH6W\OH R OLQH*UDGLHQW6W\OH \ VX UHOOHQR EHJLQ)LOO
EHJLQ%LWPDS)LOOREHJLQ*UDGLHQW)LOORDOPHQRVXQRGHHOORV6XVSDUiPHWURVVRQ
8QHMHPSORVHQFLOORGHVXXVRHVHOVLJXLHQWH
(MHUFLFLRFtUFXORFRQHOPpWRGRGUDZ&LUFOH
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
import flash.text.*;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
(OUHVXOWDGRGHEHUiVHUXQFtUFXORDPDULOORFRQODOH\HQGD+2/$FRPRHOGHOD
)LJ /RV FRQWRUQRV GH ODV OtQHDV WDPELpQ SXHGHQ WHQHU JUDGLHQWHV R
GHJUDGDGRVFRPRVHYHUiFRQHOVLJXLHQWHPpWRGR
)LJXUD&tUFXORUHDOL]DGRFRQHOPpWRGRGUDZ&LUFOH
)LJXUD
7,3'(&(57,),$&,Ð
7,3'(&(57,),$&,Ð1
8QDSRVLEOHSUHJXQWDHQHOH[DPHQGHFHUWLILFDFLyQ$&(HVVREUHORVQXHYRPpWRGRVGH
GLEXMRSRUHMHPSRGUDZ&LUFOHGUDZ(OOLSVHHWFpWHUD
0pWRGROLQH*UDGLHQW6W\OH
&RPR VH KDEtD PHQFLRQDGR FRQ HVWH PpWRGR VH SXHGH FUHDU XQD OtQHD FRQ
JUDGLHQWHV DO LJXDO TXH SXHGH KDFHUVH FRQ HO ,'( GH )ODVK $QWHV GH VX XVR VH
GHEH XWLOL]DU XQ PpWRGR OLQH6W\OH GH OR FRQWUDULR OD OtQHD VH PDQWHQGUi HQ
XQGHILQHG6XVLQWD[LVHV
/RV SDUiPHWURV VRQ VLPLODUHV D ORV GH EHJLQ)LOO SRU OR FXDO QR VH H[SOLFDUiQ 3DUD
PD\RU GHWDOOH VH SXHGH LU D OD D\XGD GHO SDTXHWH 8Q HMHPSOR GHO XVR GH HVWH
PpWRGRHVHOVLJXLHQWH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHUFLFLRFXDGURFRQGHJUDGDGRV
(MHUFLFLRFXDGURFRQGHJUDGDGRV
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.*;
import flash.geom.Matrix;
miShape.graphics.lineGradientStyle(GradientType.LINEAR,
[0xFF0000,0x00FF00, 0x0000FF],
[1, 1, 1],
[0, 128, 255],
matriz);
miShape.graphics.drawRect(0, 0, 200, 40);
this.addChild(miShape);
}
}
}
(OUHVXOWDGRGHEHUiVHUFRPRHOTXHVHDSUHFLDHQOD)LJ
)LJXUD
)LJXUD&XDGURFRQGHJUDGDGRV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
0pWRGRGUDZ(OLSVH
(O PpWRGR GUDZ(OOLSVH HV PX\ VLPLODU DO GHO FtUFXOR FRQ OD GLIHUHQFLD GH TXH HQ
OXJDUGHGDUXQUDGLRVHOHGDUiXQYDORUSDUDHOODUJR\RWURSDUDHODQFKR
8QHMHPSORVHQFLOORGHOXVRGHHVWHPpWRGRHVHOVLJXLHQWH
(MHUFLFLRGLEXMDUXQDHOLSVH
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
)LJXUD8QDHOLSVHDPDULOOD
)LJXUD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHUFLFLRGLEXMDUXQDHOLSVH
0pWRGREHJLQ%LWPDS)LOO
(VWHPpWRGRUHOOHQDUiHOiUHDGHGLEXMRFRQXQPDSDGHELWV6XVLQWD[LVHV
shape.graphics.beginBitmapFill(bitmap:BitmapData,
matrix:Matrix, repeat:Boolean, smooth:Boolean);
(MHUFLFLR
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.*;
import flash.geom.*;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
6HREWHQGUiXQDHOLSVHFRQXQUHOOHQRFXDGULFXODGRFRPRHOGHOD)LJ
)LJXUD8QDHOLSVHFRQUHOOHQRGHELWPDS
)LJXUD
0RYLPLHQWRGHVKDSHVFRQGLEXMRV
(VWRV PpWRGRV VH SXHGHQ DSOLFDU SDUD GLEXMDU REMHWRV PiV FRPSOLFDGRV FRPR ODV
FXUYDVVLQXVRLGDOHV
(MHUFLFLRGLEXMRGHXQDIXQFLyQVHQRLGDO
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHPSORGLEXMRGHXQDIXQFLyQVHQRLGDO
package misClases{
import flash.display.*;
import flash.geom.Matrix;
(OUHVXOWDGRGHEHUiVHUHOTXHPXHVWUDOD)LJ
)LJXUD
)LJXUD'LEXMRGHXQDIXQFLyQVHQRLGDO
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
0pWRGRFOHDU
(VWHPpWRGRERUUDHOFRQWHQLGRGHXQDIRUPDEiVLFDRVKDSHTXHVHKD\DUHDOL]DGR
FRQHO$3,GHGLEXMR7DPELpQOLPSLDORVYDORUHVGHORVPpWRGRVOLQH6W\OH\EHJLQ)LOO
6XVLQWD[LVHV
shape.graphics.clear();
&RPRHMHPSORVHKDUiXQDVHQFLOODDQLPDFLyQGHXQVKDSHTXHVHPRYHUiHQIRUPD
FLUFXODU 6L QR VH XWLOL]DUD HO PpWRGR FOHDU VH HQFLPDUtDQ ORV SHTXHxRV FtUFXORV
VLPXODQGRXQFtUFXORFRQWLQXR
(MHUFLFLR
• 6HFDPELDHOSDUiPHWUR&ODVV'RFXPHQWHQHO,QVSHFWRUGHSURSLHGDGHVGH
ODSHOtFXODGLEXMDIODSRUHOGHPLV&ODVHV'LEXMR
• 6HDEUHXQDUFKLYR$6QXHYR\VHJXDUGDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUH'LEXMRDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
import flash.events.*;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHPSORGLEXMRGHXQDIXQFLyQVHQRLGDO
contenedor.addChild(bolita);
addEventListener(Event.ENTER_FRAME,
onEnterFrame);
function onEnterFrame(event:Event):void {
grados += 4;
var radianes:Number =
convierteRadianes(grados);
var posX:Number = Math.sin(radianes)
* radio;
var posY:Number = Math.cos(radianes)
* radio;
bolita.graphics.clear();
bolita.graphics.beginFill(0);
bolita.graphics.drawCircle(posX,
posY, radiosatelite);
}
function
convierteRadianes(grados:Number):Number {
return grados * Math.PI / 180;
}
}
}
}
6H REWHQGUi XQ SHTXHxR FtUFXOR TXH GD YXHOWDV HQ HO HVFHQDULR $KRUD HOLPLQH OD
OtQHDGHQWURGHORQ(QWHU)UDPHTXHERUUDHOREMHWRHVGHFLUHOFOHDU2EVpUYHVHHO
UHVXOWDGR
7,3'(&(57,),&$&,Ð
7,3'(&(57,),&$&,Ð1
2WUDSUHJXQWDTXHOHSXHGHQKDFHUHQVXH[DPHQGHFHUWLILFDFLyQ$&(R$&$HVFRQ
UHVSHFWRDODPDQHUDGHFUHDURHOLPLQDUORVFRQWHQLGRVGHXQJUiILFR(OPpWRGRFOHDU
VHUtDODUHVSXHVWD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
(MHPSORWUD]RGHXQDJUiILFDGHOtQHDV
(QHVWHHMHUFLFLRKDUHPRVXQDJUiILFDWRPDQGRODVOHFWXUDVGHXQDUUHJORJHQHUDGR
HQIRUPDDOHDWRULD\HIHFWXDUHPRVXQDJUiILFDGHOtQHDV
• (QWUH D OD SiJLQD GHO OLEUR \ EDMH HO DUFKLYR JUDILFDIOD HQ HO FXDO \D VH
WLHQHQORVREMHWRVQHFHVDULRVSDUDODJUDILFDFLyQ
• (OREMHWRPiVLPSRUWDQWHHVHOFOLSGHSHOtFXODJUDILFD6KDSHTXHHVGRQGH
FRQVWUXLUHPRVODJUiILFD\HOFXDOVHHQFXHQWUDHQHOSXQWRGHOGLEXMR
GHODJUiILFD
• &RPRVHPHQFLRQyDOLQLFLRGHOFDStWXORHOSXQWRGHFXDOTXLHUREMHWR
HQ)ODVKVHHQFXHQWUDHQODHVTXLQDVXSHULRUL]TXLHUGDSRUORTXHHQHVWH
FDVR OD JUiILFD WHQGUi SXQWRV QHJDWLYRV FRQ UHVSHFWR DO SXQWR GH UHJLVWUR
GHOREMHWRPHQFLRQDGR
)LJXUD/RVQRPEUHVGHLQVWDQFLDGHORVREMHWRV
)LJXUD
• (VFULEDHQHOFDPSRGH'RFXPHQW&ODVVODFODVHPLV&ODVHV*UDILFD
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.events.Event;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHPSORWUD]RGHXQDJUiILFDGHOtQHDV
var rangoGrafica:Number;
var rangoS:Number;
//
function Grafica() {
datos_array = new Array();
rangoGrafica=8;
graficaShape.alpha=0;
iniciaGrafica();
}
datos_array.push(Math.floor(Math.random()*30));
this["mes"+i+"_mc"].text=meses_array[i];
this["anio"+i+"_mc"].text=datos_array[i];
}
dibujaGrafica();
}
function dibujaGrafica() {
//var datos_array:Array=co_dp.toArray();
var primerPunto:Boolean=true;
var rango_X:int=-40;
var rango_Y:int=0;
var dato:Number;
//
graficaShape.graphics.lineStyle(3, 0xff6600, 1);
//
for (var hh:int=0; hh < datos_array.length; hh++)
{
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
'LEXMRFRQ$FWLRQ6FULSW
rango_X=hh*40;
dato=datos_array[hh];
rango_Y=(dato*rangoGrafica)*-1;
//
if (primerPunto) {
graficaShape.graphics.moveTo(rango_X, rango_Y);
primerPunto=false;
} else {
graficaShape.graphics.lineTo(rango_X, rango_Y);
}
}
graficaShape.graphics.endFill();
addEventListener(Event.ENTER_FRAME, fadeIn);
}
private function fadeIn(e:Event):void {
graficaShape.alpha+=.05;
if (graficaShape.alpha>=1) {
graficaShape.alpha=1;
removeEventListener(Event.ENTER_FRAME,
fadeIn);
}
}
}
}
2WUR SXQWR LPSRUWDQWH HV OD HVFDOD GH OD JUiILFD 6L REVHUYD OD VHSDUDFLyQ HQWUH
XQLGDG\XQLGDGHQODJUiILFDUHSUHVHQWDGDSRUODVOtQHDVGHODL]TXLHUGDHVGH
SL[HOHV<ODVHSDUDFLyQHQWUHODVOtQHDVGHODVRUGHQDGDVHVGHSL[HOHV(VWRQRV
SHUPLWH FDOFXODU ORV SXQWRV HQ OD JUiILFD SHUR UHFXHUGH TXH VRQ LQYHUVDV SRU HVR
ODVPXOWLSOLFDPRVSRUî(OUHVXOWDGRGHQXHVWUDJUiILFDVHUiHOVLJXLHQWH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(MHPSORWUD]RGHXQDJUiILFDGHOtQHDV
)LJXUD
)LJXUD/DJUiILFDGLEXMDGD
$PDQHUDGHFRQFOXVLyQ
(O$3,GHGLEXMRQRVSHUPLWLUiKDFHUPXFKRVHIHFWRV\DSOLFDFLRQHVGHIRUPDUiSLGD
\ OLJHUD DXQTXH D YHFHV LPSOLFD WHFOHDU XQ SRFR PiV GH FyGLJR \ ´GLEXMDU FRQ
Q~PHURVµHQHVWHFDStWXORFRQRFLPRVORVPpWRGRV
• EHJLQ%LWPDS)LOO
• EHJLQ)LOO
• EHJLQ*UDGLHQW)LOO
• FOHDU
• FXUYH7R
• GUDZ&LUFOH
• GUDZ(OLSVH
• GUDZ5HFW
• HQG)LOO
• OLQH*UDGLHQW6W\OH
• OLQH6W\OH
• OLQH7R
• PRYH7R
(Q HO VLJXLHQWH FDStWXOR GHGLFDUHPRV PiV DWHQFLyQ D ORV Q~PHURV SDUD KDFHU TXH
ODVFRVDVVHPXHYDQGHVGH$FWLRQ6FULSW
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
Animación con
ActionScript 10
,QWURGXFFLyQ
/D DQLPDFLyQ KD VLGR OD UD]yQ GH VHU GH )ODVK 'HVGH OD DQLPDFLyQ FXDGUR SRU
FXDGUR SDVDQGR SRU OD LQWHUSRODFLyQ GH PRYLPLHQWR GH OD OtQHD GH WLHPSR ODV
DQLPDFLRQHVPiVLPSDFWDQWHVVHKDQUHDOL]DGRFRQ$FWLRQ6FULSW(QXQSULQFLSLRVH
HIHFWXDED HO PRWRU HQJLQH FRQ OD PLVPD OtQHD GH WLHPSR /XHJR VH WXYR HO
PDQHMDGRU GH HYHQWRV RQ(QWHU)UDPH DVt FRPR OD LQVWUXFFLyQ VHW,QWHUYDO FRQ ODV
TXHVHWHQtDPD\RUFRQWURO \H[DFWLWXGGHWLHPSR 7DPELpQGHVGHODYHUVLyQVH
FXHQWD FRQ OD FODVH 7ZHHQ \ HO SDTXHWH (DVLQJ ORV FXDOHV SHUPLWHQ PDQLSXODU
DQLPDFLRQHV FRQ DFHOHUDFLyQ \ HODVWLFLGDG HQ IRUPD VHQFLOOD &RQ $FWLRQ6FULSW
DKRUDVHWHQGUiQQXHYDVKHUUDPLHQWDVGHDQLPDFLyQSHURHVLPSRUWDQWHLQLFLDUFRQ
ODFOiVLFDDQLPDFLyQGHXQDSHORWDTXHUHERWDHQODSDQWDOOD
(MHUFLFLR
• 6HDEUHXQDUFKLYR)ODVK$6VHOHQRPEUDDQLPDFLRQIOD\VHJXDUGDHQ
ODFDUSHWDGHWUDEDMR
• 6HFUHDXQDUFKLYR$FWLRQ6FULSWVHOHQRPEUD$QLPDFLRQDV\VHJXDUGDHQ
ODFDUSHWDPLV&ODVHV
• (QHODUFKLYRDQLPDFLRQIODVHHVFULEHHQHOFDPSRGH'RFXPHQW&ODVVOD
FDGHQDPLV&ODVHV$QLPDFLRQ
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
,QWURGXFFLyQ
package misClases{
import flash.display.Sprite;
import flash.events.Event;
bolita.graphics.beginFill(0xff0000,100);
bolita.graphics.drawCircle(0,0,10);
bolita.graphics.endFill();
bolita.x = 100;
bolita.y = 100;
addChild(bolita);
addEventListener(Event.ENTER_FRAME,
onEnterFrame);
}
private function onEnterFrame(event:Event):void {
bolita.x += dx;
}
}
}
(OUHVXOWDGRVHUiXQDSHORWLWDTXHVHGHVSOD]DUiGHL]TXLHUGDDGHUHFKD6LHQOXJDU
GH VXPDU VH UHVWD D OD SRVLFLyQ GH ´[µ HO UHVXOWDGR VHUtD HO LQYHUVR OD SHORWLWD
DYDQ]DUtDGHGHUHFKDDL]TXLHUGD
6LHQOXJDUGHPRYHUODEROLWDHQHOHMHGHODV´[µVHKLFLHUDHQHOHMH´\µDO
VXPDUDODFRRUGHQDGD´\µODEROLWDVHGHVSOD]DUtDGHDUULEDKDFLDDEDMR\DTXHHO
RULJHQGHODVFRRUGHQDGDVHQ)ODVKVHHQFXHQWUDHQODHVTXLQDVXSHULRUL]TXLHUGD
3RUOyJLFDVLVHUHVWDODEROLWDVHGHVSOD]DUtDKDFLDODSDUWHVXSHULRUGHODSDQWDOOD
(QWRGRVORVFDVRVODEROLWDVH´VDOGUtDµGHOHVFHQDULR
1RKD\ TXHGHWHQHUVHHQORVGHWDOOHVGHODVYDOLGDFLRQHVSDUDDYDQ]DUHQ
ODVFXHVWLRQHVQXHYDVHQ$6(QOXJDUGHOPDQHMDGRUGHHYHQWRV(17(5B)5$0(
VHXWLOL]DUiODQXHYDFODVH7LPHUTXHVHHQFXHQWUDHQIODVKXWLOV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
$GPLQLVWUHELHQVXWLHPSRGXUDQWHHOH[DPHQ\DTXHDOFRQFOXLUHOPLVPRHOH[DPHQ
VHFLHUUD\VHFDOLILFD/DVSUHJXQWDVVLQFRQWHVWDUVHFRQVLGHUDQPDODV
(MHUFLFLR
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVVSRUODFDGHQD
PLV&ODVHV$QLPDFLRQ
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQ
HOQRPEUHGH$QLPDFLRQDV
• (QHVWHDUFKLYRVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.display.Stage;
import flash.utils.Timer;
bolita.graphics.beginFill(0xff0000,100);
bolita.graphics.drawCircle(0,0,10);
bolita.graphics.endFill();
bolita.x = 100;
bolita.y = 100;
addChild(bolita);
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0RYHUXQREMHWRDXQDFRRUGHQDGDHVSHFtILFD
}
private function onTimer(event:TimerEvent):void {
bolita.x += dx;
bolita.y += dy;
$OHMHFXWDUODSHOtFXODVHYHUiFyPRUHERWDHOSHTXHxRFtUFXORURMR
0RYHUXQREMHWRDXQDFRRUGHQDGDHVSHFtILFD
(Q DOJXQDV DQLPDFLRQHV \ MXHJRV GHVDUUROODGRV HQ )ODVK HV QHFHVDULR PRYHU XQ
REMHWR D XQD FRRUGHQDGD HVSHFtILFD 3DUD HOOR VH UHTXLHUH ´LQWHUSRODUµ ORV SXQWRV
HQWUH ODV FRRUGHQDGDV RULJHQ [ \ \ ODV FRRUGHQDGDV GHVWLQR [ \ \ VH
QHFHVLWDODVLJXLHQWHIyUPXODSDUDFDGDXQRGHORVHOHPHQWRVGHODFRRUGHQDGD
x = x2 * n/100 + x1*(100-n)/100;
y = y2 * n/100 + y1*(100-n)/100;
$TXtHOWUXFRHVODYDULDEOH´QµODFXDOWLHQHTXHDXPHQWDUGHVGHFHURKDVWDFLHQHV
GHFLU VHUi HO HTXLYDOHQWH D XQ SRUFHQWDMH (O SULPHU HOHPHQWR OD YDULDEOH ´Qµ
DXPHQWD GH D (O VHJXQGR HOHPHQWR GH OD HFXDFLyQ LUi GLVPLQX\HQGR OD
FRRUGHQDGD LQLFLDO KDVWD HO FHUR (QWRQFHV VH QHFHVLWD XQD IRUPD GH DYDQ]DU
QXHVWUD YDULDEOH ´Qµ GHVGH FHUR KDVWD FLHQ $Vt TXH VH KDUi XQ HMHUFLFLR FRQ XQD
ILJXUDDOHDWRULDTXHWLHQHTXHYLDMDUDOFHQWURGHODSDQWDOOD(OPRWRUGHpVWDHVXQ
REMHWR7LPHU
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
(MHUFLFLR
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVVSRUODFDGHQD
PLV&ODVHV$QLPDFLRQ
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQ
HOQRPEUHGH$QLPDFLRQDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.display.Stage;
import flash.utils.Timer;
bolita.graphics.beginFill(0xff0000,100);
bolita.graphics.drawCircle(0,0,10);
bolita.graphics.endFill();
bolita.x = x1;
bolita.y = y1;
addChild(bolita);
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0RYHUXQREMHWRDXQDGLUHFFLyQGHWHUPLQDGD
6HHMHFXWDYDULDVYHFHVODSHOtFXOD\VHYHUiTXHHOSHTXHxRFtUFXORVLHPSUHUHJUHVD
DOFHQWURGHOHVFHQDULR
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
6LHQWXH[DPHQGHFHUWLILFDFLyQQRHVWiVVHJXURHQXQDUHVSXHVWDPiUFDODFRPRGXGD
\UHJUHVDDHOODFXDQGRWHUPLQHVGHFRQWHVWDUHOH[DPHQ1RGHMHVQLQJXQDUHVSXHVWD
VLQFRQWHVWDU
0RYHUXQREMHWRDXQDGLUHFFLyQGHWHUPLQDGD
$OJXQDV YHFHV VH GHVHD TXH XQ REMHWR VH PXHYD HQ FLHUWD GLUHFFLyQ (Q
DOJXQRV MXHJRV ORV REMHWRV GHEHQ PRYHUVH FRQ FLHUWR iQJXOR SRU HMHPSOR FXDQGR
VRQGLVSDUDGRVSRUXQFDxyQRGDUGRVSDUDUHYHQWDUORVJORERVTXHSDVDQ
6HWLHQHHQWRQFHVXQiQJXORXQDSRVLFLyQLQLFLDO\XQDYHORFLGDG3DUDHOOR
VHQHFHVLWDQDOJXQDVIyUPXODVGHWULJRQRPHWUtD/DURWDFLyQGHXQREMHWRHQ)ODVK
HVWi GDGD HQ JUDGRV \ ODV IyUPXODV GH WULJRQRPHWUtD GH OD FODVH 0DWK
0DWK GDQ VXV
UHVXOWDGRV HQ UDGLDQHV SRU OR FXDO HV QHFHVDULR SDVDU GH XQD PHGLGD D RWUD HQ
IRUPD FRQVWDQWH 3DUD FRQYHUWLU GH UDGLDQHV D JUDGRV VH XWLOL]DUi OD VLJXLHQWH
IyUPXOD
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
3DUDHQFRQWUDUHOHOHPHQWRHQ[VHUHTXLHUHHOFRVHQR\SDUDHOHOHPHQWRHQ\HO
VHQR\DTXHQRVHWLHQHXQDFRRUGHQDGDILQDO
(MHPSOR
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVVSRUODFDGHQD
PLV&ODVHV$QLPDFLRQ
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQ
HOQRPEUHGH$QLPDFLRQDV
(QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.display.Stage;
import flash.utils.Timer;
bolita.graphics.beginFill(0xff0000,100);
bolita.graphics.drawCircle(0,0,10);
bolita.graphics.endFill();
bolita.x = 250;
bolita.y = 200;
addChild(bolita);
var cronometro:Timer = new Timer(30);
cronometro.addEventListener("timer",
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
0RYHUXQREMHWRHQIRUPDFLUFXODU
onTimer);
cronometro.start();
}
private function onTimer(event:TimerEvent):void {
var xx:Number = Math.cos(radianes) *
velocidad;
var yy:Number = Math.sin(radianes) *
velocidad;
bolita.x += xx;
bolita.y += yy;
}
}
}
0RYHUXQREMHWRHQIRUPDFLUFXODU
&RQODVIXQFLRQHVWULJRQRPpWULFDVVLHQOXJDUGHPXOWLSOLFDUDODVIXQFLRQHVGHVHQR
\FRVHQRSRUXQDYHORFLGDGVHYDUtDHOiQJXORVHWHQGUiXQPRYLPLHQWRFLUFXODU
(MHPSOR
(MHPSOR
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVV
'RFXPHQW&ODVVSRUODFDGHQD
'RFXPHQW&ODVV
PLV&ODVHV$QLPDFLRQ
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHV
FRQHOQRPEUHGH$QLPDFLRQDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
import flash.events.*;
var grados:Number = 0;
var radio:Number = 80;
var radiosatelite:Number = 5;
var contenedor:Sprite = new Sprite();
var bolita:Shape = new Shape();
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
contenedor.addChild(bolita);
addEventListener(Event.ENTER_FRAME,
onEnterFrame);
}
function onEnterFrame(e:Event):void {
grados += 10;
var radianes:Number =
convierteRadianes(grados);
var posX:Number = Math.sin(radianes) *
radio;
var posY:Number = Math.cos(radianes) *
radio;
bolita.graphics.clear();
bolita.graphics.beginFill(0);
bolita.graphics.drawCircle(posX, posY,
radiosatelite);
}
public function
convierteRadianes(grados:Number):Number {
return grados * Math.PI / 180;
}
}
}
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
3DUDDOJXQDVYHUVLRQHVKD\GLVSRQLEOHODYHUVLyQHQHVSDxROGHOH[DPHQ&XLGDGRODV
WUDGXFFLRQHVVRQPX\ORFDOLVWDV\DOJXQDVYHFHVODWUDGXFFLyQGHWpUPLQRVSXHGHOOHJDU
D FRQIXQGLUOH 6L QR PDQHMD HO SDTXHWH \ OD WHUPLQRORJtD HQ HVSDxRO HV PHMRU TXH
FRQWHVWHHOH[DPHQHQLQJOpV
(DVLQJ
(O HDVLQJ VXDYL]DGR DWHQXDFLyQ FRORFDU DOJR HQ IRUPD GHOLFDGD \ VXDYH HV XQ
FOiVLFRHQODDQLPDFLyQFRQ$FWLRQ6FULSW&RQVLVWHHQGHWHUPLQDUODGLVWDQFLDHQWUH
GRV SXQWRV PXOWLSOLFDGR SRU XQ IDFWRU (VWH IDFWRU HV XQ Q~PHUR IUDFFLRQDO TXH
HTXLYDOHDGLYLGLUORHQWUHXQHQWHUR/RDQWHULRUHVSRUTXHSXHGHYHUVHHVWDPLVPD
IyUPXOD \D VHD FRPR PXOWLSOLFDFLyQ SRU XQ IDFWRU GHFLPDO R OD GLYLVLyQ HQWUH XQ
HQWHUR (Q SRFDV SDODEUDV VH DJUHJDUi ´SRFR D SRFRµ OD GLVWDQFLD KDVWD OOHJDU DO
SXQWRILQDO/DIyUPXODSDUDFDGDHOHPHQWRGHOSODQRHV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
(DVLQJ
(MHPSOR
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVVSRUODFDGHQD
PLV&ODVHV$QLPDFLRQ
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQ
HOQRPEUHGH$QLPDFLRQDV
• (QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.display.Stage;
import flash.utils.Timer;
bolita.graphics.beginFill(0xff0000,100);
bolita.graphics.drawCircle(0,0,10);
bolita.graphics.endFill();
bolita.x = 250;
bolita.y = 200;
addChild(bolita);
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
factor;
var yy:Number = (mouseY - bolita.y) *
factor;
bolita.x += xx;
bolita.y += yy;
}
}
}
$FHOHUDFLyQ
/DDFHOHUDFLyQHVXQSURFHVRDFXPXODWLYRHVGHFLUHQOXJDUGHHQFRQWUDUXQSXQWR
RXQiQJXORVHDFXPXODUiHQXQDYDULDEOHXQDGLVWDQFLDSDUDPRYHUXQREMHWROR
FXDO KDUi TXH DO SULQFLSLR VH PXHYD HQ IRUPD OHQWD \ SRVWHULRUPHQWH DXPHQWH VX
YHORFLGDG (VWH HIHFWR VH FRQMXQWDUi FRQ XQ GHVSOD]DPLHQWR DQJXODU HQ IRUPD
DOHDWRULDSDUWLHQGRGHOFHQWURGHOHVFHQDULR
(MHPSOR
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVV
'RFXPHQW&ODVVSRUODFDGHQD
'RFXPHQW&ODVV
PLV&ODVHV$QLPDFLRQ
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQ
HOQRPEUHGH$QLPDFLRQDV
(QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.display.Stage;
import flash.utils.Timer;
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
$FHOHUDFLyQ
//
var bolita:Sprite = new Sprite();
var factor:Number = 0.3;
var angulo:Number = Math.random() * 360;
var dx:Number = 0;
var dy:Number = 0;
bolita.graphics.beginFill(0xff0000,100);
bolita.graphics.drawCircle(0,0,10);
bolita.graphics.endFill();
bolita.x = 250;
bolita.y = 200;
addChild(bolita);
var cronometro:Timer = new Timer(30);
cronometro.addEventListener("timer",
onTimer);
cronometro.start();
}
private function onTimer(event:TimerEvent):void {
var radians:Number = angulo * Math.PI /
180;
var fx:Number = Math.cos(radians)*factor;
var fy:Number = Math.sin(radians)*factor;
//
dx += fx;
dy += fy;
//
bolita.x += dx;
bolita.y += dy;
}
}
}
7,3'(&(57,),&$&,Ð1
7,3'(&(57,),&$&,Ð1
(Q ORV H[iPHQHV GH FHUWLILFDFLyQ $&( SRU OR JHQHUDO GDQ PXFKR SHVR D ODV QXHYDV
FDUDFWHUtVWLFDV GHO SDTXHWH \ D $FWLRQ6FULSW 5HSDVH ODV QXHYDV FDUDFWHUtVWLFDV SXHV
VHJXUDPHQWH OH SUHJXQWDUiQ PXFKR GH HOODV 7DPELpQ KDFHQ PXFKR pQIDVLV HQ HO
PDQHMRGHYLGHR
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
2WURVPRYLPLHQWRV
,JXDOPHQWH FRQ XQ SRFR GH PDWHPiWLFDV VH SRGUiQ KDFHU RWURV WLSRV GH PRYL
PLHQWRV SRU HMHPSOR PRYLPLHQWR RVFLODWRULR RYDO R GH XQD SDUiEROD 3DUD HO
PRYLPLHQWR RVFLODWRULR VH SXHGH XWLOL]DU OD IXQFLyQ VHQR R HO FRVHQR \D TXH
SURSRUFLRQDQXQYDORUHQWUH\îHQIRUPDVHFXHQFLDOQRHQIRUPDDOHDWRULD6LD
HVWHYDORUVHOHPXOWLSOLFDSRUXQDFRQVWDQWHQXPpULFDSRUHMHPSORVHWHQGUiHO
PRYLPLHQWR GHVHDGR (Q XQ LQFLVR VH REVHUYDUi TXH VL HQ DPERV HOHPHQWRV VH
FDOFXODVXFRRUGHQDGDFRQHOVHQR\HOFRVHQRHOPRYLPLHQWRVHUiFLUFXODU
(MHPSORPRYLPLHQWRHQIRUPDFLUFXODU
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVVSRUODFDGHQD
PLV&ODVHV$QLPDFLRQ
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQ
HOQRPEUHGH$QLPDFLRQDV
addChild(bolita);
angulo += 0.03
}
}
}
6L VH GHVHD TXH OD EROLWD DYDQFH VHJ~Q OD IXQFLyQ VH SRGUi WRPDU HQ FXHQWD HO
JXLyQFRQHOTXHVHGLEXMyODIXQFLyQFRVHQR(QHVWHFDVRVHKDUiTXHODSHORWLWD
EDMHSRUHOHVFHQDULRHQIRUPDVHQRLGDO
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
2WURVPRYLPLHQWRV
(MHPSORPRYLPLHQWRHQIRUPDVHQRLGDO
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVVSRUODFDGHQD
PLV&ODVHV$QLPDFLRQ
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHV
FRQHOQRPEUHGH$QLPDFLRQDV
(QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.display.Stage;
import flash.utils.Timer;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
HQ RWUR HMHUFLFLR VH HIHFW~D XQ PRYLPLHQWR FLUFXODU PXOWLSOLFDQGR SRU XQ PLVPR
IDFWRUHOSURGXFWRGHOODVIXQFLRQHVVHQR\FRVHQR6LVHOHGDDFDGDXQDGHHOODV
GLIHUHQWHYDORUHOUHVXOWDGRVHUiXQPRYLPLHQWRRYDO
(MHPSORPRYLPLHQWRRYDO
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVVSRUODFDGHQD
PLV&ODVHV$QLPDFLRQ
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQHO
QRPEUHGH$QLPDFLRQDV
(QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
import flash.utils.Timer;
import flash.events.*;
bolita.graphics.beginFill(0xff0000,100);
bolita.graphics.drawCircle(0,0,10);
bolita.graphics.endFill();
addChild(bolita);
}
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
2WURVPRYLPLHQWRV
2WURPRYLPLHQWRTXHSXHGHVHUGHXWLOLGDGHVHOFRPSOHWDPHQWHDOHDWRULR3DUDHOOR
VHFDPELDQORVHOHPHQWRVDQ~PHURVDOHDWRULRV
(MHPSORPRYLPLHQWRDOHDWRULR
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVVSRUODFDGHQD
PLV&ODVHV$QLPDFLRQ
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQ
HOQRPEUHGH$QLPDFLRQDV
(QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.Shape;
import flash.display.Stage;
import flash.utils.Timer;
import flash.events.*;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
bolita.graphics.beginFill(0xff0000,100);
bolita.graphics.drawCircle(0,0,10);
bolita.graphics.endFill();
addChild(bolita);
}
private function onTimer(event:TimerEvent):void {
var posX:Number = Math.sin(radianesX) *
radioX;
var posY:Number = Math.cos(radianesY) *
radioY;
bolita.x = stage.stageWidth/2 + posX;
bolita.y = stage.stageHeight/2 + posY;
radianesX += Math.random()/5;
radianesY += Math.random()/5;
}
}
}
2WURWLSRGHPRYLPLHQWRHVTXHXQREMHWRVLJDDOFXUVRU(QHVWHFDVRHOHOHPHQWRD
HQFRQWUDU HV HO iQJXOR GDGRV GRV SXQWRV HO SXQWR GH UHJLVWUR GHO REMHWR \ ODV
FRRUGHQDGDV GHO DSXQWDGRU GHO PRXVH 3DUD HQFRQWUDU HO iQJXOR VH XWLOL]DUi HO
PpWRGRDWDQ
DWDQGHODFODVH0DWK
DWDQ 0DWK&RPRHVWHPpWRGRUHJUHVDHOiQJXORHQUDGLDQHV
0DWK
VHWLHQHTXHFRQYHUWLUDJUDGRV\DTXHODSURSLHGDGURWDWLRQ
URWDWLRQVyORDFHSWDJUDGRV\QR
URWDWLRQ
UDGLDQHV(VWDIyUPXODHV~WLOHQMXHJRVSRUHMHPSORFXDQGRVHWLHQHXQFDxyQTXH
GLVSDUDDGLIHUHQWHVREMHWRVTXHVHPXHYHQHQHOHVFHQDULRRHOFOiVLFRHQTXHORV
RMRV GHO SHUVRQDMH VH PXHYHQ FRQ HO PRYLPLHQWR GHO FXUVRU 9pDVH HO VLJXLHQWH
HMHUFLFLR
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
2WURVPRYLPLHQWRV
(MHPSORPRYLPLHQWRDOFRPSiVGHOFXUVRU
• 6HFDPELDHOFDPSRGH'RFXPHQW&ODVVSRUODFDGHQD
PLV&ODVHV$QLPDFLRQ
• (QHVWHHMHUFLFLRVHGLEXMDXQUHFWiQJXORGHOJDGRGHDSUR[LPDGDPHQWHï
SL[HOHV\VHFRQYLHUWHHQFOLSGHSHOtFXODFRQHOSXQWRGHUHJLVWURHQOD
SDUWHLQIHULRUGHOPLVPR
• 6HQRPEUDODLQVWDQFLDFRPRUHFWiQJXOR
• 6HDEUHXQQXHYRDUFKLYRGHFODVH\VHJUDEDHQODFDUSHWDPLV&ODVHVFRQ
HOQRPEUHGH$QLPDFLRQDV
(QHODUFKLYRGHFODVHVHHVFULEHHOVLJXLHQWHJXLyQ
package misClases{
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.display.Stage;
import flash.utils.Timer;
import flash.events.*;
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
-XHJRFRQXQWDQTXHTXHXWLOL]DPRYLPLHQWRV
DQJXODGRV
(Q HVWH HMHPSOR KDUHPRV XQ MXHJR VHQFLOOR FRQ XQ WDQTXH HO FXDO QRV SHUPLWLUi
XWLOL]DU ORV PRYLPLHQWRV DQJXODGRV GHO SUHVHQWH FDStWXOR $XQTXH \D XWLOL]DPRV
DOJXQRV PpWRGRV GH IRUPD SUiFWLFD DOJXQRV PpWRGRV FRPR HO VHQR \ HO FRVHQR
DTXtOHVGDUHPRVXQSRFRPiVGHVRSRUWHHQODWHRUtD
• 3DUDORVPRYLPLHQWRVOLQHDOHVXWLOL]DPRVODVSURSLHGDGHV[\\HQVXVFXDWUR
YDULDFLRQHVDUULEDDEDMRGHUHFKDHL]TXLHUGDSRUPHGLRGHGRVYDULDEOHV
G[\G\
• 6LQHPEDUJRSDUDORVPRYLPLHQWRVDQJXODGRVGLVSDURVFDUURVQDYHVHWF
HVWDVYDULDEOHVQRVRQVXILFLHQWHV
• 3DUD HOOR QHFHVLWDUHPRV GH DOJXQRV PpWRGRV GH OD FODVH 0DWK 0DWKVLQ
VHQR0DWKFRVFRVHQR\0DWKDWDQDUFRWDQJHQWH
• (O VLJXLHQWH JUiILFR QRV D\XGDUi D H[SOLFDU OD UHODFLyQ HQWUH HO VHQR \ HO
FRVHQR
)LJXUD&tUFXORGHODVIXQFLRQHVVHQRLGDOHV
)LJXUD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
-XHJRFRQXQWDQTXHTXHXWLOL]DPRYLPLHQWRVDQJXODGRV
3XQWR
3XQWR
•
(OSXQWRUHSUHVHQWDHOiQJXORFHUR
•
6LHOiQJXORHVFHURHOFRVHQRHV\HOVHQRHV
•
(QHVWHSXQWR[WLHQHXQYDORUGH\\XQYDORUGH
•
6LXQREMHWRVHPXHYHHQXQiQJXORGHVHGHVSOD]DUtDXQDXQLGDG
KDFLDODGHUHFKD
3XQWR
3XQWR
•
6LXQREMHWRVHGHVSOD]DUDDJUDGRVHOFRVHQRHV\HOVHQRHV
•
(QHVWHSXQWR[WLHQHXQYDORUGH\\XQYDORUGH
•
6LXQREMHWRVHPXHYHHQXQiQJXORGHJUDGRVVHGHVSOD]DUtDXQD
XQLGDGKDFLDDEDMR
3XQWR
3XQWR
•
6LXQREMHWRVHGHVSOD]DUDDJUDGRVHOFRVHQRHVî\HOVHQRHV
GH
• (QHVWHSXQWR[WLHQHXQYDORUGH\\XQYDORUGH
• 6LXQREMHWRVHPXHYHHQXQiQJXORGHJUDGRVVHGHVSOD]DUtDXQD
XQLGDGKDFLDODL]TXLHUGD
3DVR
3DVR
•
6LXQREMHWRVHGHVSOD]DUDDJUDGRVHOFRVHQRHV\HOVHQRHV
GHî
• (QHVWHSXQWR[WLHQHXQYDORUGH\\XQYDORUGHî
• 6LXQREMHWRVHPXHYHHQXQiQJXORGHJUDGRVVHGHVSOD]DUtDXQD
XQLGDGKDFLDDUULED
5DGLDQHVYV*UDGRV
5DGLDQHVYV*UDGRV
• /RV JUDGRV \ ORV UDGLDQHV VRQ GRV IRUPDV GLVWLQWDV GH UHSUHVHQWDU
iQJXORV
• /RV UDGLDQHV VRQ iQJXORV UHSUHVHQWDGRV HQ UHODFLyQ FRQ OD FRQVWDQWH
3,
• 8QFtUFXORFRPSOHWRVRQJUDGRV
• 8QFtUFXORFRPSOHWRHQUDGLDQHVVRQ
3,
• 3RUORWDQWR
JUDGRV
3,UDGLDQHV
6LGHVSHMDPRV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
/DSURSLHGDGURWDWLRQ
/DSURSLHGDGURWDWLRQ
URWDWLRQ
• /DURWDFLyQHQ$FWLRQ6FULSWHVOD~QLFDSURSLHGDGWULJRQRPpWULFDTXHVH
UHSUHVHQWDHQJUDGRV
• 7RGDVODVGHPiVIXQFLRQHVUHJUHVDQYDORUHVHQUDGLDQHV
• /DSURSLHGDGURWDFLyQUHJUHVDYDORUHVHQWUHîD
• 3RUORWDQWRKD\TXHFRQYHUWLUORVUDGLDQHVDJUDGRV\YLFHYHUVDFRQODV
IXQFLRQHVTXHVHYLHURQSUHYLDPHQWH
8VRVGHOVHQR\GHOFRVHQR
8VRVGHOVHQR\GHOFRVHQR
3DUDLOXVWUDUHVWDVIXQFLRQHVKDJDXQDUFKLYR)ODVK$FWLRQ6FULSWXQD
SHOtFXOD)ODVKFRQHOQRPEUHWDQTXHIOD
'LEXMHXQSHTXHxRWDQTXHGHïHQHOFHQWURGHOHVFHQDULR.
)LJXUD8QSHTXHxRWDQTXH
)LJXUD
• &UHH XQD FODVH GHO PLVPR QRPEUH FRQ PD\~VFXOD 6iOYHOD HQ OD
FDUSHWD PLV&ODVHV \ UHODFLyQHOD HQ HO 'RFXPHQW &ODVV GH OD SHOtFXOD
FRPRPLV&ODVHV7DQTXH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
-XHJRFRQXQWDQTXHTXHXWLOL]DPRYLPLHQWRVDQJXODGRV
/DFODVHSULQFLSDO
/DFODVHSULQFLSDO
package misClases{
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.KeyboardEvent;
public class Tanque extends MovieClip{
public function Tanque(){
}
}
}
(OPRWRUGHOWDQTXH
/DIXQFLyQWHFOD$EDMR
• +DJDODVEDQGHUDVGHFRQWUROSDUDHOPRYLPLHQWRGHOWDQTXHIXHUDGH
ODVIXQFLRQHVDUULEDGHODFODVHFRQVWUXFWRUD
• SULYDWHYDUL]TXLHUGDGHUHFKDDUULED%RROHDQ
• +DJD XQD IXQFLyQ WHFOD$EDMR SDUD ´HQFHQGHUµ ODV EDQGHUDV FRUUHV
SRQGLHQWHV
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
/DIXQFLyQWHFOD$UULED
• +DJDPRV OD IXQFLyQ TXH ´DSDJXHµ ODV EDQGHUDV FXDQGR HO XVXDULR
OHYDQWHODWHFOD
0RYHUHOWDQTXH
• $KRUDKDUHPRVODIXQFLyQTXHPRGLILFDUiODSRVLFLyQGHOWDQTXH\DVHD
TXHJLUHDODL]TXLHUGDGHUHFKDRDYDQFH(VWHWDQTXHQRWLHQHUHYHUVD
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
-XHJRFRQXQWDQTXHTXHXWLOL]DPRYLPLHQWRVDQJXODGRV
tanque.rotation += 5;
}
if (arriba) {
adelante();
}
}
$YDQ]DUHOWDQTXH
• /D IXQFLyQ DGHODQWH HV XQ SRFR PiV FRPSOHMD (Q HOOD HVWDPRV
FDOFXODQGR ODV FRRUGHQDGDV FRQ ODV IXQFLRQHV VHQR \ FRVHQR VHJ~Q
H[SOLFDPRV HQ OD SULPHUD SDUWH /D ´YHORFLGDGµ HVWi GDGD SRU XQ
Q~PHUR SRU HO FXDO PXOWLSOLFDPRV D ODV IXQFLRQHV WULJRQRPpWULFDV
UHIHULGDV
(MHFXWH OD SHOtFXOD \ PXHYD HO WDQTXH SDUD DGHODQWH R JtUHOR D OD L]TXLHUGD R D OD
GHUHFKD ,QFOXVR SXHGH KDFHU TXH VH PXHYD SUHVLRQDQGR VLPXOWiQHDPHQWH KDFLD
DGHODQWH\TXHJLUHHQDOJXQDGLUHFFLyQ
(MHPSORWDQTXHHVWiWLFR
$KRUD KDUHPRV TXH HO WDQTXH VH TXHGH HVWiWLFR D OD PLWDG GHO HVFHQDULR \ VyOR
JLUDUi VLJXLHQGR DO FXUVRU 3DUD HOOR XWLOL]DUHPRV RWUD LPSRUWDQWH IXQFLyQ WULJRQR
PpWULFDHODUFRWDQJHQWH
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
0RYHUVHDXQDSRVLFLyQ
• (Q HO HMHPSOR DQWHULRU FDOFXODPRV XQ iQJXOR \ EXVFDPRV OD GLVWDQFLD
HQ [\ \ SDUD PRYHUQRV (V GHFLU QRV GDEDQ XQ iQJXOR \ QRVRWURV
HQFRQWUiEDPRVXQDFRRUGHQDGDKDFLDGyQGHPRYHUQRV
• $KRUDVXSRQJDPRVTXHWHQHPRVXQSXQWRHVGHFLU[\\QHFHVLWDPRV
HQFRQWUDUHOiQJXOR
• 3DUDHOORQRVSRGHPRVDX[LOLDUFRQHOVLJXLHQWHGLDJUDPD
)LJXUD6HJPHQWRVHQWUHGRVSXQWRV
)LJXUD
(ODUFRWDQJHQWH
• 3DUD HQFRQWUDU HO iQJXOR GDGRV GRV SXQWRV GLJDPRV S [\ \ S
[\XWLOL]DUHPRVRWUDIXQFLyQWULJRQRPpWULFDOODPDGDDUFRWDQJHQWH
• 6L REVHUYDPRV HO WULiQJXOR \ VHSDUDPRV ORV HOHPHQWRV GH ORV GRV
SXQWRVSRGHPRVIRUPDUGRVVHJPHQWRVHQWUHORVSXQWRV
[[\\\
• &RQ HVWRV GRV YDORUHV HO DUFRWDQJHQWH LQYHUVR 0DWKDWDQ QRV
UHJUHVDUiXQiQJXORHQUDGLDQHV
• 8QD YH] FRQ HO iQJXOR HQ UDGLDQHV DSOLFDUtDPRV HO PLVPR DOJRULWPR
TXHHODQWHULRURVLPSOHPHQWHURWDUHOREMHWR
• &RQODVKHUUDPLHQWDVFHQWUHHOWDQTXHHQHOHVFHQDULR
• 4XLWH FRPR 'RFXPHQW &ODVV D OD FODVH 7DQTXH R PRGLItTXHOD FRPR
7DQTXH
• &UHHODVLJXLHQWHFODVHGHQWURGHODFDUSHWDPLV&ODVHV
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH
-XHJRFRQXQWDQTXHTXHXWLOL]DPRYLPLHQWRVDQJXODGRV
package misClases{
import flash.display.MovieClip;
import flash.events.Event;
+DJD XQ HYHQWR (17(5B)5$0( SDUD JLUDU HO REMHWR GHQWUR GH OD IXQFLyQ
FRQVWUXFWRUD
addEventListener(Event.ENTER_FRAME, sigueCursor);
/DIXQFLyQVLJXH&XUVRUGHEHUiKDFHUFXDWURFRVDV
&DOFXODUORVVHJPHQWRVHQWUHHOFHQWURGHHVFHQDULR\HOFXUVRUGHO
PRXVH
&DOFXODUHOiQJXORFRQHVRVVHJPHQWRV
&RQYHUWLUHOiQJXORGHUDGLDQHVDJUDGRV
5RWDUHOREMHWR
//Apuntar al cursor
tanque.rotation = grados;
}
$FWLRQ6FULSW²)UDQFLVFR$UFH $OIDRPHJD
$QLPDFLyQFRQ$FWLRQ6FULSW
$PDQHUDGHFRQFOXVLyQ
(QHVWH~OWLPRFDStWXORVHUHYLVyOD$QLPDFLyQFRQ$FWLRQ6FULSW
&RQRFH
• &yPRPRYHUXQREMHWRDXQDFRRUGHQDGDHVSHFtILFD
• &yPRPRYHUXQREMHWRDXQDGLUHFFLyQGHWHUPLQDGD
• &yPRPRYHUXQREMHWRHQIRUPDFLUFXODU
• /DRSHUDFLyQGH(DVLQJVXDYL]DGR
• /D$FHOHUDFLyQ
• <RWURVPRYLPLHQWRV
'HVDUUROOy XQ MXHJR FRPSOHWR FRQ XQ WDQTXH TXH XWLOL]D PRYLPLHQWRV
DQJXODGRVDOTXHGHVSXpVDQLPySDUDPRYHUORGHGLVWLQWDVIRUPDV
&RQ HVWR KHPRV DEDUFDGR OD SURJUDPDFLyQ FRQ $FWLRQ6FULSW GHVGH OR PiV EiVLFR
SDUD KDFHU XQD FODVH OD OLVWD GH YLVXDOL]DFLyQ HO QXHYR PRGHOR GH HYHQWRV OD
OHFWXUDGHDUFKLYRV;0/KDVWDWHUPLQDUHQODDQLPDFLyQSRUPHGLRGH$FWLRQ6FULSW
(OFDPLQRHVODUJR\HVSHUDPRVKDEHUVHUYLGRGHDOJR5HFXHUGHTXHORTXHQRVH
SUDFWLFDQRVHDSUHQGH
$OIDRPHJD $FWLRQ6FULSW²)UDQFLVFR$UFH