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

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
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
 
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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
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
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
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
 

Recently uploaded (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
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...
 

Flex 4 Component Lifecycle