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

11
ADOBE AIR DEVELOPMENT + PROFILING using the right tools for the job Copyright © 2014 Interactive Pioneers GmbH

description

”Adobe AIR Development + Profiling: using the right tools for the job” talk slides for Hawaii Flash User Group, 30.05.2014; Freunde der Medien Hamburg 13.06.2014. Overview of the recent FDT (Flexible Development Toolkit) features, e.g. AutoComplete, QuickFixes, Launchers, Profiles. Overview of FDT Memory Profiler for resolving memory leaks in Adobe AIR applications.

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

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

ADOBE AIR DEVELOPMENT + PROFILING

using the right tools for the job !

Copyright © 2014 Interactive Pioneers GmbH

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

ABOUT ME• Ain Tohvri

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 to Vim.

• Find me on Twitter (@tekkie), Github (@ain) or at a Rösterei (café) in Hamburg, Germany. Come over for a free coffee!

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

TODAY’S TOPICS• 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?

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

FDT FLEXIBLE DEVELOPMENT TOOLKIT

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

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

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

FDT TODAY

• 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

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

AUTOCOMPLETION

• Ctrl + Space

• Any variables, methods, constructor

• Metadata

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

• Special: Cmd + 0 on a variable

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

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

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

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

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

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/

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

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