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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Harukasan
PRO
April 04, 2014
Programming
0
85
Introduction of RubyMotion
社内勉強会で利用したRubyMotionのスライドになります
Harukasan
PRO
April 04, 2014
Tweet
Share
More Decks by Harukasan
See All by Harukasan
Successor to PicoRabbit: Ruby Programming Envorinment / RubyKaigi 2025 follow up
harukasan
PRO
1
230
Write your own mrbgem, Create your own device
harukasan
PRO
1
270
PicoRabbit: a Tiny Presentation Device Powered by Ruby
harukasan
PRO
2
670
pixivを支える技術 / 技育CAMPアカデミア
harukasan
PRO
3
570
20240401 新卒研修 - ピクシブにおける技術領域
harukasan
PRO
1
910
ピクシブのコンテンツ配信基盤技術 / pixiv TECH SALON
harukasan
PRO
5
5.8k
Goにおける画像ファイル処理 / golang.tokyo #19
harukasan
PRO
7
6.8k
WebRTC動画をトランスコードする / Transcoding video streams from WebRTC
harukasan
PRO
5
1.7k
ImageFluxを支えるリモート開発 / 20171202
harukasan
PRO
2
1.9k
Other Decks in Programming
See All in Programming
Windows on Ryzen and I
seosoft
0
230
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
330
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
140
NOT A HOTEL - 建築や人と融合し、自由を創り出すソフトウェア
not_a_hokuts
2
960
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
550
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
470
CSC307 Lecture 14
javiergs
PRO
0
460
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
170
New in Go 1.26 Implementing go fix in product development
sunecosuri
0
400
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
180
SourceGeneratorのマーカー属性問題について
htkym
0
180
PJのドキュメントを全部Git管理にしたら、一番喜んだのはAIだった
nanaism
0
250
Featured
See All Featured
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
290
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
210
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
230
Google's AI Overviews - The New Search
badams
0
930
Building a Scalable Design System with Sketch
lauravandoore
463
34k
How to make the Groovebox
asonas
2
2k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
170
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
GraphQLとの向き合い方2022年版
quramy
50
14k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.4k
SEO for Brand Visibility & Recognition
aleyda
0
4.3k
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