Those developing mobile apps must choose between native, web, and hybrid apps. Each has unique benefits and drawbacks. However, understanding the nature of your options helps you decide what's best.
Native apps are apps built within the native programming language of a particular device. Native apps have a number of benefits for developers, including that they are "typically fast, reliable, and can access all the the device’s hardware (camera, accelerometer, compass, etc)." If you are developing a mobile game, the enhanced performance of a native app may be a blessing, but you face one primary limitation: apps built for a specific device using its programming language will have to be re-coded entirely if you later decide to import that app to a different platform.
Web applications refer to browser applications that run from a website. However, the "website" is much more like an application because it focuses on bringing games, utilities, or other mobile services to users rather than offering information and other simple content. The obvious benefit of a web app is that it can be accessed by any mobile device's browser. However, such web apps are limited by their inability to use all of the features of a device the way a native app might.
For programmers, hybrid apps are a way to have their cake and eat it too. Hybrid apps are, put simply, web apps that have been "wrapped in a platform-specific shell" that allows them to be sold in a device's native store and instilled as if it was a native app. This allows programmers to maximize the potential revenue of an application by offering it on multiple platforms. However, the app never forgets where it came from: its performance is limited by the performance of that device's web browser.
How Do You Choose?
For programmers, choosing between native, web, and hybrid apps is more difficult than you may think. Hybrid is the easiest method to distribute the app across multiple platforms. However, being limited by a device's web browser may be a deal breaker for certain apps, and the inability of the device to instantly update such programs may be a deal breaking annoyance for the user.
Native apps offer a performance boost that is particularly useful when you want your app to be enjoyed by those with older, slower devices. However, it can be more expensive than web apps and much more time-consuming if you decide to import the app to another platform at a later time. Web apps are powered by pleasantly simple code that can be run on any device's web browser, and you don't have to worry about getting approval in the device's native store. However, the app's performance takes a big hit, and users not being able to find your app in the device's store means you may miss out on many potential customers.
Ultimately, what is best for your app translates to what is best for your company: those with a budget and the need for performance should create a native app. Those who want maximum accessibility as a way to build a brand through social media and word of mouth should create a web app. And those who want maximum exposure and do not mind the red tape of negotiating things like revenue sharing should create a hybrid app.