Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
RubyMotion: Hack Your iOS App Like Never Before
Search
Joseph Ku
December 08, 2012
Technology
5
970
RubyMotion: Hack Your iOS App Like Never Before
* Talk @ RubyConf Taiwan 2012 (2012.12.08)
Joseph Ku
December 08, 2012
Tweet
Share
More Decks by Joseph Ku
See All by Joseph Ku
R&B: When Ruby Met Bitcoin
joseph
0
200
第一次去 WWDC 就上手
joseph
0
210
Swift Introduction to Swift in Ruby
joseph
0
150
手機遊戲開發的兩三事
joseph
0
110
RubyMotion Gets A Cool New Friend: mruby on iOS
joseph
2
870
Other Decks in Technology
See All in Technology
月間60万ユーザーを抱える 個人開発サービス「Walica」の 技術スタック変遷
miyachin
2
640
re:Invent 2024のふりかえり
beli68
0
130
実践!生成AIのビジネス活用 / How to utilize Generative AI in your own business
gakumura
1
100
AWSマルチアカウント統制環境のすゝめ / 20250115 Mitsutoshi Matsuo
shift_evolve
0
120
[IBM TechXchange Dojo]Watson Discoveryとwatsonx.aiでRAGを実現!事例のご紹介+座学②
siyuanzh09
0
120
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
190
Oracle Exadata Database Service(Dedicated Infrastructure):サービス概要のご紹介
oracle4engineer
PRO
0
12k
Copilotの力を実感!3ヶ月間の生成AI研修の試行錯誤&成功事例をご紹介。果たして得たものとは・・?
ktc_shiori
0
390
2024AWSで個人的にアツかったアップデート
nagisa53
1
110
Amazon Route 53, 待ちに待った TLSAレコードのサポート開始
kenichinakamura
0
190
Building Scalable Backend Services with Firebase
wisdommatt
0
110
自社 200 記事を元に整理した読みやすいテックブログを書くための Tips 集
masakihirose
2
360
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
How GitHub (no longer) Works
holman
312
140k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
The Cult of Friendly URLs
andyhume
78
6.1k
Optimising Largest Contentful Paint
csswizardry
33
3k
Writing Fast Ruby
sferik
628
61k
The World Runs on Bad Software
bkeepers
PRO
66
11k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Designing Experiences People Love
moore
139
23k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Transcript
RubyConf Taiwan RubyMotion HACK YOUR IOS APP LIKE NEVER BEFORE
Who Am I?
ຑพ፡
!KPTFQILV
None
WHAT’S RUBYMOTION? A Ruby toolchain for iOS Develop and test
native iOS app in Ruby Based on MacRuby Laurent Sansonetti (@lrz)
Why RubyMotion?
None
Objective-C Objective-C Runtime iOS SDK Foundation Framework
Objective-C Objective-C Runtime iOS SDK Foundation Framework RubyMotion
None
None
None
WHY RUBYMOTION? 100% native code Keep your editor App Store
compliant
Babe, Let’s Rock!!
Dirty
Dirty
The Last Mile
DEPLOYMENT Deploy your app to beta testers by TestFlight Deploy
to App Store $ rake archive:distribution $ gem install motion-testflight $ rake testflight notes='Orz'
// Foo.h @interface Foo: NSObject { } @property (nonatomic, strong)
NSString *bar; @end // Foo.m #import “Foo.h” @implementation Foo @synthesize bar = _bar; @end class Foo attr_accessor :bar end Objective-C RubyMotion
outputImageProviderFromBufferWithPixelFormat:pixelsWide:pixelsHigh:ba seAddress:bytesPerRow:releaseCallback:releaseContext:colorSpace:shoul dColorMatch: WTF!!
NSDictionary *rules = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber NumberWithBool:TRUE],"RubyIsAwesome",nil]; Objective-C RubyMotion rules =
{ RubyIsAwesome: 1 } What’s the magic??
Babe, Rock Again!!
LIMITATIONS require eval define_method Proc#binding Regular gems don’t work
PROS & CONS One-time fee of $199 Growing faster and
faster Apple’s attitude
Is RubyMotion the future?
%4-
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
None
None
3VCZ.JOF
None
None
IS THE RUBYMOTION THE FUTURE? DSL Well-known editor and IDE
Support Active community
C’mon, it’s Ruby!!
Any questions?
5IBOLZPV