As one of the fastest growing markets in the IT industry mobile development area offers a lot of issues to discuss and be found of. Except pros and cons of various technologies there always is a business side. Cross platform development collides both with dev side and with business vision.
Good news for everyone who wants to increase their profits and keep quality on high level!
Cross platform development (CPD) is the solution. Visible business perks of CPD include:
- Lower costs for development
- You have to build the app only once
- You have to employ specialists with one skill set
- You can move developers from team to team without hiring new people
- Shrinking of time-to-market
- Growing developers community
There are several known and widely used tools for CPD. In the table below you can see three of them compared: Xamarin, Appcelerator Titanium Studio, Qt and PhoneGap. The criteria in the table are relevant both for developers and for managers. Some of criteria like license cost, speed and cost of development, distribution capabilities are highly important especially for startups.
Xamarin | Appcelerator Titanium Studio | Qt | PhoneGap | |
---|---|---|---|---|
Supported platforms | iOS, Android, WindowsPhone | iOS, Android, WindowsPhone, BlackBerry | iOS, Android, WindowsPhone | iOS, Android, Blackberry, Windows Phone 8, Ubuntu, Firefox OS |
License&Costs | 4 types: starter for free, then $25-$158 per month | Dev for free, enterprise – $5000 per year | 4 types, up to €6400 | Apache License, Version 2.0 |
Distribution via different app stores | No problem | No problem | Only with commercial license | No problem |
Access to platform-specific features | 100% access | Access to most of them | Not fully, but the number is raised all the time | Not fully (depend on platform) |
Look and feel | Everything works and looks perfectly | Creates native UI elements, requires knowledge of Titanium’s JavaScript API | Looks nice on desktop | Analog of native UI |
Development environment | Xamarin Studio + plugin for Visual Studio | Tightly integrated into Appcelerator’s IDE Titanium Studio based on Eclipse | Qt creator, Qt designer | Eclipse, Idea,command line tools, etc. |
Ease of development | C# – feel right at home | Documentation is good. Initial progress and accustomization relatively slow | Qt has a lot of tools to help developers do their jobs best: compilers, rich documentation, helper tools and many other cookies | Instrumentation tools, especially debugging and memory profiling are sorely missing. |
Maintainability | Like native apps | Many lines of code, but can be easily modularized | Great GUI layout system | Like for web application |
Scalability | Great because of C# architecture | Good scalability. Passing data or objects between windows is quite slow | Easy to use | Easy to use |
Opportunities for further development | Excellent | Hardly can be used with other approaches | Gets better and better. Translation system, testing library | Excellent |
Speed and cost of development | Only one tool needed | A lot of framework specific knowledge | Easy and fast | Easy and fast |
As you can see all the technologies for CPD have their specific features and it’s important to choose the most convenient and suitable for your needs. There are a couple points that might help you while choosing.
In what cases you should go for cross-platform?
- you have very limited development time
- you already have skilled JavaScript or .NET developers
- the application includes a lot of busy business logic that has to work equally in all the mobile applications
When you should decide for native development?
- Performance and operation speed of the application matter the most
- Not too much business logic
- Multi platform operation isn’t required
If you’re lucky and made up your mind painlessly, it’s time to choose the right CPD framework. The selection of right tool depends on tasks your application has to solve and resources you have. Following hints can help you to reach a decision:
- If you already have .NET developers and the application has to be done asap for several platforms, we recommend to use Xamarin. In this case you should pay attention to the license cost and its accordance with your budget. Bosch-Siemens, Tesco, Sennheiser appreciated Xamarin’s perks.
- HTML5 solution fits for applications without high performance demands. Among HTML5 customers you can find Guardian, Burberry, Financial times.
- If you have skilled JavaScript specialists, you can definitely try Appcelerator Titanium. This is also good choice for an application with native interface in all the platforms. Tried by Ebay, Mitsubishi Electric, VMware.
- Game development is worth separate discussion. CPD solutions reviewed in this article cannot be used for games production.
In the next post we’ll go deeper into the frameworks indispensable for cross-platform development. To learn more from our experts visit http://instinctools.eu/. Stay tuned and share your thoughts in the comments.