Summary
In this chapter, we have learned the importance of following the IoC principle in order to maintain a flexible and scalable app architecture. We have seen the benefits and limitations of various pattern implementations, such as the singleton pattern, DI pattern, and SL pattern. We obtained practical experience with various tools, such as RepositoryProvider
from flutter_bloc
and GetIt
from get_it
. Moreover, we have seen how IoC patterns in combination with the repository pattern offer a truly flexible design.
In the next chapter, Chapter 8, Ensuring Scalability and Maintainability with Layered Architecture, we will put together everything we have learned about our app design into architecting a scalable and maintainable structure, as well as learn even more useful principles.