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
63
Introduction of RubyMotion
社内勉強会で利用したRubyMotionのスライドになります
Harukasan
PRO
April 04, 2014
Tweet
Share
More Decks by Harukasan
See All by Harukasan
20240401 新卒研修 - ピクシブにおける技術領域
harukasan
PRO
1
530
ピクシブのコンテンツ配信基盤技術 / pixiv TECH SALON
harukasan
PRO
5
5.1k
Goにおける画像ファイル処理 / golang.tokyo #19
harukasan
PRO
7
6.2k
WebRTC動画をトランスコードする / Transcoding video streams from WebRTC
harukasan
PRO
5
1.4k
ImageFluxを支えるリモート開発 / 20171202
harukasan
PRO
2
1.7k
YAPC::Fukuoka 前夜祭LT / Yet Another Pawoo Commit logs
harukasan
PRO
0
2.8k
YAPC::Fukuoka lunch session
harukasan
PRO
1
2.8k
マストドン会議: Pawoo / Mastodon Kaigi2
harukasan
PRO
2
400
大規模Mastodonインスタンスを運用するコツ / Inside Pawoo Mastodon infrastructure
harukasan
PRO
0
2.9k
Other Decks in Programming
See All in Programming
OpenAPIを中心に考えるAPI開発入門 / Introduction to API Development with a Focus on OpenAPI
seike460
PRO
2
170
educure_カリキュラム生操作マニュアル.pdf
linew_official
0
700
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
130
GitHub Actionsで泣かないためにやっておきたい設定 / Recommended GHA settings to avoid crying
pinkumohikan
3
530
Tailwind CSSを本気でカスタマイズする方法
fsubal
13
5.2k
What We Can Learn From OSS
inouehi
0
420
AWS Application Composerで始める、 サーバーレスなデータ基盤構築 / 20240406-jawsug-hokuriku-shinkansen
kasacchiful
1
260
Designing for tomorrow's programming workflows
honnibal
PRO
2
120
Semantic search with Django and pgvector
pauloxnet
0
240
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
110
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
8
4k
Rethinking UI building strategies @ SFI 2024
letelete
0
270
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
44
9.7k
GraphQLとの向き合い方2022年版
quramy
32
12k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
How to Ace a Technical Interview
jacobian
272
22k
Designing with Data
zakiwarfel
96
4.8k
Git: the NoSQL Database
bkeepers
PRO
422
63k
KATA
mclloyd
15
12k
Stop Working from a Prison Cell
hatefulcrawdad
266
19k
The Invisible Customer
myddelton
114
12k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
227
16k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
78
42k
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