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.
Too many platforms (iOS, Android,Blackberry,Windows Mobile,Symbian,Meego.) • Difficulty to learn different platforms • Maintainability • Write once use anywhere
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.
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
• Provides development environment • Provides native build for available platforms • Automatic source control with git • Work with developers around the world
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)
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
• 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
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.
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