SlideShare una empresa de Scribd logo
1 de 26
ActionScript 3.0
[ Temas Avanzados ]
Alberto González
Alberto González
• CTO de Activ (AATC).
• Consultor de Adobe Systems Inc. en México
enfocado en la plataforma para RIAs.
• Co – manager de RIActive (AUG).
• Instructor de diversas tecnologías de programación
para web.
Twitter ID >> @albertx
E-mail >> agonzalez@x-geom.net
Blog >> http://x-geom.net/blog
Temas a tratar
Bibliotecas ActionScript
Core ActionScript 3.0
(playerglobal.swc)
Flex libs
flex.swc
framework.swc
rpc.swc…
AIR libs
airglobal.swc
airframework.swc
Archivos .swc
• Es un empaquetado de clases (biblioteca de
clases)
• Se puede abrir con cualquier descompresor de
archivos (WinZip, WinRar, 7zip, etc.)
• Contiene los sig archivos:
– catalog.xml >> enlista el contenido del paquete
– .swf >> es quien contiene las clases
– [ assets >> archivos .png, .gif, .mp3, etc. ]
FLASH PLAYER
Arquitectura del Flash Player
Movie
Rendering Engine
Display List
ActionScript Virtual Machine
AVM 1 (AS1/ AS2) AVM 2 (AS3)
Events
GARBAGE COLLECTOR
Garbage Collector
• Es un proceso que se encarga de liberar la
memoria utilizada por objetos que ya no están
en uso en la aplicación.
• Un objecto puede considerarse como “que ya
no está en uso” cuando no existen referencias
hacia él desde otros objetos activos.
Garbage Collector
• Utiliza dos algoritmos para su funcionamiento.
Conteo de referencias
• Lleva un conteo de las
referencias que tiene cada
objeto
• Cuando un objeto tiene 0
referencias hacia el
entonces lo considera
para eliminarlo
Barrido de objetos
• Realiza un barrido por la
lista general de objetos
gráficos
• Cuando el/los objeto(s)
no pertenecen a dicha
lista y no tienen ninguna
referencia hacia ellos
entonces los considera
para su eliminación
Garbage Collector (Sweep)
http://www.adobe.com/devnet/flashplayer/articles/garbage_collection.html
A eliminar
Garbage Collector
• No tenemos forma “ejecutarlo” cuando
deseamos *
• Se ejecuta por sí solo cuando el sistema lo
requiere.
• Herramientas disponibles para manipularlo:
– Flex Profiling
– flash.system.System
• gc() // FlashPlayer >= 9.0.115 | Debugger
Otros métodos y propiedades de la
clase << System >>
• exit()
• pause()
• resume()
• totalMemory:uint
DEMO
“Profiling” de aplicación desde Flex Builder
Loader.unloadAndStop()
Problemas con la carga de elementos
gráficos externos (Loader)
• En ocasiones los sonidos no se detenían
cuando descargábamos un video u otro swf
con audio.
• El recolector de basura no podía eliminar la
película cargada incluso aunque ya no la
estuviéramos ocupando.
• Los video se seguían reproduciendo por
“detrás” aún cuando ya no se ocupaba el clip.
Loader.unloadAndStop()
• Disponible desde Flash Player 10
• Pasa por todo el árbol de “DisplayObjects” del swf cargado
realizando lo sig:
– Libera memoria de mapas de bits
– Detiene la ejecución de los sonidos
– Detiene la ejecución de los videos
– Detiene todas las animaciones de los MovieClips
– Elimina los “handlers” para los eventos enterFrame, frameConstructed,
exitFrame, activate, deactivate y eventos de stage de los elementos
internos
– Detiene cualquier carga de datos que se esté ejecutando desde los
elementos internos (FileReference, sockets, http, file:)
– Todas las instancias de la clase << Timer >> son detenidas
– Cámara y Micrófono son apagados
– El DisplayObject no se puede volver a mostrar en el Flash Player.
PARA AMANTES DE LA LINEA DE
TIEMPO…
Flujo de trabajo de Flash Player en un
frame
[Evento] enterFrame
Constructores
[Evento] frameConstructed
Scripts del frame
[Evento] exitFrame
Rendereo del Frame
Y ADEMÁS…
Tipos de datos estrictos
• Siempre que se pueda, utilizar el tipo de dato
correcto para las variables, constantes, etc. (se
ejecutan mucho más rápido)
• Trata de evitar el uso del tipo de dato “ * “
• Utilizar el modo de compilación “estricto”
Arreglos “monotipeados”
• A partir del Flash Player 10 se le incorporó la
clase << Vector >> a ActionScript.
• La clase << Vector >> nos permite trabajar con
arreglos especificando el tipo de dato que
tendrán los elementos internos.
• La clase << Vector >> trabaja mucho más rápido
que la clase << Array >>
• Contiene prácticamente los mismos métodos y
propiedades que la clase << Array >> ( push, pop,
join, reverse, map, …)
Clase << Vector >>
var v:Vector.<String> = new Vector.<String>();
v.push("Adobe");
v.push("Systems");
v.push("Incorporated");
v.reverse();
trace(v.join(" < ")); // Incorporated < Systems < Adobe
Menos clases dinámicas
• << MovieClip >> es la clase dinámica más
utilizada en proyectos Flash.
• Si no requerimos de la funcionalidad de línea
de tiempo utilizar mejor la clase << Sprite >>
Usa 3D en Flash (2.5D)
• A partir de Flash Player 10
• Completamente integrado al DisplayObject
• La propiedad Z no ordena únicamente dibuja
• Herramientas y clases para manejo de 3D
disponibles en Flash CS4
– 3D Rotation Tool
– Cámaras
– Vanishing Points
GRACIAS!!!
• Alberto González información de contacto
Twitter ID >> @albertx
E-mail >> agonzalez@x-geom.net
Blog >> http://x-geom.net/blog
• ¿ ANY QUESTIONS ?

Más contenido relacionado

La actualidad más candente

Instalacion de oracle database 10g. en ubuntu
Instalacion de oracle database 10g. en ubuntuInstalacion de oracle database 10g. en ubuntu
Instalacion de oracle database 10g. en ubuntuAlexis Madrigal Ortega
 
Introducción a los servidores Linux
Introducción a los servidores LinuxIntroducción a los servidores Linux
Introducción a los servidores LinuxOscar Gonzalez
 
Creación de entornos de desarrollo con Vagrant
Creación de entornos de desarrollo con VagrantCreación de entornos de desarrollo con Vagrant
Creación de entornos de desarrollo con VagrantCarlos Gimeno Yáñez
 
Vagrant para automatizar entornos DEV/PRO: VirtualBox y vSphere
Vagrant para automatizar entornos DEV/PRO: VirtualBox y vSphereVagrant para automatizar entornos DEV/PRO: VirtualBox y vSphere
Vagrant para automatizar entornos DEV/PRO: VirtualBox y vSphereJavier Jerónimo Suárez
 
Manual de instalacion_my_sql_sergio
Manual de instalacion_my_sql_sergioManual de instalacion_my_sql_sergio
Manual de instalacion_my_sql_sergioTecnologia
 
IdeaSpaceVR: como crear tu plataforma de realidad virtual
IdeaSpaceVR: como crear tu plataforma de realidad virtualIdeaSpaceVR: como crear tu plataforma de realidad virtual
IdeaSpaceVR: como crear tu plataforma de realidad virtualMizaelMartinez2
 
Instalación de MySQL en Linux Mint
Instalación de MySQL en Linux MintInstalación de MySQL en Linux Mint
Instalación de MySQL en Linux Mintkamui002
 
Las claves para optimizar la seguridad de tu sitio WordPress
Las claves para optimizar la seguridad de tu sitio WordPressLas claves para optimizar la seguridad de tu sitio WordPress
Las claves para optimizar la seguridad de tu sitio WordPressIñaki Arenaza
 
Gestionando tu infraestructura con Ansible
Gestionando tu infraestructura con Ansible Gestionando tu infraestructura con Ansible
Gestionando tu infraestructura con Ansible Moisés Maciá
 
Internet y navegador web
Internet y navegador webInternet y navegador web
Internet y navegador webKAREMDEDIOS
 

La actualidad más candente (17)

Semana 4 7 - Spring 4 y 5 Despliegue a producción
Semana 4   7 - Spring 4 y 5 Despliegue a producciónSemana 4   7 - Spring 4 y 5 Despliegue a producción
Semana 4 7 - Spring 4 y 5 Despliegue a producción
 
Instalacion de oracle database 10g. en ubuntu
Instalacion de oracle database 10g. en ubuntuInstalacion de oracle database 10g. en ubuntu
Instalacion de oracle database 10g. en ubuntu
 
Apuntes; Aptana Studio 3
Apuntes;  Aptana Studio 3Apuntes;  Aptana Studio 3
Apuntes; Aptana Studio 3
 
Introducción a los servidores Linux
Introducción a los servidores LinuxIntroducción a los servidores Linux
Introducción a los servidores Linux
 
Semana 7 Despliegue a producción ORACLE OCI
Semana 7   Despliegue a producción ORACLE OCISemana 7   Despliegue a producción ORACLE OCI
Semana 7 Despliegue a producción ORACLE OCI
 
Creación de entornos de desarrollo con Vagrant
Creación de entornos de desarrollo con VagrantCreación de entornos de desarrollo con Vagrant
Creación de entornos de desarrollo con Vagrant
 
Gestor de archivos Ajaxplorer
Gestor de archivos AjaxplorerGestor de archivos Ajaxplorer
Gestor de archivos Ajaxplorer
 
Curso Vagrant
Curso VagrantCurso Vagrant
Curso Vagrant
 
01 . play framework - instalacion
01 .  play framework - instalacion01 .  play framework - instalacion
01 . play framework - instalacion
 
Vagrant para automatizar entornos DEV/PRO: VirtualBox y vSphere
Vagrant para automatizar entornos DEV/PRO: VirtualBox y vSphereVagrant para automatizar entornos DEV/PRO: VirtualBox y vSphere
Vagrant para automatizar entornos DEV/PRO: VirtualBox y vSphere
 
Manual de instalacion_my_sql_sergio
Manual de instalacion_my_sql_sergioManual de instalacion_my_sql_sergio
Manual de instalacion_my_sql_sergio
 
IdeaSpaceVR: como crear tu plataforma de realidad virtual
IdeaSpaceVR: como crear tu plataforma de realidad virtualIdeaSpaceVR: como crear tu plataforma de realidad virtual
IdeaSpaceVR: como crear tu plataforma de realidad virtual
 
Instalación de MySQL en Linux Mint
Instalación de MySQL en Linux MintInstalación de MySQL en Linux Mint
Instalación de MySQL en Linux Mint
 
Las claves para optimizar la seguridad de tu sitio WordPress
Las claves para optimizar la seguridad de tu sitio WordPressLas claves para optimizar la seguridad de tu sitio WordPress
Las claves para optimizar la seguridad de tu sitio WordPress
 
Gestionando tu infraestructura con Ansible
Gestionando tu infraestructura con Ansible Gestionando tu infraestructura con Ansible
Gestionando tu infraestructura con Ansible
 
Internet y navegador web
Internet y navegador webInternet y navegador web
Internet y navegador web
 
Mysql Administracion
Mysql AdministracionMysql Administracion
Mysql Administracion
 

Destacado (7)

Flash Player security
Flash Player securityFlash Player security
Flash Player security
 
Tendencias de seguridad en pagos por eCommerce
Tendencias de seguridad en pagos por eCommerceTendencias de seguridad en pagos por eCommerce
Tendencias de seguridad en pagos por eCommerce
 
Desarrollo Plataforma Flash
Desarrollo Plataforma FlashDesarrollo Plataforma Flash
Desarrollo Plataforma Flash
 
Flash Player Internals
Flash Player InternalsFlash Player Internals
Flash Player Internals
 
Flash Platform
Flash PlatformFlash Platform
Flash Platform
 
Flash player security
Flash player securityFlash player security
Flash player security
 
Flash player 10.1
Flash player 10.1Flash player 10.1
Flash player 10.1
 

Similar a ActionScript 3.0 Temas Avanzados

13 instalación y configuración o3
13   instalación y configuración o313   instalación y configuración o3
13 instalación y configuración o3olayaipanaque
 
Framework GSM para Pruebas Automatizadas
Framework GSM para Pruebas AutomatizadasFramework GSM para Pruebas Automatizadas
Framework GSM para Pruebas AutomatizadasSoftware Guru
 
Desarrollo de temas de apariencia para Liferay 6.1
Desarrollo de temas de apariencia para Liferay 6.1Desarrollo de temas de apariencia para Liferay 6.1
Desarrollo de temas de apariencia para Liferay 6.1Julio Camarero
 
Información básica Java
Información básica JavaInformación básica Java
Información básica JavaFordBull2er
 
Mootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JSMootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JSIan Monge Pérez
 
Nachos sistema operativo
Nachos sistema operativoNachos sistema operativo
Nachos sistema operativomahc83
 
OVA DISEÑO ORACLE II Administración.pptx
OVA DISEÑO ORACLE II Administración.pptxOVA DISEÑO ORACLE II Administración.pptx
OVA DISEÑO ORACLE II Administración.pptxMARGOTHLORENAMARTINE
 
6/9 Curso JEE5, Soa, Web Services, ESB y XML
6/9 Curso JEE5, Soa, Web Services, ESB y XML6/9 Curso JEE5, Soa, Web Services, ESB y XML
6/9 Curso JEE5, Soa, Web Services, ESB y XMLJuan Carlos Rubio Pineda
 
Javier Marcos - Detección de amenazas a escala con osquery [rooted2019]
Javier Marcos - Detección de amenazas a escala con osquery [rooted2019]Javier Marcos - Detección de amenazas a escala con osquery [rooted2019]
Javier Marcos - Detección de amenazas a escala con osquery [rooted2019]RootedCON
 
Taller de Django betabeers
Taller de Django betabeersTaller de Django betabeers
Taller de Django betabeersbetabeers
 
4/9 Curso JEE5, Soa, Web Services, ESB y XML
4/9 Curso JEE5, Soa, Web Services, ESB y XML4/9 Curso JEE5, Soa, Web Services, ESB y XML
4/9 Curso JEE5, Soa, Web Services, ESB y XMLJuan Carlos Rubio Pineda
 
Sistema operativo unix
Sistema operativo unixSistema operativo unix
Sistema operativo unixJosé Chancoh
 
Entendiendo Yii - Flisol 2016
Entendiendo Yii - Flisol 2016Entendiendo Yii - Flisol 2016
Entendiendo Yii - Flisol 2016Plattinux
 
Notas de la version de MKVToolNix 79.0
 Notas de la version de MKVToolNix 79.0 Notas de la version de MKVToolNix 79.0
Notas de la version de MKVToolNix 79.0PILFRUTFELIZ
 
Introducción a OpenSolaris 2009.06 y a ZFS
Introducción a OpenSolaris 2009.06 y a ZFSIntroducción a OpenSolaris 2009.06 y a ZFS
Introducción a OpenSolaris 2009.06 y a ZFSjuandanielp
 

Similar a ActionScript 3.0 Temas Avanzados (20)

Dbdeployer
DbdeployerDbdeployer
Dbdeployer
 
13 instalación y configuración o3
13   instalación y configuración o313   instalación y configuración o3
13 instalación y configuración o3
 
Framework GSM para Pruebas Automatizadas
Framework GSM para Pruebas AutomatizadasFramework GSM para Pruebas Automatizadas
Framework GSM para Pruebas Automatizadas
 
Desarrollo de temas de apariencia para Liferay 6.1
Desarrollo de temas de apariencia para Liferay 6.1Desarrollo de temas de apariencia para Liferay 6.1
Desarrollo de temas de apariencia para Liferay 6.1
 
Intro to DTrace
Intro to DTraceIntro to DTrace
Intro to DTrace
 
Información básica Java
Información básica JavaInformación básica Java
Información básica Java
 
Mootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JSMootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JS
 
Curso avanzado de capacitación en DSpace
Curso avanzado de capacitación en DSpaceCurso avanzado de capacitación en DSpace
Curso avanzado de capacitación en DSpace
 
Nachos sistema operativo
Nachos sistema operativoNachos sistema operativo
Nachos sistema operativo
 
OVA DISEÑO ORACLE II Administración.pptx
OVA DISEÑO ORACLE II Administración.pptxOVA DISEÑO ORACLE II Administración.pptx
OVA DISEÑO ORACLE II Administración.pptx
 
6/9 Curso JEE5, Soa, Web Services, ESB y XML
6/9 Curso JEE5, Soa, Web Services, ESB y XML6/9 Curso JEE5, Soa, Web Services, ESB y XML
6/9 Curso JEE5, Soa, Web Services, ESB y XML
 
Javier Marcos - Detección de amenazas a escala con osquery [rooted2019]
Javier Marcos - Detección de amenazas a escala con osquery [rooted2019]Javier Marcos - Detección de amenazas a escala con osquery [rooted2019]
Javier Marcos - Detección de amenazas a escala con osquery [rooted2019]
 
Taller de Django betabeers
Taller de Django betabeersTaller de Django betabeers
Taller de Django betabeers
 
4/9 Curso JEE5, Soa, Web Services, ESB y XML
4/9 Curso JEE5, Soa, Web Services, ESB y XML4/9 Curso JEE5, Soa, Web Services, ESB y XML
4/9 Curso JEE5, Soa, Web Services, ESB y XML
 
Sistema operativo unix
Sistema operativo unixSistema operativo unix
Sistema operativo unix
 
Entendiendo Yii - Flisol 2016
Entendiendo Yii - Flisol 2016Entendiendo Yii - Flisol 2016
Entendiendo Yii - Flisol 2016
 
El Nuevo Internet Explorer 9
El Nuevo Internet Explorer 9El Nuevo Internet Explorer 9
El Nuevo Internet Explorer 9
 
Notas de la version de MKVToolNix 79.0
 Notas de la version de MKVToolNix 79.0 Notas de la version de MKVToolNix 79.0
Notas de la version de MKVToolNix 79.0
 
Introducción a ndk
Introducción a ndkIntroducción a ndk
Introducción a ndk
 
Introducción a OpenSolaris 2009.06 y a ZFS
Introducción a OpenSolaris 2009.06 y a ZFSIntroducción a OpenSolaris 2009.06 y a ZFS
Introducción a OpenSolaris 2009.06 y a ZFS
 

Último

ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 

Último (20)

ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 

ActionScript 3.0 Temas Avanzados

  • 1. ActionScript 3.0 [ Temas Avanzados ] Alberto González
  • 2. Alberto González • CTO de Activ (AATC). • Consultor de Adobe Systems Inc. en México enfocado en la plataforma para RIAs. • Co – manager de RIActive (AUG). • Instructor de diversas tecnologías de programación para web. Twitter ID >> @albertx E-mail >> agonzalez@x-geom.net Blog >> http://x-geom.net/blog
  • 4. Bibliotecas ActionScript Core ActionScript 3.0 (playerglobal.swc) Flex libs flex.swc framework.swc rpc.swc… AIR libs airglobal.swc airframework.swc
  • 5. Archivos .swc • Es un empaquetado de clases (biblioteca de clases) • Se puede abrir con cualquier descompresor de archivos (WinZip, WinRar, 7zip, etc.) • Contiene los sig archivos: – catalog.xml >> enlista el contenido del paquete – .swf >> es quien contiene las clases – [ assets >> archivos .png, .gif, .mp3, etc. ]
  • 7. Arquitectura del Flash Player Movie Rendering Engine Display List ActionScript Virtual Machine AVM 1 (AS1/ AS2) AVM 2 (AS3) Events
  • 9. Garbage Collector • Es un proceso que se encarga de liberar la memoria utilizada por objetos que ya no están en uso en la aplicación. • Un objecto puede considerarse como “que ya no está en uso” cuando no existen referencias hacia él desde otros objetos activos.
  • 10. Garbage Collector • Utiliza dos algoritmos para su funcionamiento. Conteo de referencias • Lleva un conteo de las referencias que tiene cada objeto • Cuando un objeto tiene 0 referencias hacia el entonces lo considera para eliminarlo Barrido de objetos • Realiza un barrido por la lista general de objetos gráficos • Cuando el/los objeto(s) no pertenecen a dicha lista y no tienen ninguna referencia hacia ellos entonces los considera para su eliminación
  • 12. Garbage Collector • No tenemos forma “ejecutarlo” cuando deseamos * • Se ejecuta por sí solo cuando el sistema lo requiere. • Herramientas disponibles para manipularlo: – Flex Profiling – flash.system.System • gc() // FlashPlayer >= 9.0.115 | Debugger
  • 13. Otros métodos y propiedades de la clase << System >> • exit() • pause() • resume() • totalMemory:uint
  • 16. Problemas con la carga de elementos gráficos externos (Loader) • En ocasiones los sonidos no se detenían cuando descargábamos un video u otro swf con audio. • El recolector de basura no podía eliminar la película cargada incluso aunque ya no la estuviéramos ocupando. • Los video se seguían reproduciendo por “detrás” aún cuando ya no se ocupaba el clip.
  • 17. Loader.unloadAndStop() • Disponible desde Flash Player 10 • Pasa por todo el árbol de “DisplayObjects” del swf cargado realizando lo sig: – Libera memoria de mapas de bits – Detiene la ejecución de los sonidos – Detiene la ejecución de los videos – Detiene todas las animaciones de los MovieClips – Elimina los “handlers” para los eventos enterFrame, frameConstructed, exitFrame, activate, deactivate y eventos de stage de los elementos internos – Detiene cualquier carga de datos que se esté ejecutando desde los elementos internos (FileReference, sockets, http, file:) – Todas las instancias de la clase << Timer >> son detenidas – Cámara y Micrófono son apagados – El DisplayObject no se puede volver a mostrar en el Flash Player.
  • 18. PARA AMANTES DE LA LINEA DE TIEMPO…
  • 19. Flujo de trabajo de Flash Player en un frame [Evento] enterFrame Constructores [Evento] frameConstructed Scripts del frame [Evento] exitFrame Rendereo del Frame
  • 21. Tipos de datos estrictos • Siempre que se pueda, utilizar el tipo de dato correcto para las variables, constantes, etc. (se ejecutan mucho más rápido) • Trata de evitar el uso del tipo de dato “ * “ • Utilizar el modo de compilación “estricto”
  • 22. Arreglos “monotipeados” • A partir del Flash Player 10 se le incorporó la clase << Vector >> a ActionScript. • La clase << Vector >> nos permite trabajar con arreglos especificando el tipo de dato que tendrán los elementos internos. • La clase << Vector >> trabaja mucho más rápido que la clase << Array >> • Contiene prácticamente los mismos métodos y propiedades que la clase << Array >> ( push, pop, join, reverse, map, …)
  • 23. Clase << Vector >> var v:Vector.<String> = new Vector.<String>(); v.push("Adobe"); v.push("Systems"); v.push("Incorporated"); v.reverse(); trace(v.join(" < ")); // Incorporated < Systems < Adobe
  • 24. Menos clases dinámicas • << MovieClip >> es la clase dinámica más utilizada en proyectos Flash. • Si no requerimos de la funcionalidad de línea de tiempo utilizar mejor la clase << Sprite >>
  • 25. Usa 3D en Flash (2.5D) • A partir de Flash Player 10 • Completamente integrado al DisplayObject • La propiedad Z no ordena únicamente dibuja • Herramientas y clases para manejo de 3D disponibles en Flash CS4 – 3D Rotation Tool – Cámaras – Vanishing Points
  • 26. GRACIAS!!! • Alberto González información de contacto Twitter ID >> @albertx E-mail >> agonzalez@x-geom.net Blog >> http://x-geom.net/blog • ¿ ANY QUESTIONS ?