WORK IN PROGRESS
Let's start by talking about what State even IS.
In the broadest possible sense, the state of an app is everything that exists in memory when the app is running. This includes the app’s assets, all the variables that the Flutter framework keeps about the UI, animation state, textures, fonts, and so on. While this broadest possible definition of state is valid, it’s not very useful for architecting an app.
When we're discussing managing state, it's really a discussion about the best practices in the design of your code to change the state of your application. For the purposes of this guide, i'll use software design and architecture interchangeably.