Performance
Priority: P1 (OPERATIONAL)
Performance optimization techniques for smooth 60fps Flutter applications.
- •Rebuilds: Use
constwidgets andbuildWhen/selectfor granular updates. - •Lists: Always use
ListView.builderfor item recycling. - •Heavy Tasks: Use
compute()orIsolatesfor parsing/logic. - •Repaints: Use
RepaintBoundaryfor complex animations. UsedebugRepaintRainbowEnabledto debug. - •Images: Use
CachedNetworkImage+memCacheWidth.precachePicturefor SVGs.
🚫 Anti-Patterns
- •Large Rebuilds:
**No SetState at Root**: Use granular builders (BlocBuilder, Consumer). - •Logic in Build:
**No Heavy Work in body**: Perform parsing/sorting in the Business Layer. - •Missing Const:
**No Dynamic Leaf Widgets**: Use const where possible.
dart
BlocBuilder<UserBloc, UserState>( buildWhen: (p, c) => p.id != c.id, builder: (context, state) => Text(state.name), )