Full-stack frameworks like Symfony help ease the process of building modular applications by providing all of the necessary components, from user interface to data store. This enables a much rapid cycle of delivering individual bits and pieces of application as it grows. We will experience this later on by segmenting our application in several smaller modules, or bundles in Symfony terminology.
Moving forward we will install Symfony, create a blank project, and start looking into individual framework features essential for building modular application:
Controller
Routing
Templates
Forms
The bundle system
Databases and Doctrine
Testing
Validation