One thing I’ve noticed is that it’s really easy to implicitly update state object as if you’ve written
this.state.object = newObject unaware of the consequences.
Lets say, we’ve got object
cars set in the state and we want to update a single car with new properties. Something like this: