Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Mobile development - Native VS Cross Platform VS JavaScript [closed]

Our company will soon start developing few products for mobile platforms, as CTO I was asked to examine the Pro and Cons of the different tools available in order to achieve the best quality / cost effective solution.

We will be aiming primarily at iOS and Android , secondary for Windows-Mobile and BlackBerry.

Candidates:

After conducting some background research, I found the following possible candidates:

  • Native - Simply but laboriously develop for each platform with its native tools and language.

  • HTML5, CSS and JavaScript - Could be a web service running on the device's browser (a website) , or an app which incapsulate such code around WebKit.

  • Rho mobile - Made by Google so it ought to be good - nevertheless based on Ruby (which we are not comfortable with) and does have a complex and rather flimsy dev environment.

  • PhoneGap - It seems easy and mostly based on Javascript - It is open source but lately acquired by adobe - (not a good sign)

  • Appcelerator - Anything from Javascript to PHP and to python, have a nice range of API Access but we heard many stories of rejection (by apple), and incompatibilities when using complex code across different platforms.

  • And more like MoSync, Sencha, Appmobi and Corona (didn't tested them first hand).

Some points of reference:

  • We are not planning on developing games, the applications we are planning to develop are in the realm of business applications & information tools.

  • The applications are not depending on excessive use of the devices API's (but do need some minor basic access)

  • The company already developed for iOS and we have a small team of native iOS developers (Objective-C geeks)

  • We would like to be sure that we can carry on developing our applications in the feature without them getting broken due to new OS or APIs

  • It will be beneficial to ensure before hand that the application will not be rejected due to cross platform code (mostly AppStore)

  • Like any company we would like to be as cost effective as we can - on the other hand we insist on high quality products and top-of-the-line User experience.

There is no better place to ask this question than StackOverflow, I would appreciate any comments from developers with experience on this topic.

like image 340
Oliver Blint Avatar asked Jan 14 '12 20:01

Oliver Blint


People also ask

Is native Development better than cross-platform?

Native apps perform better and faster than cross-platform and other types of non-native apps since these are developed with specific platform requirements in mind. Native apps are compiled exclusively for a specific set of devices and run on a specific architecture.

How native and cross platforms are different for mobile app development?

Native development produces apps with high performance, but it can be costly to build. If you have a limited budget to work on, cross-platform development is the ideal choice. You'll save around 30%-40% as only a single codebase is created for an app that works on both Android and iOS.

Is cross-platform the best choice for mobile app development?

One of the advantages of cross-platform development is that it requires one-time coding (WORA) for developing apps for platforms as diverse as Android and iOS. This solves one of the biggest challenges of other frameworks – requiring developers to code separately twice for the same app on different platforms.

Why native application development is chosen over cross-platform development in mobile apps?

Native apps don't require complex code that has to work on multiple platforms, which is why such apps are able to display elements faster. It also usually turns out to be a cost-effective process. Because of the high development speed and possibility of cost reduction, native app development is preferred by startups.


1 Answers

There are 500k+ apps on the app markets and competition is fierce. It is paramount to have great UX and graphics.

Cross-platform tools are NOT on par with native development. If they were, we would all be using them. But we are not. With a reason - you do NOT have full control. And full-control is necessary to have great looking apps.

If your app is not a consumer app, but an enterprise app, which use is dictated by some internal department, then you might get by with so-so design, because the value of such app is in it's functionality.

But, if you are serious about mobile apps market - then the only way is to go native. And you need an UX guy and a designer (who knows mobile development) on team full time. You will spend upwards of 50% of time on looks. The project that I'm part of now is spending 80%+ of time on looks (graphics, animations, UX, usability testing).

A suggestion: spend a reasonable amount of time (= days) using you competitors apps. Also spend time with top 50 apps on each market. You will get a feeling how high the bar is. Then check apps made with cross-platform tools (you can find links on their sites) and compare.

like image 110
Peter Knego Avatar answered Sep 21 '22 10:09

Peter Knego