Comments
yourfanat wrote: I am using another tool for Oracle developers - dbForge Studio for Oracle. This IDE has lots of usefull features, among them: oracle designer, code competion and formatter, query builder, debugger, profiler, erxport/import, reports and many others. The latest version supports Oracle 12C. More information here.
Cloud Computing
Conference & Expo
November 2-4, 2009 NYC
Register Today and SAVE !..

2008 West
DIAMOND SPONSOR:
Data Direct
SOA, WOA and Cloud Computing: The New Frontier for Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
GOLD SPONSORS:
Appsense
User Environment Management – The Third Layer of the Desktop
Cordys
Cloud Computing for Business Agility
EMC
CMIS: A Multi-Vendor Proposal for a Service-Based Content Management Interoperability Standard
Freedom OSS
Practical SOA” Max Yankelevich
Intel
Architecting an Enterprise Service Router (ESR) – A Cost-Effective Way to Scale SOA Across the Enterprise
Sensedia
Return on Assests: Bringing Visibility to your SOA Strategy
Symantec
Managing Hybrid Endpoint Environments
VMWare
Game-Changing Technology for Enterprise Clouds and Applications
Click For 2008 West
Event Webcasts

2008 West
PLATINUM SPONSORS:
Appcelerator
Get ‘Rich’ Quick: Rapid Prototyping for RIA with ZERO Server Code
Keynote Systems
Designing for and Managing Performance in the New Frontier of Rich Internet Applications
GOLD SPONSORS:
ICEsoft
How Can AJAX Improve Homeland Security?
Isomorphic
Beyond Widgets: What a RIA Platform Should Offer
Oracle
REAs: Rich Enterprise Applications
Click For 2008 Event Webcasts
In many cases, the end of the year gives you time to step back and take stock of the last 12 months. This is when many of us take a hard look at what worked and what did not, complete performance reviews, and formulate plans for the coming year. For me, it is all of those things plus a time when I u...
SYS-CON.TV
Mobile Web Apps vs. Native Apps
Contrary to popular belief, the discussion doesn't need to produce a winner and a loser

Web Apps vs. Native Apps is a topic that still excites readers to this day, as if it were anticipated that one side will win and the other will lose.

Contrary to popular belief, the discussion doesn't need to produce a winner and a loser. Instead of classifying apps as web apps or as native apps, why not just call them mobile apps? I believe "mobile app" is a great name. Under this name there are simply two variations of mobile app that can be created: web app and native app. A web app is an HTML5, JavaScript, CSS app running in a mobile browser. Now, you might wonder, why not just call this a mobile site? This is a fair point, and I believe the term "mobile site" can also be used. However, it is common to distinguish a mobile web app by one important extra feature, that it is invoking some remote services, usually a REST API (instead of just loading a static mobile web site). The second variation is the native app, one that is downloaded and installed on the mobile device.

It's important to note that a third variation of mobile app can also be created: a hybrid app. A hybrid mobile app takes an HTML mobile app and inserts it inside a native wrapper. While the inside of this app is made with HTML, JavaScript and CSS, the outside is a native shell. This kind of app is also downloaded and installed on a device. Although there are differences in how hybrid apps are implemented compared to native apps, most consumers can't tell native apps apart from hybrid apps. Hybrid apps are distributed in the app stores, just like native apps.

There are a number of important factors to consider when deciding whether to go with a mobile web app or a mobile native app.

Skills
Building native apps requires strong knowledge of Objective C (iOS), Java (Android), and C# (Windows Phone). Finding developers with the necessary experience is still not easy. On the other hand, we have been building web applications for the past 20 years. Even though building a mobile web app requires more specialized skills, the foundation is still HTML, JavaScript, and CSS. Finding strong developers should be easier in this case.

Platforms
With native development, the number of apps you need to build directly relates to the number of platforms you need to support. Today, most companies must support at least iOS, Android, and probably Windows 8/Phone, followed distantly by BlackBerry. A mobile web app can be opened on any device with a browser, phone, tablet, or anything in between. Even though the notion of "build once, run anywhere" sounds very nice, differences in mobile browsers and their support for the latest HTML5 features will require extensive testing and possibly coming up with workarounds(unless, of course, it's OK for your app not to support all the browsers.)

Features and Performance
Without a doubt, native apps have full access to the underlying mobile platform. Native apps are usually very fast and polished, making them great for high performance apps or games. Mobile web apps, on the other hand, have limited (but growing) access to device features and APIs. With JavaScript engines in the browsers getting faster, mobile web apps perform well but still fall behind native app performance.

The extra jolt of performance that dominates natively developed apps is not always necessary. Many business applications do not necessarily require such high levels of performance. In these cases, web and hybrid apps are more cost-effective, efficient, and dynamic due to API adaptability. On the other hand, games that require more advanced performance features should utilize native development.

Publishing to App Stores and Updating Apps
Regardless of the platform, native and hybrid apps are published to an app store. Apple has the strictest rules for accepting apps into its store. It requires the app to run fast and follow some basic UI principles. It could take anywhere from one to two weeks for Apple to either accept or reject an app.

Apple's stringency in App Store acceptance is contended by Google's somewhat more lenient rules, which don't necessarily adhere to the same rigid standards, and therefore accept apps more readily into its Google Play marketplace. Windows, on the other hand, takes a more "middle-of-the-road" approach when it comes to app acceptance. For whichever platform, any updates to native apps would fall under the same rules and regulations.

A mobile web app doesn't need to be published to any store, because it is simply accessed by its URL in the browser or an app icon/bookmark on the phone home screen. App updates are very simple as well. Just push any changes, and the next time the app is opened, the user will get all the new features.

Summary
A native mobile app can produce the best user experience - fast and fluid, can give you the best access to device features, and can be discovered in the app stores. On the other hand, building a native app on every major platform requires more socialized skills, a longer time-to-market, and a bigger budget to build and maintain. For this reason many apps get built as web apps or hybrid apps.

A mobile web app can produce a good user experience that is consistent across a broader range of platforms. As browser and JavaScript engines get faster with every release, the user experience gets better and better and the apps run faster and faster. Once created, this kind of app can be run on any platform, device, phone, or tablet with a browser. On the other hand, browsers on different platforms do not uniformly support all the latest HTML features and API, which can make developing and testing challenging.

A hybrid app offers many of the advantages of both approaches: discoverability in the app stores, access to the most common device APIs, and broad device coverage while not requiring the specialized skills, bigger budgets and longer time-to-market that are more typical of fully native apps.

About Max Katz
Max Katz is a Senior Systems Engineer at Exadel. He has been helping customers jump-start their RIA development as well as providing mentoring, consulting, and training. Max is a recognized subject matter expert in the JSF developer community. He has provided JSF/RichFaces training for the past four years, presented at many conferences, and written several published articles on JSF-related topics. Max also leads Exadel's RIA strategy and writes about RIA technologies in his blog, http://mkblog.exadel.com. He is an author of "Practical RichFaces" book (Apress). Max holds a BS in computer science from the University of California, Davis.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

SOA World Latest Stories
RackWare is a privately held company focused on delivering solutions to easily and cost-effectively enable the use of cloud for today’s enterprises. The company was founded in 2009 by entrepreneurs with extensive experience delivering enterprise-class products in the server, storage, n...
The old monolithic style of building enterprise applications just isn't cutting it any more. It results in applications and teams both that are complex, inefficient, and inflexible, with considerable communication overhead and long change cycles. Microservices architectures, while the...
IT systems will need to adapt, and evolving — or simply adding on to the existing relational database management system architecture — isn’t going to cut it. What does this mean, if not Hadoop or in-memory as the end-all, be-all? TechTarget writer Nicole Laskowski sums it up nicely: Ar...
14th International Cloud Expo, held on June 10–12, 2014 at the Javits Center in New York City, featured three content-packed days with a rich array of sessions about the business and technical value of cloud computing, Internet of Things, Big Data, and DevOps led by exceptional speaker...
As more applications and services move "to the cloud" (public or on-premise) cloud environments are increasingly adopting and building out traditional enterprise features. This in turn is enabling and encouraging cloud adoption from enterprise users. In many ways the definition is blur...
Internet of @ThingsExpo Silicon Valley announced on Friday its first 18 all-star speakers and sessions for its upcoming event, which will take place November 4-6, 2014, at the Santa Clara Convention Center in California. @ThingsExpo, the first and largest IoT event in the world, debute...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON Featured Whitepapers
ADS BY GOOGLE