dart-logic-patterns
Installation
SKILL.md
Algorithms & Logic
The efficiency of your business logic directly impacts battery life and responsiveness.
Complexity Analysis
- Big O Awareness: Understand the cost of your operations. Avoid O(n²) or higher on the main thread for datasets larger than a few hundred items.
- Data Structure Selection:
Map: Fast key-based lookups.Set: Fast unique item management.List: Fast indexing and sequential access.LinkedHashSet/Map: Preserves insertion order while providing fast lookups.
Logic Patterns
- Debouncing: Delay execution until a user stops interacting (e.g., search-as-you-type).
- Throttling: Limit execution to at most once every interval (e.g., scrolling events).
- Memoization: Cache the results of expensive pure functions based on their arguments. Use
package:memoizeor custom implementations. - Pattern Matching (Dart 3+): Use switch expressions and exhaustive pattern matching for control flow instead of deeply nested if-else chains. This is a core part of clean Dart logic.