# 5. Server side: Web app dev with Flask & Spring MVC
###### tags: `Web Applications`
## Model-View-Controller scheme
It is a schema that web applications follow to structure it's workings
The **model** part of the scheme is responsible for managing data and algorithms. Databases belong here.
- Retieves data from the database (HTML and css)
- Represents the data structure and types
> For example, the **model** inside [twitter](www.twitter.com) would **enforce** that a post has an *Author*, *likes count* and *retweet count*.
The **view** part of the scheme is responsible for allowing users to see and retrieve the data, it also collect their input. HTML/CSS belong here.
The **controller** part of the scheme is responsible for interacting with users by managing and regulating their input and responding accordingly.
- Performs the logic of the application (access restrictions, database manipulation, etc)