SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
mxmlc: fitter, happier, more productive
Brian Deitte
more productive (with faster compiles)
Tips for Flex Builder 3
• Build every application in one project using
  multiple source paths
• Build parts of the applications as SWCs
• Close extra projects
• Use a system font instead of embedding fonts
• Turn off "Copy non-embedded files to source
  folder"
• Turn off "Build Automatically"
• More tips at: http://www.deitte.com/
  archives/2008/10/how_do_you_spee.htm
General Flex 3 Speedup
• To get a 25% speedup, use pieces of Flex 4:
  http://www.deitte.com/archives/2008/10/
  a_faster_flex_3.htm

• Want more of a speedup? Use Flex 4
Tips for Flash Builder 4
• Use the Flex 4 SDK

• Use the Flex Builder 3 tips other than using
  one large project
fitter (with smaller SWFs)
Use You Compiler Options Wisely
• Use framework RSL... if at all possible:
http://livedocs.adobe.com/flex/3/html/
help.html?content=rsl_09.html

• Use conditional compilation... with care:
http://livedocs.adobe.com/flex/3/html/
help.html?content=compilers_21.html
Third-party Happiness
• Third-party projects can help with smaller
  SWFs
• Tested with 431 KB SWF that uses framework
  RSL, Cairngorm, and has a lot of embedded
  images
• Also tested with a 254 KB SWF that only uses
  AS3, architected for size, and has no
  embedded images
Flash Optimizer
• http://www.flashoptimizer.com/

• Using "Good" compression settings:
  • SWF #1: 17% savings
  • SWF #2: 0% savings
secureSWF
• http://www.kindisoft.com

• Using the "Optimize for size" settings:
  • SWF #1: 4% savings
  • SWF #2: 5% savings
Apparat Reducer
• http://code.google.com/p/apparat/

• At .5 for both settings:
  • SWF #1: 3% savings
  • SWF #2: 0% savings
Apparat TAAS
• http://code.google.com/p/apparat/
• Look for more details as they show up on
  http://blog.joa-ebert.com/
• Lots of excitement around the project with
  many potential compiler optimizations
• Based on TODOs in TaasBuilder.java, not
  usable right now for real SWFs
Flex 4 Changes
• Image compression in Embed. To quote:

"The fix for SDK-18954 adds Embed support for smoothing,
compression and quality. For example:

  [Embed (source='foo.png', smoothing="false",
compression="true", quality="80")]
  private var bar:Class;

smoothing and compression are booleans and quality is a
percentage between 0 and 100. quality requires that
compression be true. The actual smoothing is implemented by
the player at runtime."
Future Changes?
• In Alchemy: C to LLVM to AVM2 bytecode

• In iPhone kit: AS3 to LLVM to ARM assembly
  code

• In Future: AS3 to LLVM to AVM2 bytecode?
happier (with answers to your questions)

Mais conteúdo relacionado

Mais procurados

5 wordpress squeeze site plugins
5 wordpress squeeze site plugins5 wordpress squeeze site plugins
5 wordpress squeeze site plugins
gen78tau7
 
Week 11 - Hosting and Migration
Week 11 - Hosting and MigrationWeek 11 - Hosting and Migration
Week 11 - Hosting and Migration
henri_makembe
 
Week 5 - Introduction to plug-ins and widgets
Week 5 - Introduction to plug-ins and widgetsWeek 5 - Introduction to plug-ins and widgets
Week 5 - Introduction to plug-ins and widgets
henri_makembe
 
Week 7 introduction to theme development
Week 7   introduction to theme developmentWeek 7   introduction to theme development
Week 7 introduction to theme development
henri_makembe
 
PHPNW14 - Getting Started With AWS
PHPNW14 - Getting Started With AWSPHPNW14 - Getting Started With AWS
PHPNW14 - Getting Started With AWS
benwaine
 
Week 9 - Introduction to Child Themes
Week 9  - Introduction to Child ThemesWeek 9  - Introduction to Child Themes
Week 9 - Introduction to Child Themes
henri_makembe
 

Mais procurados (20)

Build 2017 - B8093 - Nextgen UWP app distribution: Building extensible, strea...
Build 2017 - B8093 - Nextgen UWP app distribution: Building extensible, strea...Build 2017 - B8093 - Nextgen UWP app distribution: Building extensible, strea...
Build 2017 - B8093 - Nextgen UWP app distribution: Building extensible, strea...
 
Joomla 4.0 what's coming in future
Joomla 4.0   what's coming in futureJoomla 4.0   what's coming in future
Joomla 4.0 what's coming in future
 
Tips for site builders and administrators
Tips for site builders and administratorsTips for site builders and administrators
Tips for site builders and administrators
 
5 wordpress squeeze site plugins
5 wordpress squeeze site plugins5 wordpress squeeze site plugins
5 wordpress squeeze site plugins
 
Week 11 - Hosting and Migration
Week 11 - Hosting and MigrationWeek 11 - Hosting and Migration
Week 11 - Hosting and Migration
 
Using composer with WordPress
Using composer with WordPressUsing composer with WordPress
Using composer with WordPress
 
I Can Haz More Performanz?
I Can Haz More Performanz?I Can Haz More Performanz?
I Can Haz More Performanz?
 
Week 5 - Introduction to plug-ins and widgets
Week 5 - Introduction to plug-ins and widgetsWeek 5 - Introduction to plug-ins and widgets
Week 5 - Introduction to plug-ins and widgets
 
Leveraging the Power of Custom Elements in Gutenberg
Leveraging the Power of Custom Elements in GutenbergLeveraging the Power of Custom Elements in Gutenberg
Leveraging the Power of Custom Elements in Gutenberg
 
Increasing Traffic Through Optimization : The Importance of Site Speed
Increasing Traffic Through Optimization : The Importance of Site SpeedIncreasing Traffic Through Optimization : The Importance of Site Speed
Increasing Traffic Through Optimization : The Importance of Site Speed
 
Week 7 introduction to theme development
Week 7   introduction to theme developmentWeek 7   introduction to theme development
Week 7 introduction to theme development
 
wp-config Tips and Tricks
wp-config Tips and Trickswp-config Tips and Tricks
wp-config Tips and Tricks
 
PHPNW14 - Getting Started With AWS
PHPNW14 - Getting Started With AWSPHPNW14 - Getting Started With AWS
PHPNW14 - Getting Started With AWS
 
Getting started with WordPress development
Getting started with WordPress developmentGetting started with WordPress development
Getting started with WordPress development
 
Q6
Q6Q6
Q6
 
WP-CLI: WordCamp NYC 2015
WP-CLI: WordCamp NYC 2015WP-CLI: WordCamp NYC 2015
WP-CLI: WordCamp NYC 2015
 
Web Platform Installer Announcement
Web Platform Installer AnnouncementWeb Platform Installer Announcement
Web Platform Installer Announcement
 
EVOLVE'16 | Deploy | Abhishek Dwevedi | Introduction to AEM Front End Develop...
EVOLVE'16 | Deploy | Abhishek Dwevedi | Introduction to AEM Front End Develop...EVOLVE'16 | Deploy | Abhishek Dwevedi | Introduction to AEM Front End Develop...
EVOLVE'16 | Deploy | Abhishek Dwevedi | Introduction to AEM Front End Develop...
 
Week 9 - Introduction to Child Themes
Week 9  - Introduction to Child ThemesWeek 9  - Introduction to Child Themes
Week 9 - Introduction to Child Themes
 
Tooling for the productive front-end developer
Tooling for the productive front-end developerTooling for the productive front-end developer
Tooling for the productive front-end developer
 

Semelhante a mxmlc: fitter, happier, more productive

Freelancer Weapons of mass productivity
Freelancer Weapons of mass productivityFreelancer Weapons of mass productivity
Freelancer Weapons of mass productivity
Gregg Coppen
 

Semelhante a mxmlc: fitter, happier, more productive (20)

Managing a WordPress Site as a Composer Project by Rahul Bansal @ WordCamp Na...
Managing a WordPress Site as a Composer Project by Rahul Bansal @ WordCamp Na...Managing a WordPress Site as a Composer Project by Rahul Bansal @ WordCamp Na...
Managing a WordPress Site as a Composer Project by Rahul Bansal @ WordCamp Na...
 
JS digest. Decemebr 2017
JS digest. Decemebr 2017JS digest. Decemebr 2017
JS digest. Decemebr 2017
 
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityExpanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate Usability
 
How to prepare a project for automated deployment?
How to prepare a project for automated deployment?How to prepare a project for automated deployment?
How to prepare a project for automated deployment?
 
Best Practices for Building WordPress Applications
Best Practices for Building WordPress ApplicationsBest Practices for Building WordPress Applications
Best Practices for Building WordPress Applications
 
AEM - A Collection of developer friendly tools
AEM - A Collection of developer friendly toolsAEM - A Collection of developer friendly tools
AEM - A Collection of developer friendly tools
 
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
 
Manual 5
Manual 5Manual 5
Manual 5
 
Know the reason behind choosing bootstrap as css framework
Know the reason behind choosing bootstrap as css frameworkKnow the reason behind choosing bootstrap as css framework
Know the reason behind choosing bootstrap as css framework
 
The 5 most common reasons for a slow WordPress site and how to fix them – ext...
The 5 most common reasons for a slow WordPress site and how to fix them – ext...The 5 most common reasons for a slow WordPress site and how to fix them – ext...
The 5 most common reasons for a slow WordPress site and how to fix them – ext...
 
Extension Library - Viagra for XPages
Extension Library - Viagra for XPagesExtension Library - Viagra for XPages
Extension Library - Viagra for XPages
 
XPages -Beyond the Basics
XPages -Beyond the BasicsXPages -Beyond the Basics
XPages -Beyond the Basics
 
20 x Tips to better Optimize your Flash content
20 x Tips to better Optimize your Flash content20 x Tips to better Optimize your Flash content
20 x Tips to better Optimize your Flash content
 
Deep dive into share point framework webparts
Deep dive into share point framework webpartsDeep dive into share point framework webparts
Deep dive into share point framework webparts
 
Freelancer Weapons of mass productivity
Freelancer Weapons of mass productivityFreelancer Weapons of mass productivity
Freelancer Weapons of mass productivity
 
Building JavaScript
Building JavaScriptBuilding JavaScript
Building JavaScript
 
Working with Shortcodes in WordPress
Working with Shortcodes in WordPressWorking with Shortcodes in WordPress
Working with Shortcodes in WordPress
 
Introduction to Office Development Topics
Introduction to Office Development TopicsIntroduction to Office Development Topics
Introduction to Office Development Topics
 
Flash Development Guide
Flash Development GuideFlash Development Guide
Flash Development Guide
 
WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019
 

Mais de Brian Deitte (7)

A Case Study in CQRS/ES
A Case Study in CQRS/ESA Case Study in CQRS/ES
A Case Study in CQRS/ES
 
Delivering Ads in IMA 3
Delivering Ads in IMA 3Delivering Ads in IMA 3
Delivering Ads in IMA 3
 
Life Of An Ad
Life Of An AdLife Of An Ad
Life Of An Ad
 
How RIA Advertising Works (And a Little Bit About Brightcove)
How RIA Advertising Works (And a Little Bit About Brightcove)How RIA Advertising Works (And a Little Bit About Brightcove)
How RIA Advertising Works (And a Little Bit About Brightcove)
 
SDK Hackery
SDK HackerySDK Hackery
SDK Hackery
 
Platform as Art: A Developer’s Perspective
Platform as Art: A Developer’s PerspectivePlatform as Art: A Developer’s Perspective
Platform as Art: A Developer’s Perspective
 
Aftermix And Video
Aftermix And VideoAftermix And Video
Aftermix And Video
 

Último

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 Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
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
 
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
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

mxmlc: fitter, happier, more productive

  • 1. mxmlc: fitter, happier, more productive Brian Deitte
  • 2. more productive (with faster compiles)
  • 3. Tips for Flex Builder 3 • Build every application in one project using multiple source paths • Build parts of the applications as SWCs • Close extra projects • Use a system font instead of embedding fonts • Turn off "Copy non-embedded files to source folder" • Turn off "Build Automatically" • More tips at: http://www.deitte.com/ archives/2008/10/how_do_you_spee.htm
  • 4. General Flex 3 Speedup • To get a 25% speedup, use pieces of Flex 4: http://www.deitte.com/archives/2008/10/ a_faster_flex_3.htm • Want more of a speedup? Use Flex 4
  • 5. Tips for Flash Builder 4 • Use the Flex 4 SDK • Use the Flex Builder 3 tips other than using one large project
  • 7. Use You Compiler Options Wisely • Use framework RSL... if at all possible: http://livedocs.adobe.com/flex/3/html/ help.html?content=rsl_09.html • Use conditional compilation... with care: http://livedocs.adobe.com/flex/3/html/ help.html?content=compilers_21.html
  • 8. Third-party Happiness • Third-party projects can help with smaller SWFs • Tested with 431 KB SWF that uses framework RSL, Cairngorm, and has a lot of embedded images • Also tested with a 254 KB SWF that only uses AS3, architected for size, and has no embedded images
  • 9. Flash Optimizer • http://www.flashoptimizer.com/ • Using "Good" compression settings: • SWF #1: 17% savings • SWF #2: 0% savings
  • 10. secureSWF • http://www.kindisoft.com • Using the "Optimize for size" settings: • SWF #1: 4% savings • SWF #2: 5% savings
  • 11. Apparat Reducer • http://code.google.com/p/apparat/ • At .5 for both settings: • SWF #1: 3% savings • SWF #2: 0% savings
  • 12. Apparat TAAS • http://code.google.com/p/apparat/ • Look for more details as they show up on http://blog.joa-ebert.com/ • Lots of excitement around the project with many potential compiler optimizations • Based on TODOs in TaasBuilder.java, not usable right now for real SWFs
  • 13. Flex 4 Changes • Image compression in Embed. To quote: "The fix for SDK-18954 adds Embed support for smoothing, compression and quality. For example: [Embed (source='foo.png', smoothing="false", compression="true", quality="80")] private var bar:Class; smoothing and compression are booleans and quality is a percentage between 0 and 100. quality requires that compression be true. The actual smoothing is implemented by the player at runtime."
  • 14. Future Changes? • In Alchemy: C to LLVM to AVM2 bytecode • In iPhone kit: AS3 to LLVM to ARM assembly code • In Future: AS3 to LLVM to AVM2 bytecode?
  • 15. happier (with answers to your questions)