Introduction to building multi platform mobile applications with javascript using Titnaium

Post on 09-May-2015

868 views 0 download

Transcript of Introduction to building multi platform mobile applications with javascript using Titnaium

CROSS-PLATFORM MOBILE APPLICATION DEVELOPMENT

USING TITANIUM MOBILE

Mobile Development approaches

Approach Mobile Web Native Cross –platform/Hybrid

Language HTML5, CSS, Javascript

Platform dependent. Objective C for iOSJava for Android J2ME for Blackberry

Write using one language. “Compiled” or “Interpreted” to native code for the platform.

Native UI No. You can “fake it” with a less rich experience

Yes Yes

Server communication

Yes Yes Yes

Access to native APIs and features (Photo gallery, Phonebook, etc.)

No Yes Yes

Access to Hardware (Accelerometer, GPS,Camera,etc)

No Yes Yes

Benefits of using a hybrid approach

Develop for multiple platforms: Using the same Technology and same

codebase. Team with the same skillset, expertise. Write once run anywhere.

Which leads to :

Reduced development time Reduced development cost Reduced development effort

Why Titanium?

Free Open source Use Javascript to write native applications Active and big community Commercial support, custom

development and modules are available from Appcelerator.

Companies using Titanium

How does it work?

Compile time : Pre-compiler:

JavaScript code is optimized, dependency hierarchy of APIs used is created.

Front-end compiler:The appropriate platform-specific native code is generated along with projects and specific code is built to compile Titanium for a given platform compiler.

Platform compiler & packager:Using native tools for the particular platform , code is compiled and application is packaged.

Runtime : Javascript is interpreted at runtime with hooks to execute native code (Javascript bridge)

Design Concepts

Standard and familiar web model (MVC) APIs:

UI APIs Phone APIs

Media Database FileSystem Network Accelerometer Geolocation Many more …

Titanium UI

Native UI components UI Components are:

Windows (Hosting views) Views (Draw conent on

screen, Ex. Image View) Widgets (Views with

actions, Ex. Button)

Titanium UI APIs

Media APIs

Video

Sound

Camera

Accelerometer, Geolocation, and Maps

Accelerometer

Maps

Write Once , Run anywhere

The same code renders differently depending on the platform

Cross platform strategy

Build and test the application on multiple platforms from day one if possible

Separate business logic from UI construction

Component Oriented design Your application is a library of Application

specific components Use custom events instead of component and

platform specific events. Use built in Titanium features to handle multiple

platforms, screen resolutions and densities

Q&A

About Shoukry

Software & Mobile solutions Architect at Telcocell http://telcocell.com

Follow on Twitter @SharkHacks Blog http://blog.sharkhacks.com LinkedIn http://linkedin.com/in/shoukry