Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Cross Platform Mobile Application Development With Rhomobile

Cross Platform Mobile Application Development With Rhomobile

Making mobile application cross platform saves your development time. Here i presents a cross platform mobile application development platform, interesting thing is the development is done in ruby.

Deepak Kumar

November 10, 2012
Tweet

More Decks by Deepak Kumar

Other Decks in Technology

Transcript

  1. Why Cross Platform ? • Smartphone sales are exploding •

    Too many platforms (iOS, Android,Blackberry,Windows Mobile,Symbian,Meego.) • Difficulty to learn different platforms • Maintainability • Write once use anywhere
  2. What is Rhodes ? • Cross platform mobile application development

    framework • Ruby based • Uses MVC architecture • The application is native • Supported by variety of platforms (Android , iPhone, Blackberry,Windows mobile) • The app will work without a connection to backend.
  3. RhoSync ? • Performs the synchronizations between the backend and

    client app • Bypasses the need to connect , retrieve, parse and store the data on device. • It only requires a source adapter. • Source adapter should implement some methods like ◦ Create ◦ Update ◦ Delete ◦ Query • For larger amount of data transfer Rhosync uses BulkSync
  4. Rhohub • Development as a service platform for mobile apps

    • Provides development environment • Provides native build for available platforms • Automatic source control with git • Work with developers around the world
  5. Rhom • A simplified form of ActiveRecord in Rails •

    A mini database object mapper • Provides a simple query interface to database • Supports two models ◦ "Property bag" (Default) ◦ "Fixed Schema" • Uses SQLite in all platforms except in Blackberry(HSQLDB)
  6. Property Bag Advantages • All data is stored in a

    single table • Data is stored as object-attribute-value pattern • Database can be modified without changing the schema • No migrations needed Disadvantages • Increases the size of database • Slower sync process
  7. Fixed Schema Advantages • Data is stored in different tables

    • Table exists for each model • Well defied schema • Database is of smaller size • Faster sync process Disadvantages • Migrations needed for a change in database • May reduce the performance unless indexing is done
  8. Things Needed for Starting With Rhodes • Ruby Programming Language

    • HTML • CSS • JavaScript • Basic Understanding of MVC • Rhodes gem
  9. Start developing • Install ruby • Install rhodes gem ◦

    gem install rhodes • Install development SDK • Now create your app rhodes app demoapp • Create a model ◦ rhodes model Product id,name,price • Now run your app ◦ rake run:platformname{iphone|android|wm|bb} • Start modifying your app by creating more models, controllers and more views.
  10. User Interface • UI components are created using HTML rhodes

    supports HTML5 • CSS3 framework for styling the visual elements • JavaScript framework like JQuery Mobile, JQTouch etc • Provides a collection of native styles using modified div elements • Provides access to most native device features like keyboard, DateTime picker