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
Introduction of RubyMotion
Search
Harukasan
PRO
April 04, 2014
Programming
0
72
Introduction of RubyMotion
社内勉強会で利用したRubyMotionのスライドになります
Harukasan
PRO
April 04, 2014
Tweet
Share
More Decks by Harukasan
See All by Harukasan
PicoRabbit: a Tiny Presentation Device Powered by Ruby
harukasan
PRO
2
380
pixivを支える技術 / 技育CAMPアカデミア
harukasan
PRO
3
500
20240401 新卒研修 - ピクシブにおける技術領域
harukasan
PRO
1
800
ピクシブのコンテンツ配信基盤技術 / pixiv TECH SALON
harukasan
PRO
5
5.6k
Goにおける画像ファイル処理 / golang.tokyo #19
harukasan
PRO
7
6.7k
WebRTC動画をトランスコードする / Transcoding video streams from WebRTC
harukasan
PRO
5
1.6k
ImageFluxを支えるリモート開発 / 20171202
harukasan
PRO
2
1.8k
YAPC::Fukuoka 前夜祭LT / Yet Another Pawoo Commit logs
harukasan
PRO
0
3k
YAPC::Fukuoka lunch session
harukasan
PRO
1
3.1k
Other Decks in Programming
See All in Programming
Is Xcode slowly dying out in 2025?
uetyo
1
190
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
110
FormFlow - Build Stunning Multistep Forms
yceruto
1
190
Gleamという選択肢
comamoca
6
760
Elixir で IoT 開発、 Nerves なら簡単にできる!?
pojiro
1
150
技術同人誌をMCP Serverにしてみた
74th
1
360
関数型まつりレポート for JuliaTokai #22
antimon2
0
150
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
810
Result型で“失敗”を型にするPHPコードの書き方
kajitack
4
380
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
390
Code as Context 〜 1にコードで 2にリンタ 34がなくて 5にルール? 〜
yodakeisuke
0
100
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
220
Featured
See All Featured
A designer walks into a library…
pauljervisheath
207
24k
The Language of Interfaces
destraynor
158
25k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.4k
For a Future-Friendly Web
brad_frost
179
9.8k
Building an army of robots
kneath
306
45k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
The Cost Of JavaScript in 2023
addyosmani
51
8.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Designing Experiences People Love
moore
142
24k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Transcript
None
RubyMotion is a revolutionary toolchain that lets you quickly develop
and test native iOS and OS X applications for iPhone, iPad and Mac, all using the awesome Ruby language you know and love. — http://www.rubymotion.com/
RubyͰiOSOSX༻ͷΞϓϦέʔγϣϯ͕ॻ͚Δ
http://www.slideshare.net/LaurentSansonetti/inside-rubymotion-llvm
http://www.slideshare.net/LaurentSansonetti/inside-rubymotion-llvm
http://www.slideshare.net/LaurentSansonetti/inside-rubymotion-llvm
MRIͰಈ͍͍ͯΔΘ͚Ͱͳ͘! RubyίʔυΛLLVMόΠτίʔυʹίϯύΠϧ͍ͯ͠Δ
͍͢͝
class AppDelegate def applicationDidFinishLaunching(notification) buildMenu ! window = NSWindow.alloc.initWithContentRect([[240, 180],
[800, 500]], styleMask: NSTitledWindowMask…, backing: NSBackingStoreBuffered, defer: false) @main = MainController.new(window) end ! … end
Rubyͷ໊લ͖ҾΛͬͯ! Obj-CͷϝιουΛ࣮ݱ
[[NSWindow alloc] initWithContentRect:styleMask:backing:defer:]; NSWindow.alloc.initWithContentRect(…, styleMask:…, backing:…, defer:…) Objective-C: Ruby:
Rubyͷඪ४ΦϒδΣΫτ͕͑Δ
DEMO
Ͳ͏͍ͬͯΔ͔
CocoaͷΦϒδΣΫτΛ ܧঝ࣮ͯ͠͞Ε͍ͯΔ
String → NSMutableString → NSString → NSObject
ऑ
None