Web Frameworks and MVC
The previous approaches are perfectly fine for independent scripts or for very simple web applications.
But, as soon as the application starts to grow, they suddenly show their limits:
Common parts of the code (for example, database connection) must be shared between the scripts
Developers should concentrate on coding the application core, without dwelling on the technicalities of the web infrastructure (such as setting
Content-Type)
Deploying the application in a different environment often requires a lot of changes (parameters, setup, and so on)
A web framework provides the programming infrastructure for creating web applications so that the developers can focus on writing clean maintainable code without reinventing the wheel and creating sites that are faster and more robust.
Modern frameworks give us everything we need to start working: a template engine, a way to save and access data in a database, and many more features.
Usually, a web framework is a collection of...