SlideShare una empresa de Scribd logo
1 de 27
5 Ways iOS is better and worse than Flash Arpit Mathur Philadelphia Flex User Group
Some introductions… Software Engineer at Comcast Innovation Labs Flash/Flex developer for 5 years Experience with very different UI technologies including Java Swing/AWT, SWT, JavaScript/DHTML, etc Developer on the XfinityTV Application
Setting the stage	 Xcode ~ Flex Builder Interface Builder ~ Flash IDE Objective C ~ ActionScript Core Graphics ~ flash.graphics.* Core Animation ~ TweenLite / fl.transitions.* XIBs ~ Flash Symbols UIKit ~ Flex / Fl Component Framework
iOS Application Architecture Application (UIApplicationDelegate) XIBs View Controllers (UIViewController) Models Views (UIViews)
Quick Example
The Good
#1: Enforced MVC
UIView
UIViewController
#2: NSNotificationCenter
#2: NSNotificationCenter
BEWARE OVERUSE !!!
#3 User Interface Experience Framework
#3 User Interface Experience Framework
“Make Designing the right way the path of least resistance.”
#4 Animation Blocks and Core Animation
Core Animation Layer Backed (cache’s the last appearance of the view) Potentially thousands of layers Filters, Transitions OpenGL backed Don’t clip to bounds by default! While animating, it’s the cached image that’s moving around. So unlike Flash, you cant interact with it.
#5 Objective C Gravy Class + Interface Declarations Enums Messaging null objects (mixed feelings) Key Value Observing (a-la AS2 watch)
The Bad
#1: Device Provisioning http://www.bunnyhero.org/2011/02/21/an-ios-dev-comic/
#2: No guaranteed constructor Init InitWithNibName InitWithFrame InitWithRect InitWithCoder
#3: Memory Management
Retain Copy Object Assign
#4: Touch Event Propagation
#5: Tooling Device testing against multiple OS versions Interface Builder craziness Window management .projfile conflicts Folders in Xcode Download size
Links http://goo.gl/ZBsYC
Thanks Twitter: @arpit Blog: http://arpitonline.com/blog/

Más contenido relacionado

La actualidad más candente

I didnt know Flex could do this
I didnt know Flex could do thisI didnt know Flex could do this
I didnt know Flex could do this
e27
 
Challenges of AJAX Development for Smartphone Platforms
Challenges of AJAX Development for Smartphone PlatformsChallenges of AJAX Development for Smartphone Platforms
Challenges of AJAX Development for Smartphone Platforms
MaxMotovilov
 
Ui Testing on Windows Phone
Ui Testing on Windows PhoneUi Testing on Windows Phone
Ui Testing on Windows Phone
Stuart Lodge
 

La actualidad más candente (20)

Advanced PowerShell Automation
Advanced PowerShell AutomationAdvanced PowerShell Automation
Advanced PowerShell Automation
 
I didnt know Flex could do this
I didnt know Flex could do thisI didnt know Flex could do this
I didnt know Flex could do this
 
Lesson 7 - Video Software
Lesson 7 - Video SoftwareLesson 7 - Video Software
Lesson 7 - Video Software
 
Lesson 4 - Animation Software
Lesson 4 - Animation SoftwareLesson 4 - Animation Software
Lesson 4 - Animation Software
 
Viliam Elischer - Ember.js - Jak zatopit a neshořet!
Viliam Elischer - Ember.js - Jak zatopit a neshořet!Viliam Elischer - Ember.js - Jak zatopit a neshořet!
Viliam Elischer - Ember.js - Jak zatopit a neshořet!
 
Jvm
JvmJvm
Jvm
 
Developing intelligent bots from the beginning
Developing intelligent bots from the beginningDeveloping intelligent bots from the beginning
Developing intelligent bots from the beginning
 
Appledoc Tool Review
Appledoc Tool ReviewAppledoc Tool Review
Appledoc Tool Review
 
Java programming language
Java programming languageJava programming language
Java programming language
 
Introduction to JAVA
Introduction to JAVAIntroduction to JAVA
Introduction to JAVA
 
On The Shoulders Of Giants
On The Shoulders Of GiantsOn The Shoulders Of Giants
On The Shoulders Of Giants
 
Ember.js - Jak zatopit a neshořet!
Ember.js - Jak zatopit a neshořet!Ember.js - Jak zatopit a neshořet!
Ember.js - Jak zatopit a neshořet!
 
What new in Microsoft AI?
What new in Microsoft AI?What new in Microsoft AI?
What new in Microsoft AI?
 
Challenges of AJAX Development for Smartphone Platforms
Challenges of AJAX Development for Smartphone PlatformsChallenges of AJAX Development for Smartphone Platforms
Challenges of AJAX Development for Smartphone Platforms
 
Ui Testing on Windows Phone
Ui Testing on Windows PhoneUi Testing on Windows Phone
Ui Testing on Windows Phone
 
What are the different programming languages that are supported by selenium
What are the different programming languages that are supported by seleniumWhat are the different programming languages that are supported by selenium
What are the different programming languages that are supported by selenium
 
Unit 316 - Lesson 3 - Platforms
Unit 316 - Lesson 3 - PlatformsUnit 316 - Lesson 3 - Platforms
Unit 316 - Lesson 3 - Platforms
 
Decision Makers Crib: Mobile App Development - Analysis of common frameworks ...
Decision Makers Crib: Mobile App Development - Analysis of common frameworks ...Decision Makers Crib: Mobile App Development - Analysis of common frameworks ...
Decision Makers Crib: Mobile App Development - Analysis of common frameworks ...
 
Builder webinar
Builder webinarBuilder webinar
Builder webinar
 
PhoneGap
PhoneGapPhoneGap
PhoneGap
 

Destacado

Visita ao Insituto S. Manuel pela turma 6º G PIEF
Visita ao Insituto S. Manuel pela turma 6º G PIEFVisita ao Insituto S. Manuel pela turma 6º G PIEF
Visita ao Insituto S. Manuel pela turma 6º G PIEF
Luisa Lamas
 
Ms dynamics crm_and_social_technologies_de_finalv2
Ms dynamics crm_and_social_technologies_de_finalv2Ms dynamics crm_and_social_technologies_de_finalv2
Ms dynamics crm_and_social_technologies_de_finalv2
Andreas Kollmorgen
 
Microservices – die Architektur für Agile-Entwicklung?
Microservices – die Architektur für Agile-Entwicklung?Microservices – die Architektur für Agile-Entwicklung?
Microservices – die Architektur für Agile-Entwicklung?
Christian Baranowski
 

Destacado (6)

Visita ao Insituto S. Manuel pela turma 6º G PIEF
Visita ao Insituto S. Manuel pela turma 6º G PIEFVisita ao Insituto S. Manuel pela turma 6º G PIEF
Visita ao Insituto S. Manuel pela turma 6º G PIEF
 
Ms dynamics crm_and_social_technologies_de_finalv2
Ms dynamics crm_and_social_technologies_de_finalv2Ms dynamics crm_and_social_technologies_de_finalv2
Ms dynamics crm_and_social_technologies_de_finalv2
 
Kindle1
Kindle1Kindle1
Kindle1
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
áLbum pegatinas curso 2013 14
áLbum pegatinas curso 2013 14áLbum pegatinas curso 2013 14
áLbum pegatinas curso 2013 14
 
Microservices – die Architektur für Agile-Entwicklung?
Microservices – die Architektur für Agile-Entwicklung?Microservices – die Architektur für Agile-Entwicklung?
Microservices – die Architektur für Agile-Entwicklung?
 

Similar a 5 Ways iOS is better and worse than Flash

Lotusphere 2011 Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
Lotusphere 2011  Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...Lotusphere 2011  Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
Lotusphere 2011 Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
Ryan Baxter
 
Building Buzzword (Flex Camp Boston 2007)
Building Buzzword (Flex Camp Boston 2007)Building Buzzword (Flex Camp Boston 2007)
Building Buzzword (Flex Camp Boston 2007)
dcoletta
 
Adobeflex(2)
Adobeflex(2)Adobeflex(2)
Adobeflex(2)
tomcoh
 
Eclipsist2009 Rich Client Roundup
Eclipsist2009 Rich Client RoundupEclipsist2009 Rich Client Roundup
Eclipsist2009 Rich Client Roundup
Murat Yener
 

Similar a 5 Ways iOS is better and worse than Flash (20)

Cross Platform Mobile Technologies
Cross Platform Mobile TechnologiesCross Platform Mobile Technologies
Cross Platform Mobile Technologies
 
Afik Gal @alphageeks: Flex Intro
Afik Gal @alphageeks: Flex IntroAfik Gal @alphageeks: Flex Intro
Afik Gal @alphageeks: Flex Intro
 
Lezione 03 Introduzione a react
Lezione 03   Introduzione a reactLezione 03   Introduzione a react
Lezione 03 Introduzione a react
 
Adobe flex an overview
Adobe flex  an overviewAdobe flex  an overview
Adobe flex an overview
 
Flex and Java
Flex and JavaFlex and Java
Flex and Java
 
Lotusphere 2011 Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
Lotusphere 2011  Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...Lotusphere 2011  Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
Lotusphere 2011 Jmp103 - Jumpstart Your "Jedi Plug-in Development Skills" wi...
 
Apache Flex - Enterprise ready GUI framework
Apache Flex - Enterprise ready GUI frameworkApache Flex - Enterprise ready GUI framework
Apache Flex - Enterprise ready GUI framework
 
Developing RIAs... 10 reasons to use Adobe Flex
Developing RIAs... 10 reasons to use Adobe FlexDeveloping RIAs... 10 reasons to use Adobe Flex
Developing RIAs... 10 reasons to use Adobe Flex
 
Building Buzzword (Flex Camp Boston 2007)
Building Buzzword (Flex Camp Boston 2007)Building Buzzword (Flex Camp Boston 2007)
Building Buzzword (Flex Camp Boston 2007)
 
Introduction to Flex
Introduction to FlexIntroduction to Flex
Introduction to Flex
 
Plug yourself in and your app will never be the same (2 hr editon)
Plug yourself in and your app will never be the same (2 hr editon)Plug yourself in and your app will never be the same (2 hr editon)
Plug yourself in and your app will never be the same (2 hr editon)
 
Plug yourself in and your app will never be the same (2 hour edition)
Plug yourself in and your app will never be the same (2 hour edition)Plug yourself in and your app will never be the same (2 hour edition)
Plug yourself in and your app will never be the same (2 hour edition)
 
Adobe Flex
Adobe FlexAdobe Flex
Adobe Flex
 
Ordina SOFTC Presentation - TFS and JAVA, better together
Ordina SOFTC Presentation - TFS and JAVA, better togetherOrdina SOFTC Presentation - TFS and JAVA, better together
Ordina SOFTC Presentation - TFS and JAVA, better together
 
Flash Catalyst at Flex Camp Orange County
Flash Catalyst at Flex Camp Orange CountyFlash Catalyst at Flex Camp Orange County
Flash Catalyst at Flex Camp Orange County
 
Adobeflex(2)
Adobeflex(2)Adobeflex(2)
Adobeflex(2)
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
 
webOS App by Example: Sorting Thoughts
webOS App by Example: Sorting ThoughtswebOS App by Example: Sorting Thoughts
webOS App by Example: Sorting Thoughts
 
Introduction to Adobe Flex - Zaloni
Introduction to Adobe Flex - ZaloniIntroduction to Adobe Flex - Zaloni
Introduction to Adobe Flex - Zaloni
 
Eclipsist2009 Rich Client Roundup
Eclipsist2009 Rich Client RoundupEclipsist2009 Rich Client Roundup
Eclipsist2009 Rich Client Roundup
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
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
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

5 Ways iOS is better and worse than Flash