SlideShare una empresa de Scribd logo
1 de 18
Tunning Flex Apps
          Ivan Alvarez
     Senior RIA Developer
  ivan.alvarez@tidyslice.com
Sinópsis

• Open Source.
• Version 4 Beta.
• Alta adopción.
Por que Tunning?
Sinópsis

• Aplicaciones
 • Estables.
 • Rápidaz.
 • Bajo consumo de memoria y CPU.
Como funciona el Flash
       Player?
Memoria
• Reserva memoria del SO en grandes
  grupos(4096 bytes).


• Devuelve recursos al SO través del
  Garbage Collector.
Garbage Collector
• Conteo de Referencias.
 • Cada objeto tiene asociado un contador
    de referencias
 • Si un objeto tiene 0 referencias sera
    candidadato a eliminarse.
Garbage Collector
• Mark and Sweep
 • Se empieza desde el stage y se recorre la
    aplicación siguiendo las referencias
 • Se marcan lo objetos que se vayan
    encontrando
 • Los objetos que queden sin marcar serán
    candidatos a eliminarse.
Memory Leak

• Si no borramos las referencias a un objeto
  y éstas van creciendo, en nuestra aplicación
  se producirá un memory leak.
• La aplicación se vuelve mas lenta
  progresivamente hasta que se vuelve
  inoperante.
Elastic Racetrack
•   Frame Rate: es la cantidad máxima de veces por
    segundo, que el FP redibujará la pantalla.




•   Flex solo utiliza 2 Frames.

•   24 FPS es el default.
Mejores Prácticas
Event Listener
• Strong Listeners(removeEventListener)
• WeakListeners( Precaución)
• addEventListeners( dirección )
 • FlexGlobals.topLevelApplication(Flex 4)
 • Application.application(Flex 3)
Transferencia de Datos




• Uso de protocolo binario: AMF
Mejores Prácticas
• Objetos Tipados vs No Tipados
• Uso de Invalidate Methods
  invalidateDisplayList().
• Data Binding: Evitar utilizarlo en Data
  Transfer Objects.
• Reuso de objetos a traves de pools.
Módulos
• Solucion para escalar aplicaciones de gran
  tamaño.
• Caracteristica nativa para modularizar
  aplicaciones Flex
• Es un conjunto de clases no necesario en el
  momento de arranque de la aplicación.
• Carga dinámica de funcionalidades.
Modulos
• Reduce el tiempo de startUp.(solo se carga
  el shell).
• Uso de memoria inferior, ya que no está
  todo el código cargado.
• Fomento de la programación orientada a
  Interface -> polimorfismo -> mayor
  rendimiento (menor tiempo de
  instanciación debido a una cadena de
  herencia menor).
Módulos
•   Shell / Module

    •   Shell: Código necesario en startUp

    •   Module: Código necesario on-demand

    •   Shell carga modules bajo demanda

    •   Shell puede ofrecer una API de comunicación
        unidireccional / bidireccional con los módulos

    •   Todo basado entre Interfaces debido al
        funcionamiento nativo de los
        applicationDomains.
Demos

Más contenido relacionado

Destacado

Administrando Usuarios de Oracle Database. Z052 08
Administrando Usuarios de Oracle Database. Z052 08Administrando Usuarios de Oracle Database. Z052 08
Administrando Usuarios de Oracle Database. Z052 08Alexander Calderón
 
Database Administrator - Job Scope
Database Administrator - Job ScopeDatabase Administrator - Job Scope
Database Administrator - Job ScopeCacheWorks©
 
Intro sql y plsql
Intro sql y plsqlIntro sql y plsql
Intro sql y plsqlolsoftware
 
T12 ORACLE
T12 ORACLET12 ORACLE
T12 ORACLErmonago
 
Mantenimiento de la base de datos Oracle 11g
Mantenimiento de la base de datos Oracle 11gMantenimiento de la base de datos Oracle 11g
Mantenimiento de la base de datos Oracle 11gCarmen Soler
 

Destacado (7)

Presentacion PL/SQL
Presentacion PL/SQLPresentacion PL/SQL
Presentacion PL/SQL
 
Administrando Usuarios de Oracle Database. Z052 08
Administrando Usuarios de Oracle Database. Z052 08Administrando Usuarios de Oracle Database. Z052 08
Administrando Usuarios de Oracle Database. Z052 08
 
Database Administrator - Job Scope
Database Administrator - Job ScopeDatabase Administrator - Job Scope
Database Administrator - Job Scope
 
Intro sql y plsql
Intro sql y plsqlIntro sql y plsql
Intro sql y plsql
 
T12 ORACLE
T12 ORACLET12 ORACLE
T12 ORACLE
 
Examen Sandra U Israel Oracle
Examen Sandra U Israel OracleExamen Sandra U Israel Oracle
Examen Sandra U Israel Oracle
 
Mantenimiento de la base de datos Oracle 11g
Mantenimiento de la base de datos Oracle 11gMantenimiento de la base de datos Oracle 11g
Mantenimiento de la base de datos Oracle 11g
 

Similar a Tunning Flex Apps

Ingeniería Inversa en Android. Rooted Labs. Rooted CON 2012.
Ingeniería Inversa en Android.  Rooted Labs. Rooted CON 2012.Ingeniería Inversa en Android.  Rooted Labs. Rooted CON 2012.
Ingeniería Inversa en Android. Rooted Labs. Rooted CON 2012.Internet Security Auditors
 
Modelos de Concurrencia
Modelos de ConcurrenciaModelos de Concurrencia
Modelos de ConcurrenciaErick Camacho
 
Symfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony FrameworkSymfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony Frameworkexcedesoft
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaglfloresgilberto
 
Windows phonemarketplace sgce2012
Windows phonemarketplace sgce2012Windows phonemarketplace sgce2012
Windows phonemarketplace sgce2012Marcela Quiroga
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónjusto morales
 
Mejores practicas para pruebas, optimizacion y publicacion de apps en Windows...
Mejores practicas para pruebas, optimizacion y publicacion de apps en Windows...Mejores practicas para pruebas, optimizacion y publicacion de apps en Windows...
Mejores practicas para pruebas, optimizacion y publicacion de apps en Windows...Software Guru
 
Herramientas para la medicion de desempeño PHPConMX 2012
Herramientas para la medicion de desempeño  PHPConMX 2012Herramientas para la medicion de desempeño  PHPConMX 2012
Herramientas para la medicion de desempeño PHPConMX 2012Carlos Nacianceno
 
Softonic Labs - Web Escalable
Softonic Labs - Web EscalableSoftonic Labs - Web Escalable
Softonic Labs - Web EscalableAlex Puig
 
Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño IIkaolong
 
Software en la actualidad
Software en la actualidadSoftware en la actualidad
Software en la actualidadRaelyx Cordero
 
Desarrollo de Apps con la herramienta Phonegap
Desarrollo de Apps con la herramienta PhonegapDesarrollo de Apps con la herramienta Phonegap
Desarrollo de Apps con la herramienta PhonegapCongresoWeb
 
Why Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén CasadoWhy Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén CasadoBig Data Spain
 
Phonegap
PhonegapPhonegap
PhonegapTensor
 
SG 09 Patrones de Integración Empresarial Apache Camel
SG 09 Patrones de Integración Empresarial Apache CamelSG 09 Patrones de Integración Empresarial Apache Camel
SG 09 Patrones de Integración Empresarial Apache CamelDomingo Suarez Torres
 

Similar a Tunning Flex Apps (20)

Ingeniería Inversa en Android. Rooted Labs. Rooted CON 2012.
Ingeniería Inversa en Android.  Rooted Labs. Rooted CON 2012.Ingeniería Inversa en Android.  Rooted Labs. Rooted CON 2012.
Ingeniería Inversa en Android. Rooted Labs. Rooted CON 2012.
 
Presentacion cw2012
Presentacion cw2012Presentacion cw2012
Presentacion cw2012
 
Modelos de Concurrencia
Modelos de ConcurrenciaModelos de Concurrencia
Modelos de Concurrencia
 
Introduccion Java.ppt
Introduccion Java.pptIntroduccion Java.ppt
Introduccion Java.ppt
 
Symfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony FrameworkSymfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony Framework
 
Sesion dos azuay
Sesion dos azuaySesion dos azuay
Sesion dos azuay
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferencia
 
Windows phonemarketplace sgce2012
Windows phonemarketplace sgce2012Windows phonemarketplace sgce2012
Windows phonemarketplace sgce2012
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
 
Mejores practicas para pruebas, optimizacion y publicacion de apps en Windows...
Mejores practicas para pruebas, optimizacion y publicacion de apps en Windows...Mejores practicas para pruebas, optimizacion y publicacion de apps en Windows...
Mejores practicas para pruebas, optimizacion y publicacion de apps en Windows...
 
Herramientas para la medicion de desempeño PHPConMX 2012
Herramientas para la medicion de desempeño  PHPConMX 2012Herramientas para la medicion de desempeño  PHPConMX 2012
Herramientas para la medicion de desempeño PHPConMX 2012
 
Softonic Labs - Web Escalable
Softonic Labs - Web EscalableSoftonic Labs - Web Escalable
Softonic Labs - Web Escalable
 
Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño II
 
Software en la actualidad
Software en la actualidadSoftware en la actualidad
Software en la actualidad
 
Desarrollo de Apps con la herramienta Phonegap
Desarrollo de Apps con la herramienta PhonegapDesarrollo de Apps con la herramienta Phonegap
Desarrollo de Apps con la herramienta Phonegap
 
Expo aplicaciones offline
Expo aplicaciones offlineExpo aplicaciones offline
Expo aplicaciones offline
 
Why Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén CasadoWhy Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén Casado
 
todo sobre java
todo sobre javatodo sobre java
todo sobre java
 
Phonegap
PhonegapPhonegap
Phonegap
 
SG 09 Patrones de Integración Empresarial Apache Camel
SG 09 Patrones de Integración Empresarial Apache CamelSG 09 Patrones de Integración Empresarial Apache Camel
SG 09 Patrones de Integración Empresarial Apache Camel
 

Más de ivan alvarez frias

Más de ivan alvarez frias (8)

Flex apps for Android
Flex apps for AndroidFlex apps for Android
Flex apps for Android
 
Flex hero
Flex heroFlex hero
Flex hero
 
Taller spring flex
Taller spring flexTaller spring flex
Taller spring flex
 
SpringBlazeDS
SpringBlazeDSSpringBlazeDS
SpringBlazeDS
 
Introducción a Mate Flex Framework
Introducción a Mate Flex FrameworkIntroducción a Mate Flex Framework
Introducción a Mate Flex Framework
 
Flex en ambientes empresariales
Flex en ambientes empresarialesFlex en ambientes empresariales
Flex en ambientes empresariales
 
FlexORM-AdobeHispano
FlexORM-AdobeHispanoFlexORM-AdobeHispano
FlexORM-AdobeHispano
 
LiveData en Campus Party Mexico
LiveData en Campus Party MexicoLiveData en Campus Party Mexico
LiveData en Campus Party Mexico
 

Último

Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
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
 
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
 
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
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
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
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
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
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
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
 
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
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
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
 
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
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
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
 

Último (16)

Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
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
 
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
 
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)
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
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
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
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
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
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
 
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
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
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
 
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
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
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
 

Tunning Flex Apps

  • 1. Tunning Flex Apps Ivan Alvarez Senior RIA Developer ivan.alvarez@tidyslice.com
  • 2. Sinópsis • Open Source. • Version 4 Beta. • Alta adopción.
  • 4. Sinópsis • Aplicaciones • Estables. • Rápidaz. • Bajo consumo de memoria y CPU.
  • 5. Como funciona el Flash Player?
  • 6. Memoria • Reserva memoria del SO en grandes grupos(4096 bytes). • Devuelve recursos al SO través del Garbage Collector.
  • 7. Garbage Collector • Conteo de Referencias. • Cada objeto tiene asociado un contador de referencias • Si un objeto tiene 0 referencias sera candidadato a eliminarse.
  • 8. Garbage Collector • Mark and Sweep • Se empieza desde el stage y se recorre la aplicación siguiendo las referencias • Se marcan lo objetos que se vayan encontrando • Los objetos que queden sin marcar serán candidatos a eliminarse.
  • 9. Memory Leak • Si no borramos las referencias a un objeto y éstas van creciendo, en nuestra aplicación se producirá un memory leak. • La aplicación se vuelve mas lenta progresivamente hasta que se vuelve inoperante.
  • 10. Elastic Racetrack • Frame Rate: es la cantidad máxima de veces por segundo, que el FP redibujará la pantalla. • Flex solo utiliza 2 Frames. • 24 FPS es el default.
  • 12. Event Listener • Strong Listeners(removeEventListener) • WeakListeners( Precaución) • addEventListeners( dirección ) • FlexGlobals.topLevelApplication(Flex 4) • Application.application(Flex 3)
  • 13. Transferencia de Datos • Uso de protocolo binario: AMF
  • 14. Mejores Prácticas • Objetos Tipados vs No Tipados • Uso de Invalidate Methods invalidateDisplayList(). • Data Binding: Evitar utilizarlo en Data Transfer Objects. • Reuso de objetos a traves de pools.
  • 15. Módulos • Solucion para escalar aplicaciones de gran tamaño. • Caracteristica nativa para modularizar aplicaciones Flex • Es un conjunto de clases no necesario en el momento de arranque de la aplicación. • Carga dinámica de funcionalidades.
  • 16. Modulos • Reduce el tiempo de startUp.(solo se carga el shell). • Uso de memoria inferior, ya que no está todo el código cargado. • Fomento de la programación orientada a Interface -> polimorfismo -> mayor rendimiento (menor tiempo de instanciación debido a una cadena de herencia menor).
  • 17. Módulos • Shell / Module • Shell: Código necesario en startUp • Module: Código necesario on-demand • Shell carga modules bajo demanda • Shell puede ofrecer una API de comunicación unidireccional / bidireccional con los módulos • Todo basado entre Interfaces debido al funcionamiento nativo de los applicationDomains.
  • 18. Demos