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
74
Introduction of RubyMotion
社内勉強会で利用したRubyMotionのスライドになります
Harukasan
PRO
April 04, 2014
Tweet
Share
More Decks by Harukasan
See All by Harukasan
Write your own mrbgem, Create your own device
harukasan
PRO
1
46
PicoRabbit: a Tiny Presentation Device Powered by Ruby
harukasan
PRO
2
410
pixivを支える技術 / 技育CAMPアカデミア
harukasan
PRO
3
510
20240401 新卒研修 - ピクシブにおける技術領域
harukasan
PRO
1
820
ピクシブのコンテンツ配信基盤技術 / 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
Other Decks in Programming
See All in Programming
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
24
10k
React 使いじゃなくても知っておきたい教養としての React
oukayuka
6
370
CDK引数設計道場100本ノック
badmintoncryer
2
580
ZeroETLで始めるDynamoDBとS3の連携
afooooil
0
130
Gemini CLI のはじめ方
ttnyt8701
1
100
Prompt Engineeringの再定義「Context Engineering」とは
htsuruo
0
110
副作用と戦う PHP リファクタリング ─ ドメインイベントでビジネスロジックを解きほぐす
kajitack
3
460
はじめてのWeb API体験 ー 飲食店検索アプリを作ろうー
akinko_0915
0
170
MCPを使ってイベントソーシングのAIコーディングを効率化する / Streamlining Event Sourcing AI Coding with MCP
tomohisa
0
190
変化を楽しむエンジニアリング ~ いままでとこれから ~
murajun1978
0
470
抽象化という思考のツール - 理解と活用 - / Abstraction-as-a-Tool-for-Thinking
shin1x1
1
830
効率的な開発手段として VRTを活用する
ishkawa
1
180
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
GitHub's CSS Performance
jonrohan
1031
460k
Visualization
eitanlees
146
16k
How to train your dragon (web standard)
notwaldorf
96
6.1k
How STYLIGHT went responsive
nonsquared
100
5.7k
Making Projects Easy
brettharned
116
6.3k
Statistics for Hackers
jakevdp
799
220k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
A better future with KSS
kneath
238
17k
The Cult of Friendly URLs
andyhume
79
6.5k
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