SlideShare a Scribd company logo
1 of 23
Download to read offline
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Flex/ActionScript 3.0 Architecture and Dependency Injection
Frameworks Overview
Piotr Walczyszyn | Platform Evangelist
var blog:URLRequest = new URLRequest("http://riaspace.com");	
var twitter:URLRequest = new URLRequest("http://twitter.com/pwalczyszyn");
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Agenda
  Architectural Patterns
  MVC
  Presentation Model
  Other
  DI Frameworks
  Sample app overview
  Mate
  Parsley
  Robotlegs
  Spring ActionScript
  Swiz
2
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 3
Model View Controller
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  Model View Controller
Model View Controller Diagrams
4
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  Model View Controller
  Model View Controller & Command Pattern
Model View Controller Diagrams
5
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 6
Presentation Model
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Presentation Model Diagrams
  Presentation Model
7
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Presentation Model Diagrams
  Presentation Model
  Presentation Model with Command Pattern
8
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 9
Other
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Model View Presenter
  Model View Presenter (Passive View)
10
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Model View Presenter
  Model View Presenter (Passive View)
  Model View Presenter (Supervising Controller)
11
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Spark Architecture
12
MXML
Graphics
Layout
Animation
Parts
States
Skin
CSS
properties
ActionScript
Component
Behavior
Logic
Data
Spark
Component
Model
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Spark Architecture
13
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 19
AS3/Flex DI Frameworks == Commodities
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AS3/Flex microarchitecture frameworks
20
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
LOADING_USERS
Demo Application
21
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
USERS_LIST_STATE
Demo Application
22
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
ADD_USER_STATE
Demo Application
23
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Demo Application Diagram
24
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Typical microarchitecture elements
  Configuration
  DI implementation
  Event/Messaging bus
  Command pattern API
  Helper classes
25
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 26
Frameworks Demo
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Links
  Frameworks:
  Mate - http://mate.asfusion.com/
  Parsley - http://www.spicefactory.org/parsley/
  Robotlegs - http://www.robotlegs.org/
  Spring ActionScript - http://www.springactionscript.org/
  Swiz - http://swizframework.org/
  UsersAdmin projects: http://github.com/pwalczyszyn/MAX-2010-Projects
27
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

More Related Content

What's hot

Difference between MVC 3, 4, 5 and 6
Difference between MVC 3, 4, 5 and 6Difference between MVC 3, 4, 5 and 6
Difference between MVC 3, 4, 5 and 6Bhaumik Patel
 
Web Development with Visual Studio 2012
Web Development with Visual Studio 2012Web Development with Visual Studio 2012
Web Development with Visual Studio 2012Raffaele Fanizzi
 
MikeTaulty_Ux_Update
MikeTaulty_Ux_UpdateMikeTaulty_Ux_Update
MikeTaulty_Ux_Updateukdpe
 
Top 10 Frameworks Programmers Should Learn in 2020
Top 10 Frameworks Programmers Should Learn in 2020Top 10 Frameworks Programmers Should Learn in 2020
Top 10 Frameworks Programmers Should Learn in 2020NexSoftsys
 
Hell Froze Over, Pigs Flew, Microsoft Went Open
Hell Froze Over, Pigs Flew, Microsoft Went OpenHell Froze Over, Pigs Flew, Microsoft Went Open
Hell Froze Over, Pigs Flew, Microsoft Went Openukdpe
 
Integrate Shindig with Joomla
Integrate Shindig with JoomlaIntegrate Shindig with Joomla
Integrate Shindig with JoomlaAnand Sharma
 
Perforce CMS
Perforce CMSPerforce CMS
Perforce CMSPerforce
 

What's hot (8)

Mule security - jaas
Mule  security - jaasMule  security - jaas
Mule security - jaas
 
Difference between MVC 3, 4, 5 and 6
Difference between MVC 3, 4, 5 and 6Difference between MVC 3, 4, 5 and 6
Difference between MVC 3, 4, 5 and 6
 
Web Development with Visual Studio 2012
Web Development with Visual Studio 2012Web Development with Visual Studio 2012
Web Development with Visual Studio 2012
 
MikeTaulty_Ux_Update
MikeTaulty_Ux_UpdateMikeTaulty_Ux_Update
MikeTaulty_Ux_Update
 
Top 10 Frameworks Programmers Should Learn in 2020
Top 10 Frameworks Programmers Should Learn in 2020Top 10 Frameworks Programmers Should Learn in 2020
Top 10 Frameworks Programmers Should Learn in 2020
 
Hell Froze Over, Pigs Flew, Microsoft Went Open
Hell Froze Over, Pigs Flew, Microsoft Went OpenHell Froze Over, Pigs Flew, Microsoft Went Open
Hell Froze Over, Pigs Flew, Microsoft Went Open
 
Integrate Shindig with Joomla
Integrate Shindig with JoomlaIntegrate Shindig with Joomla
Integrate Shindig with Joomla
 
Perforce CMS
Perforce CMSPerforce CMS
Perforce CMS
 

Viewers also liked

Środowisko adobe air jako platforma do budowania gier
Środowisko adobe air jako platforma do budowania gierŚrodowisko adobe air jako platforma do budowania gier
Środowisko adobe air jako platforma do budowania gierPiotr Walczyszyn
 
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i Flex
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i FlexBudowanie aplikacji kontekstowych z użyciem Adobe AIR i Flex
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i FlexPiotr Walczyszyn
 
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)Budowanie Nowoczesnych Aplikacji Internetowych (RIA)
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)Piotr Walczyszyn
 

Viewers also liked (6)

Środowisko adobe air jako platforma do budowania gier
Środowisko adobe air jako platforma do budowania gierŚrodowisko adobe air jako platforma do budowania gier
Środowisko adobe air jako platforma do budowania gier
 
Fontaines en musique (1)
Fontaines en musique (1)Fontaines en musique (1)
Fontaines en musique (1)
 
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i Flex
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i FlexBudowanie aplikacji kontekstowych z użyciem Adobe AIR i Flex
Budowanie aplikacji kontekstowych z użyciem Adobe AIR i Flex
 
Flash - Pogromcy Mitów
Flash - Pogromcy MitówFlash - Pogromcy Mitów
Flash - Pogromcy Mitów
 
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)Budowanie Nowoczesnych Aplikacji Internetowych (RIA)
Budowanie Nowoczesnych Aplikacji Internetowych (RIA)
 
ნინო ჯეირანაშვილი
ნინო ჯეირანაშვილინინო ჯეირანაშვილი
ნინო ჯეირანაშვილი
 

Similar to Flex/AS3 Architecture And Dependency Injection Frameworks Overview

Progressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRProgressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRJoseph Labrecque
 
AEM Tools - Eclipse & Brackets
AEM Tools - Eclipse & Brackets AEM Tools - Eclipse & Brackets
AEM Tools - Eclipse & Brackets Lokesh BS
 
Ask the AEM Community Expert Feb 2016 Session: AEM + Brackets
Ask the AEM Community Expert Feb 2016 Session: AEM + BracketsAsk the AEM Community Expert Feb 2016 Session: AEM + Brackets
Ask the AEM Community Expert Feb 2016 Session: AEM + BracketsAdobeMarketingCloud
 
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3Craig Randall
 
ColdFusion 11 Overview - CFSummit 2013
ColdFusion 11 Overview - CFSummit 2013ColdFusion 11 Overview - CFSummit 2013
ColdFusion 11 Overview - CFSummit 2013Rupesh Kumar
 
Android Development with Flash Platform
Android Development with Flash PlatformAndroid Development with Flash Platform
Android Development with Flash PlatformMihai Corlan
 
Pervasive PLM
Pervasive PLMPervasive PLM
Pervasive PLMAras
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Phil Estes
 
Revised Adf security in a project centric environment
Revised Adf security in a project centric environmentRevised Adf security in a project centric environment
Revised Adf security in a project centric environmentJean-Marc Desvaux
 
What's New for Presentation in Visual Studio 2008 SP1
What's New for Presentation in Visual Studio 2008 SP1What's New for Presentation in Visual Studio 2008 SP1
What's New for Presentation in Visual Studio 2008 SP1ukdpe
 
SharePoint Intersections - SP11 - SharePoint and IaaS - The OnPrem in the Cloud
SharePoint Intersections - SP11 - SharePoint and IaaS - The OnPrem in the CloudSharePoint Intersections - SP11 - SharePoint and IaaS - The OnPrem in the Cloud
SharePoint Intersections - SP11 - SharePoint and IaaS - The OnPrem in the CloudDan Usher
 
EBsSDKForJavaWithOracleADF_ppt.ppt
EBsSDKForJavaWithOracleADF_ppt.pptEBsSDKForJavaWithOracleADF_ppt.ppt
EBsSDKForJavaWithOracleADF_ppt.pptSudhirSinghShakyaVan
 
Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011Rupesh Kumar
 
Using Edge Animate to Create a Reusable Component Set
Using Edge Animate to Create a Reusable Component SetUsing Edge Animate to Create a Reusable Component Set
Using Edge Animate to Create a Reusable Component SetJoseph Labrecque
 
Xebia adobe flash mobile applications
Xebia adobe flash mobile applicationsXebia adobe flash mobile applications
Xebia adobe flash mobile applicationsMichael Chaize
 
Getting started with flash mobile development
Getting started with flash mobile developmentGetting started with flash mobile development
Getting started with flash mobile developmentMihai Corlan
 
Flex360 Milan 2008 - Flex & Webservices
Flex360 Milan 2008 - Flex & WebservicesFlex360 Milan 2008 - Flex & Webservices
Flex360 Milan 2008 - Flex & Webservicesivascucristian
 
COMPRO- WEB ALBUM & MOTION ANALYZER
COMPRO- WEB ALBUM  & MOTION ANALYZERCOMPRO- WEB ALBUM  & MOTION ANALYZER
COMPRO- WEB ALBUM & MOTION ANALYZERAshish Tanwer
 

Similar to Flex/AS3 Architecture And Dependency Injection Frameworks Overview (20)

Progressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRProgressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIR
 
Flex mobile for JUG
Flex mobile for JUGFlex mobile for JUG
Flex mobile for JUG
 
AEM Tools - Eclipse & Brackets
AEM Tools - Eclipse & Brackets AEM Tools - Eclipse & Brackets
AEM Tools - Eclipse & Brackets
 
Ask the AEM Community Expert Feb 2016 Session: AEM + Brackets
Ask the AEM Community Expert Feb 2016 Session: AEM + BracketsAsk the AEM Community Expert Feb 2016 Session: AEM + Brackets
Ask the AEM Community Expert Feb 2016 Session: AEM + Brackets
 
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
 
ColdFusion 11 Overview - CFSummit 2013
ColdFusion 11 Overview - CFSummit 2013ColdFusion 11 Overview - CFSummit 2013
ColdFusion 11 Overview - CFSummit 2013
 
Android Development with Flash Platform
Android Development with Flash PlatformAndroid Development with Flash Platform
Android Development with Flash Platform
 
Pervasive PLM
Pervasive PLMPervasive PLM
Pervasive PLM
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
 
Revised Adf security in a project centric environment
Revised Adf security in a project centric environmentRevised Adf security in a project centric environment
Revised Adf security in a project centric environment
 
What's New for Presentation in Visual Studio 2008 SP1
What's New for Presentation in Visual Studio 2008 SP1What's New for Presentation in Visual Studio 2008 SP1
What's New for Presentation in Visual Studio 2008 SP1
 
SharePoint Intersections - SP11 - SharePoint and IaaS - The OnPrem in the Cloud
SharePoint Intersections - SP11 - SharePoint and IaaS - The OnPrem in the CloudSharePoint Intersections - SP11 - SharePoint and IaaS - The OnPrem in the Cloud
SharePoint Intersections - SP11 - SharePoint and IaaS - The OnPrem in the Cloud
 
EBsSDKForJavaWithOracleADF_ppt.ppt
EBsSDKForJavaWithOracleADF_ppt.pptEBsSDKForJavaWithOracleADF_ppt.ppt
EBsSDKForJavaWithOracleADF_ppt.ppt
 
Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011
 
Using Edge Animate to Create a Reusable Component Set
Using Edge Animate to Create a Reusable Component SetUsing Edge Animate to Create a Reusable Component Set
Using Edge Animate to Create a Reusable Component Set
 
Xebia adobe flash mobile applications
Xebia adobe flash mobile applicationsXebia adobe flash mobile applications
Xebia adobe flash mobile applications
 
AIR for Higher Education
AIR for Higher EducationAIR for Higher Education
AIR for Higher Education
 
Getting started with flash mobile development
Getting started with flash mobile developmentGetting started with flash mobile development
Getting started with flash mobile development
 
Flex360 Milan 2008 - Flex & Webservices
Flex360 Milan 2008 - Flex & WebservicesFlex360 Milan 2008 - Flex & Webservices
Flex360 Milan 2008 - Flex & Webservices
 
COMPRO- WEB ALBUM & MOTION ANALYZER
COMPRO- WEB ALBUM  & MOTION ANALYZERCOMPRO- WEB ALBUM  & MOTION ANALYZER
COMPRO- WEB ALBUM & MOTION ANALYZER
 

Recently uploaded

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 

Recently uploaded (20)

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 

Flex/AS3 Architecture And Dependency Injection Frameworks Overview

  • 1. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Flex/ActionScript 3.0 Architecture and Dependency Injection Frameworks Overview Piotr Walczyszyn | Platform Evangelist var blog:URLRequest = new URLRequest("http://riaspace.com"); var twitter:URLRequest = new URLRequest("http://twitter.com/pwalczyszyn");
  • 2. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Agenda   Architectural Patterns   MVC   Presentation Model   Other   DI Frameworks   Sample app overview   Mate   Parsley   Robotlegs   Spring ActionScript   Swiz 2
  • 3. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 3 Model View Controller
  • 4. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.   Model View Controller Model View Controller Diagrams 4
  • 5. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.   Model View Controller   Model View Controller & Command Pattern Model View Controller Diagrams 5
  • 6. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 6 Presentation Model
  • 7. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Presentation Model Diagrams   Presentation Model 7
  • 8. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Presentation Model Diagrams   Presentation Model   Presentation Model with Command Pattern 8
  • 9. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 9 Other
  • 10. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Model View Presenter   Model View Presenter (Passive View) 10
  • 11. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Model View Presenter   Model View Presenter (Passive View)   Model View Presenter (Supervising Controller) 11
  • 12. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Spark Architecture 12 MXML Graphics Layout Animation Parts States Skin CSS properties ActionScript Component Behavior Logic Data Spark Component Model
  • 13. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Spark Architecture 13
  • 14. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 19 AS3/Flex DI Frameworks == Commodities
  • 15. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. AS3/Flex microarchitecture frameworks 20
  • 16. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. LOADING_USERS Demo Application 21
  • 17. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. USERS_LIST_STATE Demo Application 22
  • 18. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. ADD_USER_STATE Demo Application 23
  • 19. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Demo Application Diagram 24
  • 20. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Typical microarchitecture elements   Configuration   DI implementation   Event/Messaging bus   Command pattern API   Helper classes 25
  • 21. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 26 Frameworks Demo
  • 22. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Links   Frameworks:   Mate - http://mate.asfusion.com/   Parsley - http://www.spicefactory.org/parsley/   Robotlegs - http://www.robotlegs.org/   Spring ActionScript - http://www.springactionscript.org/   Swiz - http://swizframework.org/   UsersAdmin projects: http://github.com/pwalczyszyn/MAX-2010-Projects 27
  • 23. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.