Over a million developers have joined DZone.
Platinum Partner

Why You Shouldn’t Build An App In 1 Page

· Mobile Zone

The Mobile Zone is brought to you in partnership with CA Technologies.  Spending too much time coding your mobile backend? CA Mobile App Services does the work for you.

Originally posted on: http://geekswithblogs.net/tmurphy/archive/2013/02/06/why-you-shouldnrsquot-build-an-app-in-1-page.aspx

I have seen a number of people boast that they have a 1 page web application design.  Congratulations.  Now ask yourself why you did that and what the impact that design has.  There are reasons that we modularize applications.  One reason is to give the user logical separation of functionality.  The fact that the application transition from one screen to another give the user a visual queue that something significant has changed and they should take notice. 

From a development standpoint all-in-on design usually bring with them maintainability issues.  Back in the days of ASP 2.0 we used to work with a lot of hidden panels and have all of our code in one file.  Where did that get us?  It brought with us increasing amounts of time to find and fix bugs.  I have worked with solutions where other developers have put dozens of UI elements on a page in the name of getting rid of the evil post back flicker.  The result is a nearly unreadable file especially if there are custom templates for data bound elements.

I understand the attraction of this design from a UI perspective but I believe that only the simplest apps can pull this off effectively.  Be practical instead of trying to be superman just to prove that you know every trick of a technology.  In the end both the user and the developer who comes after you with thank you for an application that is clearly broken into functional area.

The Mobile Zone is brought to you in partnership with CA Technologies. Read the ebook: Accelerating Enterprise Mobile and IoT App Development to learn more.


Published at DZone with permission of Tim Murphy , DZone MVB .

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}