SlideShare una empresa de Scribd logo
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

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
Richard Eliseo Mendoza Gafaro
 
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
Alexis Madrigal Ortega
 
Apuntes; Aptana Studio 3
Apuntes;  Aptana Studio 3Apuntes;  Aptana Studio 3
Apuntes; Aptana Studio 3
Francisco Javier Arce Anguiano
 
Introducción a los servidores Linux
Introducción a los servidores LinuxIntroducción a los servidores Linux
Introducción a los servidores Linux
Oscar Gonzalez
 
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
Richard Eliseo Mendoza Gafaro
 
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
Carlos Gimeno Yáñez
 
Gestor de archivos Ajaxplorer
Gestor de archivos AjaxplorerGestor de archivos Ajaxplorer
Gestor de archivos Ajaxplorer
Cristian Martin Llamas
 
Curso Vagrant
Curso VagrantCurso Vagrant
01 . play framework - instalacion
01 .  play framework - instalacion01 .  play framework - instalacion
01 . play framework - instalacion
christian enrique portilla pauca
 
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
Javier 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_sergio
Tecnologia
 
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
MizaelMartinez2
 
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
kamui002
 
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
Iñ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 web
KAREMDEDIOS
 
Mysql Administracion
Mysql AdministracionMysql Administracion
Mysql Administracion
Miguel Angel Nieto
 

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

Flash Player security
Flash Player securityFlash Player security
Flash Player security
Alberto González
 
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
Alberto González
 
Desarrollo Plataforma Flash
Desarrollo Plataforma FlashDesarrollo Plataforma Flash
Desarrollo Plataforma Flash
Alberto González
 
Flash Player Internals
Flash Player InternalsFlash Player Internals
Flash Player Internals
Alberto González
 
Flash Platform
Flash PlatformFlash Platform
Flash Platform
Alberto González
 
Flash player security
Flash player securityFlash player security
Flash player security
Alberto González
 
Flash player 10.1
Flash player 10.1Flash player 10.1
Flash player 10.1
Alberto González
 

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 Advanced Action Script 3.0

Dbdeployer
DbdeployerDbdeployer
Dbdeployer
Giuseppe Maxia
 
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
olayaipanaque
 
Framework GSM para Pruebas Automatizadas
Framework GSM para Pruebas AutomatizadasFramework GSM para Pruebas Automatizadas
Framework GSM para Pruebas Automatizadas
Software 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.1
Julio Camarero
 
Intro to DTrace
Intro to DTraceIntro to DTrace
Intro to DTrace
Iban Nieto Castillero
 
Información básica Java
Información básica JavaInformación básica Java
Información básica Java
FordBull2er
 
Mootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JSMootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JS
Ian Monge Pérez
 
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
Servicio de Difusión de la Creación Intelectual (SEDICI)
 
Nachos sistema operativo
Nachos sistema operativoNachos sistema operativo
Nachos sistema operativo
mahc83
 
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
MARGOTHLORENAMARTINE
 
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
Juan 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 betabeers
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
Juan Carlos Rubio Pineda
 
Sistema operativo unix
Sistema operativo unixSistema operativo unix
Sistema operativo unix
José Chancoh
 
Entendiendo Yii - Flisol 2016
Entendiendo Yii - Flisol 2016Entendiendo Yii - Flisol 2016
Entendiendo Yii - Flisol 2016
Plattinux
 
El Nuevo Internet Explorer 9
El Nuevo Internet Explorer 9El Nuevo Internet Explorer 9
El Nuevo Internet Explorer 9
Eventos Creativos
 
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
PILFRUTFELIZ
 
Introducción a ndk
Introducción a ndkIntroducción a ndk
Introducción a ndk
Hector Alvarez
 
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
juandanielp
 

Similar a Advanced Action Script 3.0 (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

Presentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre bloggerPresentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre blogger
larapalaciosmonzon28
 
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
AMADO SALVADOR
 
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaCatalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
AMADO SALVADOR
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Festibity
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
mantenimientocarbra6
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
gisellearanguren1
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
NajwaNimri1
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
MiguelAtencio10
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
julio05042006
 
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialCatalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
AMADO SALVADOR
 
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
AMADO SALVADOR
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
doctorsoluciones34
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
larapalaciosmonzon28
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
evelinglilibethpeafi
 
IA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticulturaIA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticultura
Miguel Rebollo
 
Manual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputosManual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputos
cbtechchihuahua
 
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdfProjecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Festibity
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
NicandroMartinez2
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Festibity
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
YaniEscobar2
 

Último (20)

Presentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre bloggerPresentación de Tic en educación y sobre blogger
Presentación de Tic en educación y sobre blogger
 
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
 
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaCatalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
 
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialCatalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
 
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
 
IA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticulturaIA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticultura
 
Manual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputosManual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputos
 
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdfProjecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
 

Advanced Action Script 3.0

  • 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 ?