Published on: July, 2014
Published on: July, 2014
Cross Platform Development Whitepaper By Belatrix Software | Topics: Software Development
If you’re thinking of going mobile, delivering online services or updating your existing app, you know that you need to deliver on multiple platforms.
And that’s when you need to make a decision: Native app development vs Cross Platform app development. Undoubtedly, time savings, cost optimization and ease of use are 3 main advantages of moving to Cross Platform Development.
In this whitepaper we’ll go through details of Appcelerator’s Titanium, one of the most popular tools for developing apps working for multiple platforms at the same time.
Let’s start from the beginning: Appcelerator’s Titanium is an open source development platform that allows creating native applications across different mobile devices and OSs including iOS, Android, as well as hybrid and HTML5. A future release will also provide the ability to develop for BlackBerry 10 and Windows Phone. The Titanium Mobile SDK is the number one cross-platform mobile development solution in use today with over 250,000 mobile developers and 35,000 apps.
The Titanium framework uses a unified JavaScript API, with platform-specific features and native performance combined. When using Titanium as a framework, you should be aware of two main concepts: First, core features in mobile development can have the same experience across platforms, and you can and should utilize code reuse as a god practice. Second, with more platform-specific APIs, user Interfaces, and features developers should use specific platform-targeted code. For this last reason, it’s not a “write once, run everywhere” approach. This allows Titanium to offer a great user experience by offering access to native UI and native features to achieve a higher level of performance than most “hybrid” approaches.
Titanium takes code written in JavaScript, combines it with the Titanium API (which is written in the targeted device’s native language), and evaluates your code at runtime with a JavaScript interpreter that runs on the device’s operating systems. When you launch your app, a JavaScript execution is created in the native code and the JavaScript is injected as an inline object paired with native objects within the runtime environment. The pairing is strictly one-to-one in a way such as running inline JavaScript within HTML. This allows the Titanium API to act as a bridge to expose direct access to the native experience, through actual native features and APIs.
Titanium is a cross-platform tool (CPTs), as many other similar tools. Then why Titanium instead of other tools? Let’s compare different alternatives:
Cross-platform tools allow developers to create applications for multiple platforms using only one codebase or working directly in the same design tool. CPTs reduce the cost of platform fragmentation and allow developers to target new platforms at a small incremental cost. More importantly, cross-platform tools allow software companies targeting multiple platforms to reuse developer skills, share codebases, synchronize releases and reduce support costs.
CPTs can be used to develop native, hybrid and web apps and come in several technology flavors: JavaScript frameworks, App factories, Web-to-native wrappers, etc.
Cross platform tools are more popular between developers focusing on HTML development, with 38% of them using CPTs for development. CPTs and particularly JavaScript frameworks and web-to-native wrappers (e.g. PhoneGap), provide a relatively smooth transition to mobile apps for web developers: in some reports have been found that 60% of developers using CPTs have over 5 years of experience in web development. Usage of CPTs is popular among iOS developers, while usage among Windows Phone developers is much lower.
PhoneGap tops CPT rankings for last year, being used by 34% of developers, followed by Appcelerator and Adobe Air with 21% and 19% developer mindshare respectively. We should also consider that this year the use of Titanium has been increased almost getting to the top for its great features and support.
Choosing between CPT technologies is not straightforward (i.e. whether to go for a web-to-native wrapper or a JavaScript framework). Moreover, developers need to try out a cross-platform tool to see if it aligns with their needs in terms of performance, learning curve, access to native APIs or look & feel. It’s never a black or white decision.
Since CPTs aim to expedite and facilitate development across platforms, they should provide a clear advantage over native platforms when it comes to speed and ease of development to justify their use. Some of the key differentiators for CPTs are access to native APIs, performance optimization and the ability to reproduce native UI elements on each platform.
So, why should you be moving to Cross Platform Development? Cost and time savings mean a lot to every project. Why should you not be benefited with less cost, faster time to market and more?
Get ready to release your mobile app better, faster and with less cost than never before by moving to a cross platform strategy.
Belatrix Software is a leading Software Services Outsourcing company with its main offices and delivery centers based in Mendoza, Argentina and Lima, Peru. We help clients achieve the full impact of their R&D capabilities developing high quality, innovative software, QA, testing and mobile solutions that enables clients to generate best-in-class software products, decrease time to market, and gain competitive edge.