Interview frequency: …
Short answer
Add it when you combine data from repositories, when business logic becomes complex, or when you need to reuse the logic between view models.
Explanation
The domain layer is optional in Flutter's guide; always adding it increases classes and cognitive load. Start from the view model and then extract a use case when one of these reasons clearly appears.
Common mistakes
- Creating a use case for every simple getter.
- Putting complex logic in the view just because data access is easy.