App Architecture: Faster, Better... Simpler
summary
Argues that app architecture should be defined by components and their relations, not by state libraries or buzzword patterns, and shows a movie app graph where content is a stable, highly depended-on module and dashboard is an unstable, dependency-heavy entry point; cycles merge modules into an untestable blob. Recommends running detect cycles with LEUS in CI and using dart code metric analyze-structure to build component graphs, avoid needless interfaces and layers, and prefer small, cohesive modules to reduce maintenance effort.
AI-written summary · about
chapters (18)
- 0:00Introduction
- 1:06What app architecture is not
- 3:53Goal of software architecture
- 4:55Defining app architecture
- 6:00Components in architecture
- 8:11Layers inside component
- 11:05Simplifying component layers
- 12:30Dependency inversion in Dart
- 14:54Misunderstood SOLID principles
- 17:24Applying SOLID reasonably
- 18:30Misinterpretations of DRY
- 19:55Component relations
- 22:00Stable and unstable components
- 24:12Avoiding cyclic dependencies
- 25:37Dependency analysis tools
- 28:05Benefits of this approach
- 30:39Relation to clean architecture
- 32:50Summary
related talks
18mSoftware Architecture Building Better Applications with Architecture Best Practices
18mArchitecture is vital to build an app. But what is that concretely?
19mA humble approach to Flutter app architecture
40mModularizing Android Applications
35mSweet Architecture
22mArchitecture First: Foundations for Long Term Success
32mBuild a modular Android app architecture
38mArchitecture Agnostic UI Development
