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
950
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
850
Other Decks in Technology
See All in Technology
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
インフラとバックエンドとフロントエンドをくまなく調べて遅いアプリを早くした件
tubone24
1
430
強いチームと開発生産性
onk
PRO
36
12k
生成AIが変えるデータ分析の全体像
ishikawa_satoru
0
180
組織成長を加速させるオンボーディングの取り組み
sudoakiy
2
220
飲食店データの分析事例とそれを支えるデータ基盤
kimujun
0
210
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
390
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
200
The Rise of LLMOps
asei
9
1.8k
Mastering Quickfix
daisuzu
1
160
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
270
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.7k
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Code Reviewing Like a Champion
maltzj
520
39k
How to Ace a Technical Interview
jacobian
276
23k
Faster Mobile Websites
deanohume
305
30k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Building an army of robots
kneath
302
43k
Code Review Best Practice
trishagee
64
17k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
Statistics for Hackers
jakevdp
796
220k
Scaling GitHub
holman
458
140k
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