Optimising delivery.
WHAT AFFECTS PERCEIVED PERFORMANCE
Frame rendering during animation and scrolling Startup time Rebuild scope
WHAT CAUSES DROPPED FRAMES
Heavy work in build methods Expensive layout Large images decoded during scrolling Synchronous work on the main isolate
WHAT TO USE FOR HEAVY COMPUTATION
A separate isolate.
WHY
Dart is single-threaded per isolate, so heavy work blocks rendering.
WHAT TO DO ABOUT IMAGES
Size them appropriately and cache them.
WHAT TO MEASURE WITH
The framework's performance overlay and profiling tools.
WHAT TO ALWAYS PROFILE IN
A release build.
WHY
Debug builds are substantially slower and mislead entirely.
WHAT AFFECTS APPLICATION SIZE
The framework itself, which is a fixed cost Packages included Assets and fonts
WHAT TO DO
Build per architecture rather than universally Remove unused packages, assets and fonts Subset fonts where possible
WHY SIZE MATTERS HERE
Download size is a genuine barrier on metered connections.
WHAT TO CHECK
The final size, and compare it against alternatives.