SYMFONY
Lays out a pragmatic approach to developing web applications with Symfony 5: from scratch to production.
Writing healthy, reusable Symfony2 code
Decoupling your code is a way to make it future-proof (without doing too much work that "you ain't gonna need").