Submit Search
Upload
RubyMotion: Hack Your iOS App Like Never Before
•
2 likes
•
1,107 views
Joseph Ku
Follow
* Talk @ RubyConf Taiwan 2012 (2012.12.08)
Read less
Read more
Technology
Report
Share
Report
Share
1 of 37
Download now
Download to read offline
Recommended
RubyMotion Gets A Cool New Friend: mruby on iOS
RubyMotion Gets A Cool New Friend: mruby on iOS
Joseph Ku
Mobile Web Test Automation: to the Desktop! - Alexander Bayandin - Mobile Tes...
Mobile Web Test Automation: to the Desktop! - Alexander Bayandin - Mobile Tes...
Badoo
CameraX: Make photography easier on Android!
CameraX: Make photography easier on Android!
Bapusaheb Patil
The Future of Selenium Testing for Mobile Web and Native Apps
The Future of Selenium Testing for Mobile Web and Native Apps
Sauce Labs
Titanium appcelerator best practices
Titanium appcelerator best practices
Alessio Ricco
Grape golilath
Grape golilath
Kannan Reghu
Mrubyまとめ v01
Mrubyまとめ v01
RubyCorporation, Inc
Ruby on Google App Engine: Upgrade to Google App "Turbo" Engine
Ruby on Google App Engine: Upgrade to Google App "Turbo" Engine
Joseph Ku
Recommended
RubyMotion Gets A Cool New Friend: mruby on iOS
RubyMotion Gets A Cool New Friend: mruby on iOS
Joseph Ku
Mobile Web Test Automation: to the Desktop! - Alexander Bayandin - Mobile Tes...
Mobile Web Test Automation: to the Desktop! - Alexander Bayandin - Mobile Tes...
Badoo
CameraX: Make photography easier on Android!
CameraX: Make photography easier on Android!
Bapusaheb Patil
The Future of Selenium Testing for Mobile Web and Native Apps
The Future of Selenium Testing for Mobile Web and Native Apps
Sauce Labs
Titanium appcelerator best practices
Titanium appcelerator best practices
Alessio Ricco
Grape golilath
Grape golilath
Kannan Reghu
Mrubyまとめ v01
Mrubyまとめ v01
RubyCorporation, Inc
Ruby on Google App Engine: Upgrade to Google App "Turbo" Engine
Ruby on Google App Engine: Upgrade to Google App "Turbo" Engine
Joseph Ku
RubyMotion Introduction
RubyMotion Introduction
Lori Olson
MacRuby & RubyMotion - Madridrb May 2012
MacRuby & RubyMotion - Madridrb May 2012
Mark Villacampa
RubyMotion Introduction
RubyMotion Introduction
Marc Rendl Ignacio
RubyMotion #jbday
RubyMotion #jbday
Dennis Ushakov
Using Ruby in Android Development
Using Ruby in Android Development
Adam Blum
ruby-cocoa
ruby-cocoa
tutorialsruby
ruby-cocoa
ruby-cocoa
tutorialsruby
Mobile Development integration tests
Mobile Development integration tests
Kenneth Poon
Mac ruby to the max - Brendan G. Lim
Mac ruby to the max - Brendan G. Lim
ThoughtWorks
MacRuby to The Max
MacRuby to The Max
Brendan Lim
MacRuby & HotCocoa
MacRuby & HotCocoa
Thilo Utke
Cordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirst
Raymond Camden
Rubymotion inspect 2014_review
Rubymotion inspect 2014_review
Bob Firestone
Macruby& Hotcocoa presentation by Rich Kilmer
Macruby& Hotcocoa presentation by Rich Kilmer
Matt Aimonetti
RubyMotion - Meetup Ruby lx
RubyMotion - Meetup Ruby lx
rmscms
RubyMotion
RubyMotion
betabeers
Introduction to Cordova
Introduction to Cordova
Raymond Camden
Ruby'izing iOS development
Ruby'izing iOS development
toamitkumar
Bringing the Ruby language into the mobile world
Bringing the Ruby language into the mobile world
Laurent Sansonetti
Ruby on Rails - An overview
Ruby on Rails - An overview
Thomas Asikis
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
Enterprise Knowledge
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
ScyllaDB
More Related Content
Similar to RubyMotion: Hack Your iOS App Like Never Before
RubyMotion Introduction
RubyMotion Introduction
Lori Olson
MacRuby & RubyMotion - Madridrb May 2012
MacRuby & RubyMotion - Madridrb May 2012
Mark Villacampa
RubyMotion Introduction
RubyMotion Introduction
Marc Rendl Ignacio
RubyMotion #jbday
RubyMotion #jbday
Dennis Ushakov
Using Ruby in Android Development
Using Ruby in Android Development
Adam Blum
ruby-cocoa
ruby-cocoa
tutorialsruby
ruby-cocoa
ruby-cocoa
tutorialsruby
Mobile Development integration tests
Mobile Development integration tests
Kenneth Poon
Mac ruby to the max - Brendan G. Lim
Mac ruby to the max - Brendan G. Lim
ThoughtWorks
MacRuby to The Max
MacRuby to The Max
Brendan Lim
MacRuby & HotCocoa
MacRuby & HotCocoa
Thilo Utke
Cordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirst
Raymond Camden
Rubymotion inspect 2014_review
Rubymotion inspect 2014_review
Bob Firestone
Macruby& Hotcocoa presentation by Rich Kilmer
Macruby& Hotcocoa presentation by Rich Kilmer
Matt Aimonetti
RubyMotion - Meetup Ruby lx
RubyMotion - Meetup Ruby lx
rmscms
RubyMotion
RubyMotion
betabeers
Introduction to Cordova
Introduction to Cordova
Raymond Camden
Ruby'izing iOS development
Ruby'izing iOS development
toamitkumar
Bringing the Ruby language into the mobile world
Bringing the Ruby language into the mobile world
Laurent Sansonetti
Ruby on Rails - An overview
Ruby on Rails - An overview
Thomas Asikis
Similar to RubyMotion: Hack Your iOS App Like Never Before
(20)
RubyMotion Introduction
RubyMotion Introduction
MacRuby & RubyMotion - Madridrb May 2012
MacRuby & RubyMotion - Madridrb May 2012
RubyMotion Introduction
RubyMotion Introduction
RubyMotion #jbday
RubyMotion #jbday
Using Ruby in Android Development
Using Ruby in Android Development
ruby-cocoa
ruby-cocoa
ruby-cocoa
ruby-cocoa
Mobile Development integration tests
Mobile Development integration tests
Mac ruby to the max - Brendan G. Lim
Mac ruby to the max - Brendan G. Lim
MacRuby to The Max
MacRuby to The Max
MacRuby & HotCocoa
MacRuby & HotCocoa
Cordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirst
Rubymotion inspect 2014_review
Rubymotion inspect 2014_review
Macruby& Hotcocoa presentation by Rich Kilmer
Macruby& Hotcocoa presentation by Rich Kilmer
RubyMotion - Meetup Ruby lx
RubyMotion - Meetup Ruby lx
RubyMotion
RubyMotion
Introduction to Cordova
Introduction to Cordova
Ruby'izing iOS development
Ruby'izing iOS development
Bringing the Ruby language into the mobile world
Bringing the Ruby language into the mobile world
Ruby on Rails - An overview
Ruby on Rails - An overview
Recently uploaded
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
Enterprise Knowledge
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
ScyllaDB
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
hariprasad279825
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
Sri Ambati
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
Alfredo García Lavilla
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
Mattias Andersson
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
gvaughan
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
Slibray Presentation
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
Kalema Edgar
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
LoriGlavin3
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
Addepto
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
NavinnSomaal
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
Fwdays
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
Mark Billinghurst
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
Alan Dix
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
Hervé Boutemy
Recently uploaded
(20)
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
RubyMotion: Hack Your iOS App Like Never Before
1.
an
Taiw nf C o by Ru RubyMotion HACK YOUR IOS APP LIKE NEVER BEFORE
2.
Who Am I?
3.
古傑芳
4.
@josephku
5.
6.
WHAT’S
RUBYMOTION? A Ruby toolchain for iOS Develop and test native iOS app in Ruby Based on MacRuby Laurent Sansonetti (@lrz)
7.
Why RubyMotion?
8.
9.
iOS SDK Foundation Framework Objective-C
Runtime Objective-C
10.
iOS SDK
Foundation Framework Objective-C Runtime RubyMotion Objective-C
11.
12.
13.
14.
WHY RUBYMOTION? 100% native
code Keep your editor App Store compliant
15.
Babe, Let’s Rock!!
16.
Dirty
17.
Dirty
18.
The Last Mile
19.
DEPLOYMENT Deploy your app
to beta testers by TestFlight $ gem install motion-testflight $ rake testflight notes='Orz' Deploy to App Store $ rake archive:distribution
20.
Objective-C // Foo.h @interface Foo:
NSObject { } @property (nonatomic, strong) NSString *bar; @end // Foo.m #import “Foo.h” @implementation Foo @synthesize bar = _bar; @end RubyMotion class Foo attr_accessor :bar end
21.
WTF!! outputImageProviderFromBufferWithPixelFormat:pixelsWide:pixelsHigh:ba seAddress:bytesPerRow:releaseCallback:releaseContext:colorSpace:shoul
dColorMatch:
22.
Objective-C NSDictionary *rules =
[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber NumberWithBool:TRUE],"RubyIsAwesome",nil]; RubyMotion rules = { RubyIsAwesome: 1 } What’s the magic??
23.
Babe, Rock Again!!
24.
LIMITATIONS require eval define_method Proc#binding Regular gems don’t
work
25.
PROS & CONS One-time
fee of $199 Growing faster and faster Apple’s attitude
26.
Is RubyMotion the
future?
27.
DSL
28.
App.alert("BubbleWrap is awesome!") App.run_after(0.5)
{ p "It's #{Time.now}" } App.open_url("http://rubyconf.tw/2012/") Device.iphone? Device.ipad? Device.front_camera? BW::Media.play_modal("http://www.hrupin.com/wp-content/ uploads/mp3/testsong_20_sec.mp3") EM.add_timer 1.0 do puts "Great scott!" end
29.
30.
31.
RubyMine
32.
33.
34.
IS THE RUBYMOTION
THE FUTURE? DSL Well-known editor and IDE Support Active community
35.
C’mon, it’s Ruby!!
36.
Any questions?
37.
Thank you!
Download now