SlideShare a Scribd company logo
1 of 104
Download to read offline
A Flex 4 Component’s life cycle




             Mrinal Wadhwa
       http://www.mrinalwadhwa.com
What is a life cycle?
Why does a Flex component
    need a life cycle?
Flex applications run in the
       Flash Player
What Flex can do is a subset of what
the Flash Player can do, not a superset.
so to understand flex components better, lets take a
    deeper look at how the flash player works ...
Frames
Frames
everything is done in frames ...
Frame Rate
the number of frames processed per second (fps)
Frame Rate
you can suggest the player a frame rate you
      would like your swf to have ...
Frame Rate
[SWF(width=”800”,height=”600”,frameRate=”60”)]

                      OR
             stage.frameRate = 60;
                      OR
       <s:Application frameRate=”60” ... >
Frame Rate
lets look at some code to see what the player
          does with this suggestion ...


                 view code
Frame Rate
some observations from our experiment ....
Frame Rate
the player tries its best to maintain the suggested
   frame rate, but there are no guarantees ...
Frame Rate
the actual framerate achieved may be lower or higher
              than what we suggested ...
Frame Rate
browsers can force a lower framerate on the
              flash player ...
Frame Rate
In Firefox and Safari, frame rate falls to about 10 if
      the Tab running the swf is out of focus ...
Frame Rate
In Safari if window is minimized,
    framerate falls to zero ..
now lets take a deeper look at what happens inside
                   each frame ..
now lets take a deeper look at what happens inside
                   each frame ..




      lets look at some more test code first ..


                    view code
code execution             rendering




                 1 frame




                               the length of the track represents the time taken by this frame
what we saw in our experiment ..




code execution             rendering




                 1 frame




                               the length of the track represents the time taken by this frame
what we saw in our experiment ..




code execution             rendering               heavy code execution




                 1 frame                                1 frame




                               the length of the track represents the time taken by this frame
what we saw in our experiment ..




code execution             rendering               heavy code execution                          heavy rendering




                 1 frame                                1 frame                                     1 frame




                               the length of the track represents the time taken by this frame
Ted Patrick called this ...




code execution             rendering               heavy code execution                          heavy rendering




                 1 frame                                1 frame                                     1 frame




                               the length of the track represents the time taken by this frame
The Elastic Racetrack


code execution             rendering               heavy code execution                          heavy rendering




                 1 frame                                1 frame                                     1 frame




                               the length of the track represents the time taken by this frame
Sean Christmann did some more research on this ...
The Marshal
he proposed AVM2 is controlled by something he
             called the Marshal ..
The Marshal
the marshal is responsible for carving out time
                   slices ...
The Marshal
    the duration of a slice can vary based on your
                   OS,browser etc.

just for our discussion lets assume a slice is 20ms long ..
A Marshaled Slice
A Marshaled Slice




but all these actions may not happen on each slice ...
A Marshaled Slice




Flash Player’s Event.RENDER event is fired at this point
A Marshaled Slice




invalidate action and render action only happen in
             the last slice of a frame ..
lets experiment with some more code ...



              view code
so from our experiment the marshal does seem
        to be carving out 20ms slices ...
with 20ms slices ...
with 20ms slices ...




code execution
with 20ms slices ...




                       render
with 20ms slices ...
with 20ms slices ...




code execution
with 20ms slices ...




render
with 20ms slices ...
the marshal pre calculates the number of slices ...
long running code execution or render segments can
         extend a given slice beyond 20ms

 this may or may not cause the the duration of the
               frame to increase ...
A swfs actual framerate won’t exceed the Marshals
      rate defined for the player instance ...
Code can be executed more often then the compiled
                  framerate ...

 i.e in a single frame calculation can happen many
 times but rendering happens only once at the end
Code can be executed more often then the compiled
                  framerate ...

 i.e in a single frame calculation can happen many
 times but rendering happens only once at the end




              This is very significant
now lets come back to our original question ...
Why does a Flex component
    need a life cycle?
Since code can execute more often than rendering ..
 you could potentially do calculations that have no
                      effect ...
for example, lets say you change the width of a
                 component ...
this will cause the component, its container
        (and its containers container, so on ...),
 its surrounding components etc. to recalculate size
and positioning of themselves and all their children ..

         i.e a lot of calculation will happen.
now in the next code segment you change width of
 your component again .... all that calculation will
                 happen again ...

now since code segments can execute more times
            than render segments ...
your first set of calculations for change in width could
                potentially be useless ..
... this is the main reason a component needs a
                      life cycle


             performance
so what is the life cycle of a component ...
BIRTH
BIRTH




LIFE
BIRTH




 LIFE




DEATH
Construction

  Addition       BIRTH


Initialization




                  LIFE




                 DEATH
Construction

  Addition       BIRTH


Initialization


Invalidation
                  LIFE
 Validation

  Update


                 DEATH
Construction

  Addition       BIRTH


Initialization


Invalidation
                  LIFE
 Validation

  Update


  Removal        DEATH
lets setup some breakpoints and walk
  through some code as we look at
        each of these phases ..
Construction

 var b:MyButton = new MyButton();




• not much happens in this phase
• thats good because Constructors are not JIT
• the component is given a name in FlexSprite
• event listeners are added
Addition

                             this.addChild(b);




• calls addingChild(), $addChild() and childAdded()
• a lot happens in addingChild(),
• child’s parent and document properties are set etc.
• $addChild() is the flash player method that adds the component to the display list
• childAdded() calls the initialize() method of the child if not initialized
Initialization

      initialize();   // called by the parent’s childAdded




• fires FlexEvent.PREINITIALIZE when it starts
• calls createChildren() .. where children of this component
  are created and added to itself
• fires FlexEvent.INITIALIZED when it ends
Construction

   Addition                     BIRTH


  Initialization


a component has been born ...
Construction

  Addition       BIRTH


Initialization




                 LIFE
Construction

  Addition       BIRTH


Initialization


Invalidation
                 LIFE
 Validation

  Update
Invalidation
               LIFE
Validation

  Update
Invalidation
 invalidateProperties

     invalidateSize

 invalidateDisplayList




 Event.RENDER

                         LIFE
     Validation
  commitProperties

       measure

layoutChrome(optional)

   updateDisplayList




      Update
Invalidation/Validation cycle (Life)

this is how the framework defers calculations to the end of the
                 frame, just before rendering ...
Invalidation/Validation cycle (Life)

            when a property changes...

    •its new value is stored in a temp variable,
    •a dirty flag is set,
    •and invalidate methods are called.
Invalidation/Validation cycle (Life)

the LayoutManager keeps track of invalidated components
Invalidation/Validation cycle (Life)

the invalidation methods tell the LayoutManager that a component is
                       now in an invalid state
Invalidation/Validation cycle (Life)

LayoutManger listens for Event.RENDER and calls corresponding
       validate methods when the render event occurs
Invalidation/Validation cycle (Life)

 invalidateProperties    commitProperties

 invalidateSize          measure

 invalidateDisplayList   updateDisplayList
Invalidation/Validation cycle (Life)

   finally an UPDATE_COMPLETE event is dispatched
Construction

  Addition       BIRTH


Initialization


Invalidation
                 LIFE
 Validation

  Update
Construction

  Addition       BIRTH


Initialization


Invalidation
                  LIFE
 Validation

  Update


                 DEATH
Construction

  Addition       BIRTH


Initialization


Invalidation
                  LIFE
 Validation

  Update


  Removal        DEATH
Removal (death)

             this.removeChild(b);




• $removeChild() is the flash player method that
  removes the component from the display list
All that we saw till now has been the same
      since Flex 2 and Flash Player 9 ..




       maybe even before that, I’m not sure
So what has changed in
       Flex 4?
not much ....
not much ....



at least from a life cycle perspective ..
Flex 3 Component Model (Halo)
Flex 4 Component Model (Spark)


Flex 3 Component Model (Halo)
Flex 4 Component Model (Spark)


Flex 3 Component Model (Halo)


  Spark is built on top of Halo ....
Flex 4 Component Model (Spark)


    Flex 3 Component Model (Halo)


SkinnableComponent extends UIComponent ...
SkinnableComponent lives the same
           life cycle ...
the Skin is a child to the component
    and lives its own life cycle ...
lets step through some more code ...
some observations ...
createChildren() of SkinnableComponent calls
    validateSkinState() which in turn calls
               attachSkin() ...
attachSkin() creates the skin and adds it as a
                   child ...

which in turn kicks off the life cycle of the skin
attachSkin() also calls findSkinParts() which looks
though the children of the skin and populates our
         declared static part references
attachSkin() also calls findSkinParts() which looks
though the children of the skin and populates our
         declared static part references

findSkinParts() calls partAdded() for all the static
                   parts it finds
attachSkin() also calls findSkinParts() which looks
though the children of the skin and populates our
         declared static part references

findSkinParts() calls partAdded() for all the static
                   parts it finds

  also throws an exception if it does not find a
                 required part
at a later time, when you create a dynamic part
       using createDynamicPartInstance()

    that method calls partAdded() as well
?
Mrinal Wadhwa


http://www.mrinalwadhwa.com
  http://twitter.com/mrinal

More Related Content

Viewers also liked

CategoríA Informativa
CategoríA InformativaCategoríA Informativa
CategoríA Informativatat
 
Sessió 3
Sessió 3Sessió 3
Sessió 3iesrb4
 
Context & Connections: Designing a Vocab App
Context & Connections: Designing a Vocab AppContext & Connections: Designing a Vocab App
Context & Connections: Designing a Vocab AppJoshua Underwood
 
Presentation sig2015
Presentation sig2015Presentation sig2015
Presentation sig2015TeamDev
 
solar system_yasmine
solar system_yasminesolar system_yasmine
solar system_yasmineebando1975
 
User Experience Utopia (Ad Club Seattle)
User Experience Utopia (Ad Club Seattle)User Experience Utopia (Ad Club Seattle)
User Experience Utopia (Ad Club Seattle)Nick Finck
 
Moodle Moot NZ 13 opening keynote
Moodle Moot NZ 13 opening keynoteMoodle Moot NZ 13 opening keynote
Moodle Moot NZ 13 opening keynoteNigel Robertson
 
Top Reasons To Recycle
Top Reasons To RecycleTop Reasons To Recycle
Top Reasons To RecycleJAVI RUI
 
Ch21 OS
Ch21 OSCh21 OS
Ch21 OSC.U
 
Ch10 OS
Ch10 OSCh10 OS
Ch10 OSC.U
 
Is This Clickable? - Change how you look at the web
Is This Clickable? - Change how you look at the webIs This Clickable? - Change how you look at the web
Is This Clickable? - Change how you look at the webccalnan
 
Livinbrand 2016 - Anna Židlická, PEM Communication: Firemní akce a jejich dop...
Livinbrand 2016 - Anna Židlická, PEM Communication: Firemní akce a jejich dop...Livinbrand 2016 - Anna Židlická, PEM Communication: Firemní akce a jejich dop...
Livinbrand 2016 - Anna Židlická, PEM Communication: Firemní akce a jejich dop...Ondřej Rudolf
 
Indigenous wisdom and science gaugau tavana
Indigenous wisdom and science gaugau tavanaIndigenous wisdom and science gaugau tavana
Indigenous wisdom and science gaugau tavanakathygallucci
 
Introduction to Rich Internet Applications, Flex, AIR
Introduction to Rich Internet Applications, Flex, AIRIntroduction to Rich Internet Applications, Flex, AIR
Introduction to Rich Internet Applications, Flex, AIRMrinal Wadhwa
 
User Testing Tactics
User Testing TacticsUser Testing Tactics
User Testing TacticsCindy Alvarez
 
Tales of an Open Scholar
Tales of an Open ScholarTales of an Open Scholar
Tales of an Open Scholarethan.watrall
 
How content strategy fits into the user experience
How content strategy fits into the user experienceHow content strategy fits into the user experience
How content strategy fits into the user experienceNick Finck
 

Viewers also liked (20)

CategoríA Informativa
CategoríA InformativaCategoríA Informativa
CategoríA Informativa
 
Sessió 3
Sessió 3Sessió 3
Sessió 3
 
Context & Connections: Designing a Vocab App
Context & Connections: Designing a Vocab AppContext & Connections: Designing a Vocab App
Context & Connections: Designing a Vocab App
 
Getting To "Paid"
Getting To "Paid"Getting To "Paid"
Getting To "Paid"
 
Presentation sig2015
Presentation sig2015Presentation sig2015
Presentation sig2015
 
solar system_yasmine
solar system_yasminesolar system_yasmine
solar system_yasmine
 
User Experience Utopia (Ad Club Seattle)
User Experience Utopia (Ad Club Seattle)User Experience Utopia (Ad Club Seattle)
User Experience Utopia (Ad Club Seattle)
 
Moodle Moot NZ 13 opening keynote
Moodle Moot NZ 13 opening keynoteMoodle Moot NZ 13 opening keynote
Moodle Moot NZ 13 opening keynote
 
Top Reasons To Recycle
Top Reasons To RecycleTop Reasons To Recycle
Top Reasons To Recycle
 
Ch21 OS
Ch21 OSCh21 OS
Ch21 OS
 
Innovation
InnovationInnovation
Innovation
 
Ch10 OS
Ch10 OSCh10 OS
Ch10 OS
 
Is This Clickable? - Change how you look at the web
Is This Clickable? - Change how you look at the webIs This Clickable? - Change how you look at the web
Is This Clickable? - Change how you look at the web
 
Livinbrand 2016 - Anna Židlická, PEM Communication: Firemní akce a jejich dop...
Livinbrand 2016 - Anna Židlická, PEM Communication: Firemní akce a jejich dop...Livinbrand 2016 - Anna Židlická, PEM Communication: Firemní akce a jejich dop...
Livinbrand 2016 - Anna Židlická, PEM Communication: Firemní akce a jejich dop...
 
Indigenous wisdom and science gaugau tavana
Indigenous wisdom and science gaugau tavanaIndigenous wisdom and science gaugau tavana
Indigenous wisdom and science gaugau tavana
 
Mobile UX
Mobile UXMobile UX
Mobile UX
 
Introduction to Rich Internet Applications, Flex, AIR
Introduction to Rich Internet Applications, Flex, AIRIntroduction to Rich Internet Applications, Flex, AIR
Introduction to Rich Internet Applications, Flex, AIR
 
User Testing Tactics
User Testing TacticsUser Testing Tactics
User Testing Tactics
 
Tales of an Open Scholar
Tales of an Open ScholarTales of an Open Scholar
Tales of an Open Scholar
 
How content strategy fits into the user experience
How content strategy fits into the user experienceHow content strategy fits into the user experience
How content strategy fits into the user experience
 

Similar to Flex 4 Component Lifecycle

Rocket Fuelled Cucumbers
Rocket Fuelled CucumbersRocket Fuelled Cucumbers
Rocket Fuelled CucumbersJoseph Wilk
 
Flex4 Component Lifecycle
Flex4 Component LifecycleFlex4 Component Lifecycle
Flex4 Component LifecycleEffective
 
Flex4 Component Lifecycle
Flex4 Component LifecycleFlex4 Component Lifecycle
Flex4 Component LifecycleEffectiveUI
 
How to tune Kafka® for production
How to tune Kafka® for productionHow to tune Kafka® for production
How to tune Kafka® for productionconfluent
 
360|Flex Greenthreading In Flex
360|Flex Greenthreading In Flex360|Flex Greenthreading In Flex
360|Flex Greenthreading In FlexHuyen Tue Dao
 
Making Security Invisible
Making Security InvisibleMaking Security Invisible
Making Security InvisibleJ On The Beach
 
Augmented Reality Video Playlist - Computer Vision Project
Augmented Reality Video Playlist - Computer Vision ProjectAugmented Reality Video Playlist - Computer Vision Project
Augmented Reality Video Playlist - Computer Vision ProjectSurya Chandra
 
Know your platform. 7 things every scala developer should know about jvm
Know your platform. 7 things every scala developer should know about jvmKnow your platform. 7 things every scala developer should know about jvm
Know your platform. 7 things every scala developer should know about jvmPawel Szulc
 
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...apidays
 
How we optimized our Game - Jake & Tess' Finding Monsters Adventure
How we optimized our Game - Jake & Tess' Finding Monsters AdventureHow we optimized our Game - Jake & Tess' Finding Monsters Adventure
How we optimized our Game - Jake & Tess' Finding Monsters AdventureFelipe Lira
 
Working Well Together: How to Keep High-end Game Development Teams Productive
Working Well Together: How to Keep High-end Game Development Teams ProductiveWorking Well Together: How to Keep High-end Game Development Teams Productive
Working Well Together: How to Keep High-end Game Development Teams ProductivePerforce
 
Introduction to Actor Model and Akka
Introduction to Actor Model and AkkaIntroduction to Actor Model and Akka
Introduction to Actor Model and AkkaYung-Lin Ho
 
DevoxxUK: Is your profiler speaking the same language as you?
DevoxxUK: Is your profiler speaking the same language as you?DevoxxUK: Is your profiler speaking the same language as you?
DevoxxUK: Is your profiler speaking the same language as you?Simon Maple
 
Devoxx PL: Is your profiler speaking the same language as you?
Devoxx PL: Is your profiler speaking the same language as you?Devoxx PL: Is your profiler speaking the same language as you?
Devoxx PL: Is your profiler speaking the same language as you?Simon Maple
 
Devoxx PL: Is your profiler speaking the same language as you?
Devoxx PL: Is your profiler speaking the same language as you?Devoxx PL: Is your profiler speaking the same language as you?
Devoxx PL: Is your profiler speaking the same language as you?Simon Maple
 
ITB2019 Real World Scenarios for Modern CFML - Nolan Erck
ITB2019 Real World Scenarios for Modern CFML - Nolan ErckITB2019 Real World Scenarios for Modern CFML - Nolan Erck
ITB2019 Real World Scenarios for Modern CFML - Nolan ErckOrtus Solutions, Corp
 
Gdc09 Minigames
Gdc09 MinigamesGdc09 Minigames
Gdc09 MinigamesSusan Gold
 
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, DockerUnder the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, DockerDocker, Inc.
 
FrameGraph: Extensible Rendering Architecture in Frostbite
FrameGraph: Extensible Rendering Architecture in FrostbiteFrameGraph: Extensible Rendering Architecture in Frostbite
FrameGraph: Extensible Rendering Architecture in FrostbiteElectronic Arts / DICE
 

Similar to Flex 4 Component Lifecycle (20)

Rocket Fuelled Cucumbers
Rocket Fuelled CucumbersRocket Fuelled Cucumbers
Rocket Fuelled Cucumbers
 
Flex4 Component Lifecycle
Flex4 Component LifecycleFlex4 Component Lifecycle
Flex4 Component Lifecycle
 
Flex4 Component Lifecycle
Flex4 Component LifecycleFlex4 Component Lifecycle
Flex4 Component Lifecycle
 
How to tune Kafka® for production
How to tune Kafka® for productionHow to tune Kafka® for production
How to tune Kafka® for production
 
360|Flex Greenthreading In Flex
360|Flex Greenthreading In Flex360|Flex Greenthreading In Flex
360|Flex Greenthreading In Flex
 
Making Security Invisible
Making Security InvisibleMaking Security Invisible
Making Security Invisible
 
Windblade
WindbladeWindblade
Windblade
 
Augmented Reality Video Playlist - Computer Vision Project
Augmented Reality Video Playlist - Computer Vision ProjectAugmented Reality Video Playlist - Computer Vision Project
Augmented Reality Video Playlist - Computer Vision Project
 
Know your platform. 7 things every scala developer should know about jvm
Know your platform. 7 things every scala developer should know about jvmKnow your platform. 7 things every scala developer should know about jvm
Know your platform. 7 things every scala developer should know about jvm
 
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...
 
How we optimized our Game - Jake & Tess' Finding Monsters Adventure
How we optimized our Game - Jake & Tess' Finding Monsters AdventureHow we optimized our Game - Jake & Tess' Finding Monsters Adventure
How we optimized our Game - Jake & Tess' Finding Monsters Adventure
 
Working Well Together: How to Keep High-end Game Development Teams Productive
Working Well Together: How to Keep High-end Game Development Teams ProductiveWorking Well Together: How to Keep High-end Game Development Teams Productive
Working Well Together: How to Keep High-end Game Development Teams Productive
 
Introduction to Actor Model and Akka
Introduction to Actor Model and AkkaIntroduction to Actor Model and Akka
Introduction to Actor Model and Akka
 
DevoxxUK: Is your profiler speaking the same language as you?
DevoxxUK: Is your profiler speaking the same language as you?DevoxxUK: Is your profiler speaking the same language as you?
DevoxxUK: Is your profiler speaking the same language as you?
 
Devoxx PL: Is your profiler speaking the same language as you?
Devoxx PL: Is your profiler speaking the same language as you?Devoxx PL: Is your profiler speaking the same language as you?
Devoxx PL: Is your profiler speaking the same language as you?
 
Devoxx PL: Is your profiler speaking the same language as you?
Devoxx PL: Is your profiler speaking the same language as you?Devoxx PL: Is your profiler speaking the same language as you?
Devoxx PL: Is your profiler speaking the same language as you?
 
ITB2019 Real World Scenarios for Modern CFML - Nolan Erck
ITB2019 Real World Scenarios for Modern CFML - Nolan ErckITB2019 Real World Scenarios for Modern CFML - Nolan Erck
ITB2019 Real World Scenarios for Modern CFML - Nolan Erck
 
Gdc09 Minigames
Gdc09 MinigamesGdc09 Minigames
Gdc09 Minigames
 
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, DockerUnder the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
Under the Hood with Docker Swarm Mode - Drew Erny and Nishant Totla, Docker
 
FrameGraph: Extensible Rendering Architecture in Frostbite
FrameGraph: Extensible Rendering Architecture in FrostbiteFrameGraph: Extensible Rendering Architecture in Frostbite
FrameGraph: Extensible Rendering Architecture in Frostbite
 

More from Mrinal Wadhwa

SF IoT Meetup - Decentralized Identifiers & Verifiable Claims
SF IoT Meetup - Decentralized Identifiers & Verifiable ClaimsSF IoT Meetup - Decentralized Identifiers & Verifiable Claims
SF IoT Meetup - Decentralized Identifiers & Verifiable ClaimsMrinal Wadhwa
 
Edge Computing and Machine Learning for a better Internet of Things
Edge Computing and Machine Learning for a better Internet of ThingsEdge Computing and Machine Learning for a better Internet of Things
Edge Computing and Machine Learning for a better Internet of ThingsMrinal Wadhwa
 
Considerations for a secure internet of things for cities and communities
Considerations for a secure internet of things for cities and communitiesConsiderations for a secure internet of things for cities and communities
Considerations for a secure internet of things for cities and communitiesMrinal Wadhwa
 
Austin Smart City Readiness Workshop - Viability and Sustainability of IoT Sm...
Austin Smart City Readiness Workshop - Viability and Sustainability of IoT Sm...Austin Smart City Readiness Workshop - Viability and Sustainability of IoT Sm...
Austin Smart City Readiness Workshop - Viability and Sustainability of IoT Sm...Mrinal Wadhwa
 
Better Parking. Better Communities.
Better Parking. Better Communities.Better Parking. Better Communities.
Better Parking. Better Communities.Mrinal Wadhwa
 
Bits, Bytes and Blobs
Bits, Bytes and BlobsBits, Bytes and Blobs
Bits, Bytes and BlobsMrinal Wadhwa
 
Transport Layer Security - Mrinal Wadhwa
Transport Layer Security - Mrinal WadhwaTransport Layer Security - Mrinal Wadhwa
Transport Layer Security - Mrinal WadhwaMrinal Wadhwa
 
An Introduction To Rich Internet Apllications
An Introduction To Rich Internet ApllicationsAn Introduction To Rich Internet Apllications
An Introduction To Rich Internet ApllicationsMrinal Wadhwa
 

More from Mrinal Wadhwa (8)

SF IoT Meetup - Decentralized Identifiers & Verifiable Claims
SF IoT Meetup - Decentralized Identifiers & Verifiable ClaimsSF IoT Meetup - Decentralized Identifiers & Verifiable Claims
SF IoT Meetup - Decentralized Identifiers & Verifiable Claims
 
Edge Computing and Machine Learning for a better Internet of Things
Edge Computing and Machine Learning for a better Internet of ThingsEdge Computing and Machine Learning for a better Internet of Things
Edge Computing and Machine Learning for a better Internet of Things
 
Considerations for a secure internet of things for cities and communities
Considerations for a secure internet of things for cities and communitiesConsiderations for a secure internet of things for cities and communities
Considerations for a secure internet of things for cities and communities
 
Austin Smart City Readiness Workshop - Viability and Sustainability of IoT Sm...
Austin Smart City Readiness Workshop - Viability and Sustainability of IoT Sm...Austin Smart City Readiness Workshop - Viability and Sustainability of IoT Sm...
Austin Smart City Readiness Workshop - Viability and Sustainability of IoT Sm...
 
Better Parking. Better Communities.
Better Parking. Better Communities.Better Parking. Better Communities.
Better Parking. Better Communities.
 
Bits, Bytes and Blobs
Bits, Bytes and BlobsBits, Bytes and Blobs
Bits, Bytes and Blobs
 
Transport Layer Security - Mrinal Wadhwa
Transport Layer Security - Mrinal WadhwaTransport Layer Security - Mrinal Wadhwa
Transport Layer Security - Mrinal Wadhwa
 
An Introduction To Rich Internet Apllications
An Introduction To Rich Internet ApllicationsAn Introduction To Rich Internet Apllications
An Introduction To Rich Internet Apllications
 

Recently uploaded

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Recently uploaded (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Flex 4 Component Lifecycle