App development roads

 · 1 min read

1. Native App

Based on the specific platform, normally are iOS and Android, using Objective-C and Java respectively.

pros:

– high performance

– built-in tools

– richness APIs

cons:

– high cost of development

– none cross-platform

– inflexible

2. Web App

Developing a SPA(Single Page Application) running in mobile browser is easy to implement, and it’s totally cross platform, because it’s based on browser.

pros:

– free-installation

– cross platform

– HTML, CSS, JS

– agile and light

cons:

– rely on network

– severely limited APIs

– compartively bad user experience

– browser as entry

3. Hybird App

Part-of Native, part-of Web. Some fundmental functionalties and APIs provided by Native libraries are encapsulated for invoking by javascript. Main UI and logics are implemented by HTML and js, of course, which is running in the WebView.

PhoneGap, Cordova may be the most popular framework of this kind of solution.

pros:

– web-like UI

– cross platform

– agile and light

– approximately native APIs

cons:

– bad performance(compared with Native App)

– tricky with some APIs

– potential pitfalls

4. React Native

It’s a a different philosophy compared to Hybird, “Learn once, write anywhere” differs from the usual cross-platform mantra, “Write once, run anywhere.”

React Native provides a way to write javascript and links the react components to the native views. In other words, make native app with javascript!

pros:

– more native look and feel

– better performance(compared with cordova)

– agile and easy(compared with Native App)

– extensive and accessible Native features

cons:

– bad performance(compared with Native App)

– a bit harder for beginners

– potential pitfalls

5. Weex App

Weex is the alternative choice for React Native, also with the skyrocketing spread and development of Vue.js, Weex is born to replace React Native, mainly because it has loads of chinese fans and supported by alibaba, a giant tech company.

It seems weex’s community and document is a little bit inferior to React Native, mostly because it is born later but getting better now.


LINKS:

reactnative vs. cordova

HYBRID VS NATIVE MOBILE APPS