Header Ads

Seo Services

HTML5 Apps: Write Once, Run Anywhere . What Next ?

The growth in HTML5 programmers and content creators is fantastic and truly justifying of how much interest there is in HTML5. The most important part, however, is identifying how much there is to learn about HTML5 to truly realize its “write once, run everywhere” promise. In particular, how does the HTML5 community help these new HTML5 developers have a great experience and make it equal to, if not better, than native application development experiences? Here are some views about it.
First, let’s define HTML5 and native apps. I identify HTML5 apps as either:

Web apps

Apps that makes use of only HTML5 code (HTML, CSS, and Javascript) and no native device features or APIs. Web apps can execute in a browser anywhere on any device, desktop, server, etc.

Hybrid apps 

HTML5 apps that utilize native device features, such as a camera or accelerometer, and use device APIs. These apps are also “packaged” for distribution by the various app stores.
Native apps are typically written in the native language of the device operating system. Each device or platform is providing a different toolset for their native app developers including the materials needed for app store submission. The biggest problem with native apps is making them available on many different platforms. Large portions of the app may need to be rewritten in the native language of each platform you are targeting. HTML5 runs everywhere a browser does, and does not require downloading and learning a new toolset per platform. 
 
 

So the solution to creating a cross-platform, runs-anywhere app is to write it in HTML5?
There are some caveats that need to be considered for an HTML5 app to really perform well. It is important to understand these to help ensure that standards, tools and developers’ experience with HTML5 continue to improve. Here are three factors to keep in mind to create great HTML5 apps:

Responsive design. HTML5 enables one to write truly “responsive” apps. This is an app that will automatically resize based on the browser and screen size; automatically detect and change the user interface (UI) to reflect that of the platform on which the app is running; and will change according to the orientation of the device. Creating apps that respond in this way is the essence of “responsive design.”

Performance. HTML5 app performance is much different within the confines of a mobile webview in comparison to a desktop browser. Too many DOM manipulations, memory leaks, poor choices in JavaScript libraries and other issues can drag your app to a crawl. HTML5 requires a different approach to programming compared to a desktop, where resources are plentiful and fast.

Graphics and animation. Despite the many naysayers, implementing graphics and animation in an HTML5 mobile app is actually quite possible. If you stick with 2-D graphics and keep it simple, you can build animated apps. Reaching for the highest speed 3-D graphics is best left to the native app developer, however.

Now, the only question is: where is anywhere? Is it a phone, tablet or Ultrabook? Those are obvious. What about a television, a car’s infotainment system ?

1 comment:

  1. The last question is the one where the crux of the argument lies. It was bad enough during the breeder wars when there were only abothree browsers including Netscape. Different models of Android devices even amongsta single vendor, without even beginning to consider the specific APIs for televisions and toaster ovens.

    ReplyDelete

Powered by Blogger.