13
Building your first native iOS Salesforce App in Ruby Kevin Poorman Technical Architect at Madrona Solutions group & Force.com MVP @CodeFriar

Building Your First Native iOS Salesforce App with Rubymotion

Embed Size (px)

DESCRIPTION

Rubymotion is a revolutionary new toolchain that enables developers to rapidly create native iOS applications using Ruby. Rubymotion is a statically compiled, extensive subset of Ruby 1.9 designed to run seamlessly, at full speed, on top of the Objective-C runtime. Thus, Rubymotion apps are distributable via the iTunes App Store, and are interoperable with all of the hardware and software features of iOS. Additionally, and perhaps most importantly, Rubymotion has a "toll-free" bridge to existing Objective-C libraries and frameworks allowing, for instance, Rubymotion apps to utilize the Salesforce Mobile SDK. Join us to learn, through a mix of live coding and presentation, how to build iOS apps using Rubymotion.

Citation preview

Page 1: Building Your First Native iOS Salesforce App with Rubymotion

Building your first native iOS Salesforce App in Ruby

Kevin Poorman Technical Architect at Madrona Solutions group & Force.com MVP@CodeFriar

Page 2: Building Your First Native iOS Salesforce App with Rubymotion

Kevin PoormanTechnical Architect at Madrona Solutions Group & Force.com MVPTwitter: @CodeFriar

Page 3: Building Your First Native iOS Salesforce App with Rubymotion

Agenda• What is RubyMotion?

• Why use RubyMotion?• Considerations

• Getting started• Commas Save Lives

• Project Management• The Rakefile

• Objective-c to Ruby• Demo App walkthrough• Code walkthrough• Q/A

Page 4: Building Your First Native iOS Salesforce App with Rubymotion

What is RubyMotion?• Toolchain• Ruby!• Static Ruby• Command Line based• Http://rubymotion.com

Page 5: Building Your First Native iOS Salesforce App with Rubymotion

Why RubyMotion?Feature Objective-C RubyMotion

Memory Mgmt. Manual or ARC Automatically Managed

Editor Generally XCode Any editor you’d like

Build system XCode Command Line (Rake)

Language Objective-C Ruby ;)

Product Native iOS App Native iOS App

Lib Systems Cocoa Pods, TestFlight Cocoa Pods, TestFlight, MotionGems

Code example [[UIAlertView alloc] init] UIAlertView.alloc.init

Page 6: Building Your First Native iOS Salesforce App with Rubymotion

Considerations• Commercial, $199.99• Require• *Eval

Page 7: Building Your First Native iOS Salesforce App with Rubymotion

Getting Started.1. Motion create <app name>2. Edit3. Simulate

Page 8: Building Your First Native iOS Salesforce App with Rubymotion

The Rakefile Explained• Build System.• Project Management

• 3rd Party Libraries, e.g. Salesforce Mobile iOS SDK• System frameworks and libraries• Distribution details• Name etc.

Page 9: Building Your First Native iOS Salesforce App with Rubymotion

Obj-c to Ruby• “THIS”.to_lower()• application(application, didFinishLaunchingWithOptions:launchOptions)

• Translation• Obj-c: [[Obj StaticMethod] Param1:value1 Param2:Value2];• RubyMotion: Obj.StaticMethod.Param1(value1, Param2:Value2)

Page 10: Building Your First Native iOS Salesforce App with Rubymotion

Demo App and Code Walkthrough

Page 12: Building Your First Native iOS Salesforce App with Rubymotion

Kevin Poorman

Technical Architect & Force.com MVP,

@CodeFriar

https://github.com/noeticpenguin/DfD

emoApp

Page 13: Building Your First Native iOS Salesforce App with Rubymotion