Post on 15-May-2015
description
transcript
High-Performance Coding, Building & Testing for Multiple Platforms and Devices Jethro Villegas Sr. Engineering Manager Adobe Flash Player
A Very Brief History
• FutureSplash started out as a Drawing application for a pen-based computer
• Today, the Flash Runtime runs on hundreds of millions of desktops and devices
Scaling up to Millions of Devices
• All features are supported on the main desktop platforms, at parity.
• All features are supported in software.
• All code compiles as straight C++
• The SDK and mobile player supports full web browsing.
Abstracting out the Device Internals
platformfonts.h 1 #if defined( FLASH_STAGECRAFT )!2 !#include "./stagecraft/aefonts.h"!3 #elif defined( WIN32 )!4 ! #include "./win/win32fonts.h"!5 #elif defined(ANDROID)!6 ! #include "android/AndroidFonts.h"!7 #elif defined( UNIX )!8 ! #include "unixfonts.h"!9 #elif defined( _MAC )!10 ! #if defined( FP_SDK_COCOA_TOUCH )!11 ! #include "./osx/cocoatouch/CTEDevice.h"!12 ! #else!13 ! #include "MacFonts.h"!14 ! #endif!15 #else!16 ! Error. Not defined.!17 #endif!
Scaling up to Millions of Devices
• All features are supported on the main desktop platforms, at parity.
• All features are supported in software.
• All code compiles as straight C++
• The SDK and mobile player supports full web browsing.
Specifying the Code to Build/Test
Specifying the Code to Build/Test
Specifying the Code to Build/Test
Specifying the Code to Build/Test
Specifying the Code to Build/Test
The Target Platforms to Build/Test
The Target Platforms to Build/Test
The Target Platforms to Build/Test
The Target Platforms to Build/Test
Branch Status
Branch Status
Branch Status
Branch Status
Branch Status
Branch Status
Branch Details
Branch Details
Automated Testing
Automated Testing
Automated Testing
Challenges
• Scalability
• Code Throughput
• Systems Engineering
• Platform Proliferation • Can you help? Contact me: jet@adobe.com