MVC development gets a new life in mobile apps

Microsoft, Java, and Ruby MVC frameworks are all adopting mobile-specific tools

Usually, technologists are quick to move on to the latest innovations and relegate older computing methods to the history books. But Model-View-Controller, or MVC, is a software development method that has withstood the test of time because, quite simply, it still works. Popular in Web application development, MVC is now finding a new life in mobile app development.

Despite being decades old, MVC is being applied to the latest trends in software development: Web and mobile applications. MVC arose out of the SmallTalk project in 1979 at the fabled Xerox PARC research facility. Adherents these days include major vendors such as Microsoft, as well as lesser-known companies such as Jupiter Consulting. MVC is used with the popular Ruby on Rails development framework and with the Spring Java framework.

MVC frameworks come in both client and server varieties. On the server side is Spring MVC, which is a module of the Spring Framework for Java development. Ruby on Rails also is server-focused MVC technology. On the client side is JavaScriptMVC, a development technology based on the jQuery JavaScript library. JavaScriptMVC 3 features a multibuild capability, which grabs shared scripts from different sites and provides optimal caching, says Jupiter Consulting CEO Justin Meyer, primary developer of JavaScriptMVC. Thus, he says, "JavaScriptMVC provides very solid functional testing for the browser." Other MVC frameworks include the Apple's Cocoa, Apache Foundation's Struts, Zend and the Symfony project for PHP, and the Catalyst project for Perl.

MVC's move into mobile apps
In Web development, "MVC gives you extreme control over the HTML and JavaScript," Hanselman says. Developers implement controllers that access server-side resources such as HTML for REST-based, server-side Web apps. Requests are routed the client to a Web server, and then to the correct controllers that process the requests. "It's the way to do it today," Donald says.

To continue reading this article register now

How to choose a low-code development platform