Advice

28 Nisan 2014 Pazartesi

Build Web App - WHAT IS A WEB APP?




Over the past few years, the technologies we use to create websites have matured and developed at an amazingly rapid pace. Thankfully, this development hasn’t been limited solely to new features being introduced, although these do tend to attract most of the headlines. In actual fact, much work has also been undertaken on enhancing the performance, reliability and scalability of the processing and rendering we rely on: both browser vendors and framework developers have been hard at work so that the JavaScript and CSS engines we use to render content today are dramatic improvements over those we had access to in 2008. This is all great news for any web developer, but the rapid pace of progress has also coincided with an increase in average web access speeds, particularly on mobile devices, as broadband networks have improved and 3G networks have rolled out.




At the same time, fully internet-capable smartphones and tablets have arrived and become the web-connected device of choice. So, the world of the web has undoubtedly changed a lot over the past few years: the tools at our disposal have changed; the way users connect and consume all the content has changed; and the hardware characteristics and performance of the typical access device has substantially altered as well. The phenomenal progress that the web has undertaken has brought numerous benefits to both users and developers, but perhaps one of the most interesting aspects of the web as we find it today is that the way users interact with it has changed dramatically. Instead of using native applications on their computers or mobile phones, increasingly webenabled functionality is being delivered either through the browser, or via an installable app that provides a customised window to the web. The tools and technology we use to craft websites are now mature enough to enable all of us to become not just web designers, but now app designers too.

The idea that skills acquired as a web designer can be applied to app design isn’t a big step, but a common concern amongst designers and developers interested in making the jump is how to translate their experience in one medium to another. In reality, a web app is nothing more than a specialised website running in isolation. What makes a web app diff erent to a regular website can be boiled down to the way data is stored, retrieved and processed. A typical website will use the client-side HTML layer to present information to the user. When an action is performed, whether it’s adding an item to a shopping cart, or marking a to-do item as complete, the website will send a message back to the server, where the action is performed. In a web app, typically actions are performed on the client, and often the data is stored on the client too. Still, this isn’t universal, with exceptions such as Google’s range of productivity tools and Adobe’s online Photoshop app too. A whirlwind tour of data processing, deployment and considering the appropriate platform

 WHAT IS A WEB APP?

 Setting aside the many examples where the server still plays an active role, it’s a reasonable deduction to say that as a web designer or developer, you simply need to work on understanding the peculiarities of app-centric APIs – especially through JavaScript – in order to be able to develop standalone web apps. Thankfully, many of the available libraries and frameworks now make this task much easier. Good documentation and abstraction make it trivial to run a local database, for example, storing and retrieving data without ever having to go to a server.

At a basic level, web apps can be delivered through the browser just like any regular website, although by choosing this deployment method, the specific benefits associated with a particular platform cannot be leveraged. HTML5 does have a number of useful APIs to make use of, allowing for the likes of geo-locational aware scripting, but these are generic and do tend to have a habit of interfering quite a bit The best web apps focus on one task. If you’ve got a clear idea in mind, focus on the user experience and interface. Although this might at first appear secondary to getting the functionality itself completed, increasingly users expect an intuitive and rewarding user interface. Don’t skimp on this area!

KEEP IT SIMPLE with the user experience (by spawning a pop-up dialogue box, for example), which is far from ideal. Still, your decision over the right way to develop and deploy an app will largely come down to the usage scenario and its appropriateness for the platform. A quick-fix game is likely to be well suited to mobile devices, while an in-depth accounting app is probably more at home on the desktop. See some examples below

Hiç yorum yok:

Yorum Gönder