MVC is especially appropriate for Mobile applications. It can typically have a substantially larger number of specifically purposed user interface modules. So the more rigorous attention to mobile development that is implied by good MVC design makes keeping the design more tightly focused on single-purpose units that are consistent in their abstractions and play well together. At the same time, this pattern helps partition functionality into modules that can more cleanly defined with solid coherence while being more precise about limited cohesion where it properly belongs.
There are few mobile application development frameworks based on MVC pattern available in market. Sencha Touch is a powerful way to build mobile apps, and, because it relies entirely on web technologies, we can easily host those apps on the web server and have users find and access them directly from their mobile browsers. Another one is the M-project that contains all UI and Core files to build jQuery Mobile based mobile HTML5 Apps.
To write mobile application we can think of either of the below cited options to achieve a business need.
- Purely native application using mobile specific development platform and libraries.
- Web based application to address the mobile version of web. In this case HTML5 can play vital role to provide greater capabilities like storage methods, offline cache, etc.
- Hybrid application – developed using Webkit control of mobile platform to render the view using HTML and platform specific APIs to implement the business logic.
Model
The model can be a collection of Java script objects or platform specific classes that form a software application intended to store, and optionally separate, data. A front end object that can communicate with any user interface (for example: a mobile specific custom control that represents graphical user interface or a web component like HTML).
View
The view can represented either by the HTML/HTML5 components or platform tailored UI controls, with ability to view data being transported to the page in various ways.
Controller
The Controller communicates with the front end of the model and loads view with appropriate data.
This is a good article, thanks manish. If possible can you please post some examples of mobile applications that use MVC
ReplyDeleteOn higher note, there is SnechaTouch and M-project, I will share the exact information or links soon
ReplyDeleteThanks Manish!
ReplyDeleteSencha Touch Mobile JavaScript Framework - http://www.sencha.com/products/touch/
ReplyDeleteThe M-Project - http://www.the-m-project.org/
Thanks for the examples Manish
ReplyDeleteMobile application developments have turned popular and largely acquired as well due to its advanced technological influence and better servicesmobile application development providing services at better well planned approach.
ReplyDeleteThis doesn't look like anything in the books. And the revolutionary shift is only going to grow with Generation Y. droid app developers
ReplyDeleteiphone application development
I couldn't agree more with this post. Too bad it's taken me so long to find.
ReplyDeleteWe have an amazing software platform called AIRShip. In normal life, it is the best / simple way to securely move and store data.
Adding new platforms - mobile - is our next step.
I am not the brains or architect of AIRShip, just the lowly ideas guy.
But I would love a larger version of the diagram above - it would be very helpful for my presentations.
If posting here, great. If by email - doug.mielke@useairware.com
thanks
Really means and inspires a lot to hear from you guys.I have bookmarked it and I am looking forward to reading new articles. Keep up the good work..Believe me, This is very helpful for me.
ReplyDeleteMobile App Development Company in Dubai
Android App Development Company in Dubai
Mobile App Development Company in UAE