Robert C. Martin (Uncle Bob) introduced clean architecture which enforces separation of concerns between the different layers of a system. This makes the system testable and independent of any frameworks. In this talk, we will go through the different layers of a clean architecture application. We will discuss the roles and responsibility for each layer and then look into implementation using Flutter and Dart. We will also discover how BLoC lends itself well to clean architecture using samples for a project I've been working on.
![](https://i.ytimg.com/vi/OaP2zedthLk/maxresdefault.jpg)