As web sites became web applications, developers began looking to use ideas and techniques drawn from traditional software development. These included architectural patterns like Model-View-Controller (MVC) and Pipeline that simply were not possible with the server page model. The result was the development of a host of web frameworks across multiple programming languages, including:
- Ruby on Rails , which uses the Ruby programming language and adopts a MVC architecture
- Laravel , which uses the PHP programming language and adopts a MVC architecture
- Django , which uses the Python programming language and adopts a MVC architecture
- Revel , which uses the Go programming language and adopts a Pipeline architecture
- Cowboy , which uses the erlang programming language and adopts a Pipeline architecture
- Phoenix , which uses the elixir programming language, and adopts a Pipeline architecture
Spring and Flask
In this course, we’re going to explore a lightweight web framework that was built for our chosen language:
Both of these frameworks are very powerful, but most importantly, they are extremely flexible and allow us to structure our web application in a way that makes sense for our needs.
On the next pages, we’ll dive a bit deeper into how these web frameworks handle web requests and generate appropriate responses for them.