SlideShare a Scribd company logo
1 of 44
Download to read offline
Code and Slides:
                         http://thillerson.googlecode.com

                      Flex Framework Smackdown!
                                                   Tony Hillerson
                                                   Software Architect




Saturday, January 31, 2009
Code and Slides:
                         http://thillerson.googlecode.com

      Frameworks: The Timesink
      Why isn’t this a solved problem?




Saturday, January 31, 2009
Frameworks: Why?

                                  Code and Slides:
                         http://thillerson.googlecode.com
                             Why?
                             Why?
                             Why?
                             Why Why Why Why Why?




Saturday, January 31, 2009
Frameworks: Why?

                                  Code and Slides:
                         http://thillerson.googlecode.com




Saturday, January 31, 2009
Frameworks: Why?

                                  Code and Slides:
                         http://thillerson.googlecode.com




Saturday, January 31, 2009
Frameworks: Why?

                                  Code and Slides:
                         http://thillerson.googlecode.com


                                Roll Your Own?




Saturday, January 31, 2009
Frameworks: Why?

                                  Code and Slides:
                         http://thillerson.googlecode.com

                                Roll Your Own?
                                Go for it!




Saturday, January 31, 2009
Frameworks: Why?

                                  Code and Slides:
                         http://thillerson.googlecode.com
                                Frameworks
                                are a
                                common
                                vocabulary




Saturday, January 31, 2009
Frameworks: Why?

                                  Code and Slides:
                         http://thillerson.googlecode.com
                                Cairngorm
                                PureMVC
                                Swiz
                                Mate




Saturday, January 31, 2009
Code and Slides:
                         http://thillerson.googlecode.com

      Frameworks: Judgement Day
      What if your framework were a Breakfast Cereal?
                                        Pro Wrestler?
                                  Adobe Evangelist?
                        Homestar Runner Character?



Saturday, January 31, 2009
Frameworks: How to compare?

                                  Code and Slides:
                         http://thillerson.googlecode.com




Saturday, January 31, 2009
Frameworks: How to compare?

                                  Code and Slides:
                         http://thillerson.googlecode.com




Saturday, January 31, 2009
Frameworks: How to compare?
                             http://github.com/thillerson/twitteria/
                                  Code and Slides:
                         http://thillerson.googlecode.com




Saturday, January 31, 2009
Frameworks: How to compare?

                                  Code and Slides:
                         http://thillerson.googlecode.com
                                De gustibus
                                    non
                               disputandum
                                    est


Saturday, January 31, 2009
Frameworks: How to compare?

                                  Code and Slides:
                         http://thillerson.googlecode.com

                             The Most Memorable
                             Framework Discussion Ever




Saturday, January 31, 2009
Frameworks: How to compare?

                                  Code and Slides:
                         http://thillerson.googlecode.com
                                                con·ceit (noun)
                             In literature and poetry, a
                             device of analogy consisting of
                             an extended metaphor.
                             1350–1400; ME conceyte, conceipt, deriv. of conceive by analogy with
                             deceive, deceit and receive, receipt; cf. AF conceite; see concept




Saturday, January 31, 2009
Frameworks: How to compare?
                               Cairngorm
                                  Code and Slides:
                                          PureMVC
                         http://thillerson.googlecode.com

                                   WWII
                                   Generals?

                                   Swiz



                                                Mate

Saturday, January 31, 2009
Frameworks: How to compare?
                               Cairngorm
                                  Code and Slides:
                         http://thillerson.googlecode.com
                                            PureMVC


                                 Presidents?


                                   Swiz



                                               Mate

Saturday, January 31, 2009
Frameworks: How to compare?
                                                       Swiz
                                  Code and Slides:
                         http://thillerson.googlecode.com
                                                Mate
                             The Most Memorable
                             Framework Discussion Ever
                                                Cairngorm
                              Roll Your Own!



                                                         PureMVC
Saturday, January 31, 2009
Frameworks: How to compare?

                                  Code and Slides:
                         http://thillerson.googlecode.com




Saturday, January 31, 2009
Frameworks: How to compare?

                                  Code and Slides:
                         http://thillerson.googlecode.com
                             Without further ado,
                             Four Flex Frameworks
                             as Superheroes




Saturday, January 31, 2009
Code and Slides:
                         http://thillerson.googlecode.com


                                        Cairngorm:
                                        Mr. Fantastic




Saturday, January 31, 2009
Frameworks: Cairngorm

                                 Code and Slides:
                        Characteristics:
                        http://thillerson.googlecode.com
                        •    Singleton Model accessed through a ModelLocator
                        •    Views bind to model
                        •    Command pattern
                        •    Events correspond to Commands
                        •    Its own event dispatching system




Saturday, January 31, 2009
Frameworks: Cairngorm

                                  Code and Slides:
                         http://thillerson.googlecode.com




Saturday, January 31, 2009
Code and Slides:
                         http://thillerson.googlecode.com


                                        PureMVC:
                                        Doc Ock




Saturday, January 31, 2009
Frameworks: PureMVC

                                 Code and Slides:
                        Characteristics:
                        http://thillerson.googlecode.com
                        •    No dependency on the Flex framework
                        •    No framework objects in views
                        •    A Mediator controls views and listens for view events
                        •    Views dispatch regular Actionscript Events, but it has
                             its own internal event dispatching (Noti cations)




Saturday, January 31, 2009
Frameworks: PureMVC

                                  Code and Slides:
                         http://thillerson.googlecode.com




Saturday, January 31, 2009
Code and Slides:
                         http://thillerson.googlecode.com


                               Swiz:
                               Wolverine




Saturday, January 31, 2009
Frameworks: Swiz

                                 Code and Slides:
                        Characteristics:
                        http://thillerson.googlecode.com
                        • Inversion of Control to inject framework objects
                        • Use of [Metadata] to con gure framework
                        • Two-way communication between views and
                          controllers
                        • Dynamic Commands




Saturday, January 31, 2009
Frameworks: Swiz

                                  Code and Slides:
                         http://thillerson.googlecode.com




Saturday, January 31, 2009
Code and Slides:
                         http://thillerson.googlecode.com




                                  Mate:
                                  Batman


Saturday, January 31, 2009
Frameworks: Mate

                                 Code and Slides:
                        Characteristics:
                        http://thillerson.googlecode.com
                        • Inversion of Control to inject data into views
                        • Actionscript Events only!
                        • Framework con guration is all MXML




Saturday, January 31, 2009
Frameworks: Mate

                                  Code and Slides:
                         http://thillerson.googlecode.com




Saturday, January 31, 2009
Frameworks: Finale                               PureMVC
                               Cairngorm
                                  Code and Slides:
                         http://thillerson.googlecode.com




               Mate
                                              Swiz



Saturday, January 31, 2009
Code and Slides:
                                    Cairngorm:
                         http://thillerson.googlecode.com
                                  Mr. Fantastic
                                  • Pretty exible
                                  • No matter how hard you pull,
                                    you can’t break it apart




Saturday, January 31, 2009
Frameworks: Cairngorm
                        I Like:
                        • Commands Code and Slides:
                        •http://thillerson.googlecode.com
                          Delegates
                        • Self dispatching events


                        I Don’t Like:
                        • Singleton (by popular demand)
                        • Hard Wiring
                        • Testability




Saturday, January 31, 2009
Code and Slides:
                         http://thillerson.googlecode.com
                                      PureMVC:
                                      Doc Ock
                                      • Ignore the villain part
                                      • Very Smart
                                      • There’s a whole lot of “arms”




Saturday, January 31, 2009
Frameworks: PureMVC
                        I Like:
                                      Code and Slides:
                        • Separation of Concerns
                        •http://thillerson.googlecode.com
                          Mediators



                        I Don’t Like:
                        •    Unwieldy and Large
                        •    Too many moving parts
                        •    Hand wiring
                        •    No Flex dependency




Saturday, January 31, 2009
Code and Slides:
                         http://thillerson.googlecode.com
                                 Swiz:
                               Wolverine
                               • Pragmatic
                               • Razor sharp




Saturday, January 31, 2009
Frameworks: Swiz
                        I Like:
                                     Code and Slides:
                        • IOC!!
                        •http://thillerson.googlecode.com
                          Using Metadata



                        I Don’t Like:
                        • Big Controllers (I’d rather have commands)
                        • Not easy to use the regular command pattern
                        • Still (some) self event dispatching




Saturday, January 31, 2009
Mate:
                              Batman and Slides:
                                 Code
                            • Lots of tools
                         http://thillerson.googlecode.com
                            • Stealthy
                             • The Bat Signal!




Saturday, January 31, 2009
Frameworks: Mate
                        I Like:
                                       Code and Slides:
                        • IOC!!
                        •http://thillerson.googlecode.com
                          Flex con guring Flex
                        • Lots of tools


                        I Don’t Like:
                        • Some tag names are not that memorable




Saturday, January 31, 2009
Flex Framework Smackdown!
                                                PureMVC
                             Cairngorm

                                  Code and Slides:
                         http://thillerson.googlecode.com



                   Mate
                                         Swiz




Saturday, January 31, 2009
Frameworks: Thank you!
                       Tony Hillerson
                                  Code and Slides:
                       Software Architect


                         http://thillerson.googlecode.com
                     http://slideshare.com/thillerson
                     http://github.com/thillerson
                     http://insideria.com

                     http://EffectiveUI.com




Saturday, January 31, 2009

More Related Content

Viewers also liked

Midwinter Holidays: Rebirth of Light
Midwinter Holidays:  Rebirth of LightMidwinter Holidays:  Rebirth of Light
Midwinter Holidays: Rebirth of LightSusan Joy Schleef
 
The Brand Train - Branding on the move
The Brand Train - Branding on the moveThe Brand Train - Branding on the move
The Brand Train - Branding on the moveUmesh R. Sonawane
 
Contact Center Pipeline Drive Culture Improvement
Contact Center Pipeline Drive Culture ImprovementContact Center Pipeline Drive Culture Improvement
Contact Center Pipeline Drive Culture ImprovementElizabeth Lupfer
 
Beyond Employee Engagement | @dalecarnegie
Beyond Employee Engagement | @dalecarnegieBeyond Employee Engagement | @dalecarnegie
Beyond Employee Engagement | @dalecarnegieElizabeth Lupfer
 
Social Media Business Council Disclosure Best Practices Toolkit
Social Media Business Council Disclosure Best Practices ToolkitSocial Media Business Council Disclosure Best Practices Toolkit
Social Media Business Council Disclosure Best Practices ToolkitElizabeth Lupfer
 
Dynamic Sound for Android
Dynamic Sound for AndroidDynamic Sound for Android
Dynamic Sound for AndroidTony Hillerson
 
Gamification by Aravind Gogineni
Gamification by Aravind GogineniGamification by Aravind Gogineni
Gamification by Aravind GogineniAravind Gogineni
 
Http Mail.Google.Com Mail Safe=Vss&Ui=2&Ik=Bf9b87490a&View=Att&Th=11fac4c6...
Http   Mail.Google.Com Mail  Safe=Vss&Ui=2&Ik=Bf9b87490a&View=Att&Th=11fac4c6...Http   Mail.Google.Com Mail  Safe=Vss&Ui=2&Ik=Bf9b87490a&View=Att&Th=11fac4c6...
Http Mail.Google.Com Mail Safe=Vss&Ui=2&Ik=Bf9b87490a&View=Att&Th=11fac4c6...Wendy Maddison
 
Grafittis, Lenguaje Urbano
Grafittis, Lenguaje UrbanoGrafittis, Lenguaje Urbano
Grafittis, Lenguaje Urbanonico552
 
Employee Engagement White Paper by 360Solutions
Employee Engagement White Paper by 360SolutionsEmployee Engagement White Paper by 360Solutions
Employee Engagement White Paper by 360SolutionsElizabeth Lupfer
 
Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...
Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...
Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...Anke Saputro
 
春秋戰國時期的社會經濟和社會變革
春秋戰國時期的社會經濟和社會變革春秋戰國時期的社會經濟和社會變革
春秋戰國時期的社會經濟和社會變革y53102
 
The Journey Toward Cultural Inclusion
The Journey Toward Cultural InclusionThe Journey Toward Cultural Inclusion
The Journey Toward Cultural InclusionSteve Lowisz
 

Viewers also liked (20)

Midwinter Holidays: Rebirth of Light
Midwinter Holidays:  Rebirth of LightMidwinter Holidays:  Rebirth of Light
Midwinter Holidays: Rebirth of Light
 
Pies
PiesPies
Pies
 
The Brand Train - Branding on the move
The Brand Train - Branding on the moveThe Brand Train - Branding on the move
The Brand Train - Branding on the move
 
Contact Center Pipeline Drive Culture Improvement
Contact Center Pipeline Drive Culture ImprovementContact Center Pipeline Drive Culture Improvement
Contact Center Pipeline Drive Culture Improvement
 
Beyond Employee Engagement | @dalecarnegie
Beyond Employee Engagement | @dalecarnegieBeyond Employee Engagement | @dalecarnegie
Beyond Employee Engagement | @dalecarnegie
 
Social Media Business Council Disclosure Best Practices Toolkit
Social Media Business Council Disclosure Best Practices ToolkitSocial Media Business Council Disclosure Best Practices Toolkit
Social Media Business Council Disclosure Best Practices Toolkit
 
Strategy of Giving
Strategy of GivingStrategy of Giving
Strategy of Giving
 
Dynamic Sound for Android
Dynamic Sound for AndroidDynamic Sound for Android
Dynamic Sound for Android
 
Gamification by Aravind Gogineni
Gamification by Aravind GogineniGamification by Aravind Gogineni
Gamification by Aravind Gogineni
 
Holiday Greetings
Holiday GreetingsHoliday Greetings
Holiday Greetings
 
Http Mail.Google.Com Mail Safe=Vss&Ui=2&Ik=Bf9b87490a&View=Att&Th=11fac4c6...
Http   Mail.Google.Com Mail  Safe=Vss&Ui=2&Ik=Bf9b87490a&View=Att&Th=11fac4c6...Http   Mail.Google.Com Mail  Safe=Vss&Ui=2&Ik=Bf9b87490a&View=Att&Th=11fac4c6...
Http Mail.Google.Com Mail Safe=Vss&Ui=2&Ik=Bf9b87490a&View=Att&Th=11fac4c6...
 
About Face 1.3
About Face 1.3About Face 1.3
About Face 1.3
 
Grafittis, Lenguaje Urbano
Grafittis, Lenguaje UrbanoGrafittis, Lenguaje Urbano
Grafittis, Lenguaje Urbano
 
Employee Engagement White Paper by 360Solutions
Employee Engagement White Paper by 360SolutionsEmployee Engagement White Paper by 360Solutions
Employee Engagement White Paper by 360Solutions
 
Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...
Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...
Personal branding: Sukses mendapatkan modal min Rp. 15 M dalam 1 hari atau na...
 
春秋戰國時期的社會經濟和社會變革
春秋戰國時期的社會經濟和社會變革春秋戰國時期的社會經濟和社會變革
春秋戰國時期的社會經濟和社會變革
 
Ppt X1
Ppt X1Ppt X1
Ppt X1
 
The Journey Toward Cultural Inclusion
The Journey Toward Cultural InclusionThe Journey Toward Cultural Inclusion
The Journey Toward Cultural Inclusion
 
Presentation i eyd
Presentation i eydPresentation i eyd
Presentation i eyd
 
Module01
Module01Module01
Module01
 

More from Tony Hillerson

Totally Build Apps for Free! (not really)
Totally Build Apps for Free! (not really)Totally Build Apps for Free! (not really)
Totally Build Apps for Free! (not really)Tony Hillerson
 
Git for Android Developers
Git for Android DevelopersGit for Android Developers
Git for Android DevelopersTony Hillerson
 
Designing an Android App from Idea to Market
Designing an Android App from Idea to MarketDesigning an Android App from Idea to Market
Designing an Android App from Idea to MarketTony Hillerson
 
SCM for Android Developers Using Git
SCM for Android Developers Using GitSCM for Android Developers Using Git
SCM for Android Developers Using GitTony Hillerson
 
First Android Experience
First Android ExperienceFirst Android Experience
First Android ExperienceTony Hillerson
 
iPhone Persistence For Mere Mortals
iPhone Persistence For Mere MortalsiPhone Persistence For Mere Mortals
iPhone Persistence For Mere MortalsTony Hillerson
 

More from Tony Hillerson (10)

Totally Build Apps for Free! (not really)
Totally Build Apps for Free! (not really)Totally Build Apps for Free! (not really)
Totally Build Apps for Free! (not really)
 
Working with Git
Working with GitWorking with Git
Working with Git
 
Git for Android Developers
Git for Android DevelopersGit for Android Developers
Git for Android Developers
 
Designing an Android App from Idea to Market
Designing an Android App from Idea to MarketDesigning an Android App from Idea to Market
Designing an Android App from Idea to Market
 
Rails on HBase
Rails on HBaseRails on HBase
Rails on HBase
 
SCM for Android Developers Using Git
SCM for Android Developers Using GitSCM for Android Developers Using Git
SCM for Android Developers Using Git
 
Flex With Rubyamf
Flex With RubyamfFlex With Rubyamf
Flex With Rubyamf
 
First Android Experience
First Android ExperienceFirst Android Experience
First Android Experience
 
iPhone Persistence For Mere Mortals
iPhone Persistence For Mere MortalsiPhone Persistence For Mere Mortals
iPhone Persistence For Mere Mortals
 
Flex And Rails
Flex And RailsFlex And Rails
Flex And Rails
 

Recently uploaded

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
"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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
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
 
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
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
"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
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
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
 

Recently uploaded (20)

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
"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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
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...
 
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)
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
"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...
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
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
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 

Flex Framework Smackdown

  • 1. Code and Slides: http://thillerson.googlecode.com Flex Framework Smackdown! Tony Hillerson Software Architect Saturday, January 31, 2009
  • 2. Code and Slides: http://thillerson.googlecode.com Frameworks: The Timesink Why isn’t this a solved problem? Saturday, January 31, 2009
  • 3. Frameworks: Why? Code and Slides: http://thillerson.googlecode.com Why? Why? Why? Why Why Why Why Why? Saturday, January 31, 2009
  • 4. Frameworks: Why? Code and Slides: http://thillerson.googlecode.com Saturday, January 31, 2009
  • 5. Frameworks: Why? Code and Slides: http://thillerson.googlecode.com Saturday, January 31, 2009
  • 6. Frameworks: Why? Code and Slides: http://thillerson.googlecode.com Roll Your Own? Saturday, January 31, 2009
  • 7. Frameworks: Why? Code and Slides: http://thillerson.googlecode.com Roll Your Own? Go for it! Saturday, January 31, 2009
  • 8. Frameworks: Why? Code and Slides: http://thillerson.googlecode.com Frameworks are a common vocabulary Saturday, January 31, 2009
  • 9. Frameworks: Why? Code and Slides: http://thillerson.googlecode.com Cairngorm PureMVC Swiz Mate Saturday, January 31, 2009
  • 10. Code and Slides: http://thillerson.googlecode.com Frameworks: Judgement Day What if your framework were a Breakfast Cereal? Pro Wrestler? Adobe Evangelist? Homestar Runner Character? Saturday, January 31, 2009
  • 11. Frameworks: How to compare? Code and Slides: http://thillerson.googlecode.com Saturday, January 31, 2009
  • 12. Frameworks: How to compare? Code and Slides: http://thillerson.googlecode.com Saturday, January 31, 2009
  • 13. Frameworks: How to compare? http://github.com/thillerson/twitteria/ Code and Slides: http://thillerson.googlecode.com Saturday, January 31, 2009
  • 14. Frameworks: How to compare? Code and Slides: http://thillerson.googlecode.com De gustibus non disputandum est Saturday, January 31, 2009
  • 15. Frameworks: How to compare? Code and Slides: http://thillerson.googlecode.com The Most Memorable Framework Discussion Ever Saturday, January 31, 2009
  • 16. Frameworks: How to compare? Code and Slides: http://thillerson.googlecode.com con·ceit (noun) In literature and poetry, a device of analogy consisting of an extended metaphor. 1350–1400; ME conceyte, conceipt, deriv. of conceive by analogy with deceive, deceit and receive, receipt; cf. AF conceite; see concept Saturday, January 31, 2009
  • 17. Frameworks: How to compare? Cairngorm Code and Slides: PureMVC http://thillerson.googlecode.com WWII Generals? Swiz Mate Saturday, January 31, 2009
  • 18. Frameworks: How to compare? Cairngorm Code and Slides: http://thillerson.googlecode.com PureMVC Presidents? Swiz Mate Saturday, January 31, 2009
  • 19. Frameworks: How to compare? Swiz Code and Slides: http://thillerson.googlecode.com Mate The Most Memorable Framework Discussion Ever Cairngorm Roll Your Own! PureMVC Saturday, January 31, 2009
  • 20. Frameworks: How to compare? Code and Slides: http://thillerson.googlecode.com Saturday, January 31, 2009
  • 21. Frameworks: How to compare? Code and Slides: http://thillerson.googlecode.com Without further ado, Four Flex Frameworks as Superheroes Saturday, January 31, 2009
  • 22. Code and Slides: http://thillerson.googlecode.com Cairngorm: Mr. Fantastic Saturday, January 31, 2009
  • 23. Frameworks: Cairngorm Code and Slides: Characteristics: http://thillerson.googlecode.com • Singleton Model accessed through a ModelLocator • Views bind to model • Command pattern • Events correspond to Commands • Its own event dispatching system Saturday, January 31, 2009
  • 24. Frameworks: Cairngorm Code and Slides: http://thillerson.googlecode.com Saturday, January 31, 2009
  • 25. Code and Slides: http://thillerson.googlecode.com PureMVC: Doc Ock Saturday, January 31, 2009
  • 26. Frameworks: PureMVC Code and Slides: Characteristics: http://thillerson.googlecode.com • No dependency on the Flex framework • No framework objects in views • A Mediator controls views and listens for view events • Views dispatch regular Actionscript Events, but it has its own internal event dispatching (Noti cations) Saturday, January 31, 2009
  • 27. Frameworks: PureMVC Code and Slides: http://thillerson.googlecode.com Saturday, January 31, 2009
  • 28. Code and Slides: http://thillerson.googlecode.com Swiz: Wolverine Saturday, January 31, 2009
  • 29. Frameworks: Swiz Code and Slides: Characteristics: http://thillerson.googlecode.com • Inversion of Control to inject framework objects • Use of [Metadata] to con gure framework • Two-way communication between views and controllers • Dynamic Commands Saturday, January 31, 2009
  • 30. Frameworks: Swiz Code and Slides: http://thillerson.googlecode.com Saturday, January 31, 2009
  • 31. Code and Slides: http://thillerson.googlecode.com Mate: Batman Saturday, January 31, 2009
  • 32. Frameworks: Mate Code and Slides: Characteristics: http://thillerson.googlecode.com • Inversion of Control to inject data into views • Actionscript Events only! • Framework con guration is all MXML Saturday, January 31, 2009
  • 33. Frameworks: Mate Code and Slides: http://thillerson.googlecode.com Saturday, January 31, 2009
  • 34. Frameworks: Finale PureMVC Cairngorm Code and Slides: http://thillerson.googlecode.com Mate Swiz Saturday, January 31, 2009
  • 35. Code and Slides: Cairngorm: http://thillerson.googlecode.com Mr. Fantastic • Pretty exible • No matter how hard you pull, you can’t break it apart Saturday, January 31, 2009
  • 36. Frameworks: Cairngorm I Like: • Commands Code and Slides: •http://thillerson.googlecode.com Delegates • Self dispatching events I Don’t Like: • Singleton (by popular demand) • Hard Wiring • Testability Saturday, January 31, 2009
  • 37. Code and Slides: http://thillerson.googlecode.com PureMVC: Doc Ock • Ignore the villain part • Very Smart • There’s a whole lot of “arms” Saturday, January 31, 2009
  • 38. Frameworks: PureMVC I Like: Code and Slides: • Separation of Concerns •http://thillerson.googlecode.com Mediators I Don’t Like: • Unwieldy and Large • Too many moving parts • Hand wiring • No Flex dependency Saturday, January 31, 2009
  • 39. Code and Slides: http://thillerson.googlecode.com Swiz: Wolverine • Pragmatic • Razor sharp Saturday, January 31, 2009
  • 40. Frameworks: Swiz I Like: Code and Slides: • IOC!! •http://thillerson.googlecode.com Using Metadata I Don’t Like: • Big Controllers (I’d rather have commands) • Not easy to use the regular command pattern • Still (some) self event dispatching Saturday, January 31, 2009
  • 41. Mate: Batman and Slides: Code • Lots of tools http://thillerson.googlecode.com • Stealthy • The Bat Signal! Saturday, January 31, 2009
  • 42. Frameworks: Mate I Like: Code and Slides: • IOC!! •http://thillerson.googlecode.com Flex con guring Flex • Lots of tools I Don’t Like: • Some tag names are not that memorable Saturday, January 31, 2009
  • 43. Flex Framework Smackdown! PureMVC Cairngorm Code and Slides: http://thillerson.googlecode.com Mate Swiz Saturday, January 31, 2009
  • 44. Frameworks: Thank you! Tony Hillerson Code and Slides: Software Architect http://thillerson.googlecode.com http://slideshare.com/thillerson http://github.com/thillerson http://insideria.com http://EffectiveUI.com Saturday, January 31, 2009