SlideShare a Scribd company logo
ADOBE AIR 	

DEVELOPMENT + PROFILING
using the right tools for the job	

!
Copyright © 2014 Interactive Pioneers GmbH
ABOUT ME
• AinTohvri 

Sr. Software Engineer at Interactive Pioneers GmbH.	

• Flash Platform developer since 1999 (Flash 4), inmate of the Poweflasher
unit (FDT) since 2010.	

• Doing ActionScript, Node.js, PHP, Ruby. DevOps.	

• Using tooling from Eclipse to Netbeans toVim.	

• Find me onTwitter (@tekkie), Github (@ain) or at a Rösterei (café) in
Hamburg, Germany. Come over for a free coffee!
TODAY’STOPICS
• FDT introduction	

• FDT Coding Comfort.Advanced autocomplete and QuickFix features.	

• How AutoCompletion speeds you up	

• How QuickFixes make your refactoring a joy	

• Adobe AIR development + FDT	

• New launchers and profiles: cutting a lot of your legacy ANT spaghetti	

• Compiler constants	

• Deploying the application from FDT Profile	

• Command line capabilities for Continuous Integration	

• FDT Profiler	

• My Adobe AIR app is leaking.What do I do?
FDT	

FLEXIBLE DEVELOPMENTTOOLKIT
FDT HISTORY	

• Started as an internal tool at Powerflasher in 2005 with first public release in 2006	

• Motivation: convert professional software developers over to Flash Platform	

• FDT aimed at the coding comfort from the beginning, trying to match JDT:	

• Live parser	

• Live code completion	

• Live error highlighting
FDTTODAY	

• 9 227 classes	

• 14 QuickFix proposal processors for nearly 150 scenarios	

• 17 AutoCompletion proposal processors for nearly 200 scenarios	

• 13 Warning and error marker processors for nearly 250 scenarios	

• Full support for Adobe AIR on iOS,Android, BlackBerry, Desktop	

• Support for Haxe, Maven,ANT, FlexUnit, FlexJS (in beta), Command Line
AUTOCOMPLETION	

• Ctrl + Space
• Any variables, methods, constructor	

• Metadata	

• Templates, e.g. rect, try, for	

• Special: Cmd + 0 on a variable
QUICKFIXES	

• Cmd + 1 

Ctrl + 1
• To private field, local variable, constant; to existing field	

• Extract to constant, method; surround	

• Attribute keywords	

• Type resolve (with overlap prevention going at a package)	

• All parameters to new fields	

• Function signature
LAUNCHERS AND PROFILES	

• Profile holds your AIR app descriptor
• ANT can be completely avoided in most scenarios	

• Deploy with a single click from the Profile, Profile has to
be bound to Launcher	

• FDT 5 Launchers will have to be upgraded
COMMAND LINE
• Integration to Continuous Integration	

• FDT runs the launcher, compiles it, exits automatically	

• Command: open -W -a ~/Applications/FDT.app --
args -fdt-launch [your project] -fdt-cmd-log
~/Downloads/fdt.log	

• More: http://fdt.powerflasher.com/2014/05/fdt-command-line-handling/
PROFILER	

• Start with Profile Configuration pointing to your launcher	

• Choose between Memory or Performance profiling	

• http://fdt.powerflasher.com/docs/Intro_To_Profiling_Applications
for an example	

• Alter draw_circles() of the Main class to create a
memory leak

More Related Content

Recently uploaded

Cymulate (Breach and Attack Simulation).
Cymulate (Breach and Attack Simulation).Cymulate (Breach and Attack Simulation).
Cymulate (Breach and Attack Simulation).
luckyk1575
 
527598851-ppc-due-to-various-govt-policies.pdf
527598851-ppc-due-to-various-govt-policies.pdf527598851-ppc-due-to-various-govt-policies.pdf
527598851-ppc-due-to-various-govt-policies.pdf
rajpreetkaur75080
 

Recently uploaded (14)

Cymulate (Breach and Attack Simulation).
Cymulate (Breach and Attack Simulation).Cymulate (Breach and Attack Simulation).
Cymulate (Breach and Attack Simulation).
 
Understanding Poverty: A Community Questionnaire
Understanding Poverty: A Community QuestionnaireUnderstanding Poverty: A Community Questionnaire
Understanding Poverty: A Community Questionnaire
 
art integrated project of computer applications
art integrated project of computer applicationsart integrated project of computer applications
art integrated project of computer applications
 
Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...
Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...
Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...
 
05232024 Joint Meeting - Community Networking
05232024 Joint Meeting - Community Networking05232024 Joint Meeting - Community Networking
05232024 Joint Meeting - Community Networking
 
Deciding The Topic of our Magazine.pptx.
Deciding The Topic of our Magazine.pptx.Deciding The Topic of our Magazine.pptx.
Deciding The Topic of our Magazine.pptx.
 
Oracle Database Administration I (1Z0-082) Exam Dumps 2024.pdf
Oracle Database Administration I (1Z0-082) Exam Dumps 2024.pdfOracle Database Administration I (1Z0-082) Exam Dumps 2024.pdf
Oracle Database Administration I (1Z0-082) Exam Dumps 2024.pdf
 
The Canoga Gardens Development Project. PDF
The Canoga Gardens Development Project. PDFThe Canoga Gardens Development Project. PDF
The Canoga Gardens Development Project. PDF
 
527598851-ppc-due-to-various-govt-policies.pdf
527598851-ppc-due-to-various-govt-policies.pdf527598851-ppc-due-to-various-govt-policies.pdf
527598851-ppc-due-to-various-govt-policies.pdf
 
OC Streetcar Final Presentation-Downtown Santa Ana
OC Streetcar Final Presentation-Downtown Santa AnaOC Streetcar Final Presentation-Downtown Santa Ana
OC Streetcar Final Presentation-Downtown Santa Ana
 
ServiceNow CIS-Discovery Exam Dumps 2024
ServiceNow CIS-Discovery Exam Dumps 2024ServiceNow CIS-Discovery Exam Dumps 2024
ServiceNow CIS-Discovery Exam Dumps 2024
 
The Influence and Evolution of Mogul Press in Contemporary Public Relations.docx
The Influence and Evolution of Mogul Press in Contemporary Public Relations.docxThe Influence and Evolution of Mogul Press in Contemporary Public Relations.docx
The Influence and Evolution of Mogul Press in Contemporary Public Relations.docx
 
ACM CHT Best Inspection Practices Kinben Innovation MIC Slideshare.pdf
ACM CHT Best Inspection Practices Kinben Innovation MIC Slideshare.pdfACM CHT Best Inspection Practices Kinben Innovation MIC Slideshare.pdf
ACM CHT Best Inspection Practices Kinben Innovation MIC Slideshare.pdf
 
Breathing in New Life_ Part 3 05 22 2024.pptx
Breathing in New Life_ Part 3 05 22 2024.pptxBreathing in New Life_ Part 3 05 22 2024.pptx
Breathing in New Life_ Part 3 05 22 2024.pptx
 

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 

Adobe AIR Development + Profiling: using the right tools for the job

  • 1. ADOBE AIR DEVELOPMENT + PROFILING using the right tools for the job ! Copyright © 2014 Interactive Pioneers GmbH
  • 2. ABOUT ME • AinTohvri 
 Sr. Software Engineer at Interactive Pioneers GmbH. • Flash Platform developer since 1999 (Flash 4), inmate of the Poweflasher unit (FDT) since 2010. • Doing ActionScript, Node.js, PHP, Ruby. DevOps. • Using tooling from Eclipse to Netbeans toVim. • Find me onTwitter (@tekkie), Github (@ain) or at a Rösterei (café) in Hamburg, Germany. Come over for a free coffee!
  • 3. TODAY’STOPICS • FDT introduction • FDT Coding Comfort.Advanced autocomplete and QuickFix features. • How AutoCompletion speeds you up • How QuickFixes make your refactoring a joy • Adobe AIR development + FDT • New launchers and profiles: cutting a lot of your legacy ANT spaghetti • Compiler constants • Deploying the application from FDT Profile • Command line capabilities for Continuous Integration • FDT Profiler • My Adobe AIR app is leaking.What do I do?
  • 5. FDT HISTORY • Started as an internal tool at Powerflasher in 2005 with first public release in 2006 • Motivation: convert professional software developers over to Flash Platform • FDT aimed at the coding comfort from the beginning, trying to match JDT: • Live parser • Live code completion • Live error highlighting
  • 6. FDTTODAY • 9 227 classes • 14 QuickFix proposal processors for nearly 150 scenarios • 17 AutoCompletion proposal processors for nearly 200 scenarios • 13 Warning and error marker processors for nearly 250 scenarios • Full support for Adobe AIR on iOS,Android, BlackBerry, Desktop • Support for Haxe, Maven,ANT, FlexUnit, FlexJS (in beta), Command Line
  • 7. AUTOCOMPLETION • Ctrl + Space • Any variables, methods, constructor • Metadata • Templates, e.g. rect, try, for • Special: Cmd + 0 on a variable
  • 8. QUICKFIXES • Cmd + 1 
 Ctrl + 1 • To private field, local variable, constant; to existing field • Extract to constant, method; surround • Attribute keywords • Type resolve (with overlap prevention going at a package) • All parameters to new fields • Function signature
  • 9. LAUNCHERS AND PROFILES • Profile holds your AIR app descriptor • ANT can be completely avoided in most scenarios • Deploy with a single click from the Profile, Profile has to be bound to Launcher • FDT 5 Launchers will have to be upgraded
  • 10. COMMAND LINE • Integration to Continuous Integration • FDT runs the launcher, compiles it, exits automatically • Command: open -W -a ~/Applications/FDT.app -- args -fdt-launch [your project] -fdt-cmd-log ~/Downloads/fdt.log • More: http://fdt.powerflasher.com/2014/05/fdt-command-line-handling/
  • 11. PROFILER • Start with Profile Configuration pointing to your launcher • Choose between Memory or Performance profiling • http://fdt.powerflasher.com/docs/Intro_To_Profiling_Applications for an example • Alter draw_circles() of the Main class to create a memory leak