Model View Controller (MVC) Frameworks have long existed, but have gained popularity in web application development. The MVC pattern defines a clear separation of concerns in which presentation logic is not mixed with model (domain) logic.