R&D and innovation-oriented software development company
arrow Request For Proposal Case Studies

When to Go Native, Cross-Platform and Hybrid for Mobile

Monday, 23 Feb 2015

Native, cross-platform and hybrid mobile developmentIn this review we will define what a cross-platform mobile application is, which cross-platform frameworks and engines are most popular now, how they differ from the native apps for iOS or Android, and when it is not necessary to spend time on developing a cross-platform.

What is the difference between cross-platform, native and hybrid solutions?

Before we start the argument on the subject of cross-platform development we need to make sure that we clearly understand the difference between cross-platform frameworks and native development. For simplicity, we will project the process of developing cross-platform applications and compare it with the development of native applications for iOS. So, what is the hidden meaning behind these terms?

Native Applications

If we talk about the development of mobile applications for Apple iOS, than a native application will be the solution developed using the programming language Objective-C or Swift (Apple programming language for developing applications for iOS and OS X, presented at WWDC 2014), within an integrated development environment Xcode.

From a user perspective, the native application does not differ from the high-quality cross-platform application, but it's worth noting that native applications developed for a specific mobile operating system, usually have a user friendly (native) interface. Convenience lies in the fact that during the development of native applications the bunch of UI/UX specialist and a programmer is most effective: the designer knows exactly what UI approaches are usual for users of a particular operating system (e.g.  the «Back» button and bottom Tab Bar in iOS) and iOS developer knows exactly how to implement certain UI features for Apple mobile devices. As a result, the user opens a native app and intuitively interacts with the new interface.

Cross-platform Mobile Applications

It is important to understand why the application is called cross-platform. The fact is that self-executable file compiled for one mobile platform cannot be launched in the other operating system. So if we develop a cross-platform solution and compile it for Android, it does not mean that we can take a file with the extension * .apk and run it on iPad. The idea of cross-platform solutions is not in its usability, but in the optimization of mobile application development process. Therefore, cross-platform application is a solution developed to minimize development efforts by compiling the source code for further execution on multiple mobile platforms. But the result of each separate compilation will be an individual executable file. For example, iOS executable file has .ipa extension, and for Android it is *.apk, etc.

Hybrid Applications

Most often this is an application developed using web technologies, rather than native development environment (ex. a bunch of Xcode and Objective-C in case of developing iOS app). The result is a web application that runs in a "wrapper" and serves not as a web page, but as a standalone application. It requires no installation and has a separate icon. Hybrid solutions are quite popular among developers of cross-platform engines. It is caused by the fact that almost any mobile operating system can equally handle the function of a web browser, which means if the application is already running under any mobile OS, then there won’t be any difficulty to run it on the other OS.

Background to the Rise of Cross-platform Solutions

What tasks can be solved with cross-platform engines? Why someone decided that it makes sense? If you ask a Java-developer for Android or Objective-C developer for iOS what they think about cross-platform frameworks for mobile platforms, in most cases you will get a clearly negative response.

The main reason for such reaction is that good developers, like any other professionals, are very sensitive to the concept of development, efficiency and productivity; every of them has his own vision of "what is good and what is bad?", but usually it is all about technology set that use, care and cherish. It is important to understand that not every developer can sacrifice programming romance and make an objective assessment of what is actually good for business at a particular moment. In general it happens that the budget decides everything, so the basic background for the emergence of cross-platform solutions was their benefits to business, namely:

  • While developing a mobile application for 2-3 mobile OSs using a cross-platform framework, most of the code can be written by one person. Thus you eliminate a need for full-time developers for every single OS;
  • Lack of proficient native iOS, Android, Windows and other popular mobile OS developers;
  • Relative ease of control of correspondence between the app versions for different mobile operating systems.

Most Popular Cross-platform Frameworks

We, at Program-Ace professionally use 3 cross-platform tools to develop mobile applications of high level of nativity. These are Unity, Xamarin and PhoneGap.

It is important to understand that there are many reasons why one developer chooses this or other platform. For example, RubyOnRails developer will hardly develop a mobile app using Xamarin, because more likely he would have limited or no development experience in C #. But if Xamarin will be in hands of an experienced C # developer, the client will definitely receive an application for Android and iOS that is highly competitive with a native app.

On the other hand, despite the fact that the team has at least 2-3 experienced C # developers, Xamarin can be expensive in implementation giving way to cheaper PhoneGap. Because PhoneGap can become a good alternative for projects that do not require any special graphics and hardware handling of devices, and are planned only as MVP prototypes to test the business model and should be implemented within a very limited budget. Another quite important parameter is the price to access the development environment in a specific framework.

Conclusion

Utilizing our 6 years’ experience in mobile development we know exactly what approach to use for specific customer requirements, budget and deadlines. Cross-platform mobile development with Program-Ace is always cost-effective and succesfull.


 
Request For Proposal
Find us on Facebook
Our Services

Augmented reality, virtual 3D trainings, Interactive architectural visualization, serious games, product configurators, and walkthroughs. More »
Our team provides full scope of game development services from art asset creation in 2D and 3D styles to programming and support. More »
We offer cross-platform app development services for all major platforms: iOS, Android, Windows Phone, Blackberry; and devices: web, mobile, PC, consoles. More »
Development of mobile apps and games, migration of applications to different platforms, cross-platform development. More »
Business automation systems, e-commerce solutions, community portals, corporate web-based systems, and websites with 3D. More »

Interested or have questions?
LET’S START A DISCUSSION!

arrow
arrow
     
Testimonials

GSN Games is completely satisfied with Program-Ace's technical expertise and the quality of services they provide. We look forward to collaborating with Program-Ace again...

Stuart Lewis-Smith, Senior VP and General Manager, GSN Games

Program-Ace has completely dispelled my concerns. The online project management system is one of the best I have seen...

– Scott Zerby, Vice President at ValuSoft

If you're looking for a professional, dedicated, digital development partner, I highly recommend Program-Ace...

– Tim Ransom, President at Visual Thunder Media
Testimonials
Stuart Lewis-Smith

GSN Games is completely satisfied with Program-Ace's technical expertise and the quality of services they provide. We look forward to collaborating with Program-Ace again...

 
Stuart Lewis-Smith, Senior VP and General Manager, GSN Games
Scott Zerby

Program-Ace has completely dispelled my concerns. The online project management system is one of the best I have seen...

 
– Scott Zerby, Vice President at ValuSoft
Tim Ransom

If you're looking for a professional, dedicated, digital development partner, I highly recommend Program-Ace...

 
– Tim Ransom, President at Visual Thunder Media
Our Clients
Wargaming logo
Digimation logo
Valusoft logo
Namco logo
Kalypso Media logo
DTP Entertainment AG logo
About Program-Ace
Contact Us

Phones:
USA +1 347 53 53 543
Ukraine +38 067 578 40 46

Email: rfp@program-ace.com

Skype: program.ace

Address

56, Poltavsky Shlyah,
Kharkiv, Ukraine

Stay Connected