MVC frameworks can be implemented quickly and combined with manually-written code that introduces the all-important business logic (the stuff that determines the real-world business rules for such software).
The Model-View-Controller pattern helps developers organise their code in an uncluttered, approachable manner. The three elements can be very simply described as follows:
- Model. This represents the underlying structure of data within an application.
- View. The user interface – everything that can be seen and interacted with on screen.
- Controller. This handles the input from any View element that is interacted with by the user and manipulates the Model accordingly.
By dividing any piece of software into the three interconnected parts above, developers can focus on each element independently while always being mindful of its effect on the other areas of the app.
A great framework for mobile and web app development, consisting of three widgets: UI Web (everything you need to build a modern website), UI Mobile (offers the ability to build mobile web apps that could be mistaken for native apps) and UI DataVis (enables developers to implement beautiful user-facing visualisation of data and reports).
2. Sencha Touch
3. jQuery Mobile
Originally released in 2011, Ember takes cues from Angular when it comes to the ability to create dynamic user-facing elements for web apps. Like Google’s framework, Ember can update the View when the Model changes and vice versa, keeping the mechanics of apps perfectly in sync.
Used by Pinterest, Walmart and Delicious, the Backbone framework is purposefully simple, easy to learn and light on its feet when it comes to deployment. Many developers love the ease with which Backbone.js can be slotted into any project.
A relatively young framework, Aurelia was originally released in January 2015 and can trace its roots back to AngularJS. It is notable for its vast collection of small libraries from which developers can pick and choose without having to implement the entire framework.
Another Google invention, the Polymer framework extends the capabilities of HTML code by using web components. It means that standard HTML5 elements can be customised (for example, <audio> could become <my-audio>).
A Note On Cross-Platform Development
With so many devices and operating systems now on the market, developers are clamouring for simple ways to create apps using HTML5 technology. Thankfully, a number of platforms make cross-platform development eminently approachable. Sencha Touch and jQuery Mobile are noted above, but PhoneGap and NativeScript also take some beating.