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. Sugar for iOS.
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Aliaksandr Lomau
December 07, 2013
Technology
1
200
Rubymotion. Sugar for iOS.
Cocoaheads, Grodno, December, 2013
Aliaksandr Lomau
December 07, 2013
Tweet
Share
More Decks by Aliaksandr Lomau
See All by Aliaksandr Lomau
Fails Night
allomov
0
48
"Ya Ne Lochu Comp" Challenge.
allomov
1
95
Catch and Throw in Ruby
allomov
0
45
Mortal Rubizza
allomov
0
94
Рэмбовидная проблема: особенности развития открытых технологий
allomov
0
53
Vault-tec: Safest Future
allomov
0
260
Promises and Reality
allomov
1
55
Cloud Theory for Rubizza Classes
allomov
0
91
Антология деплоя
allomov
0
79
Other Decks in Technology
See All in Technology
Open Table Formatにおけるストレージ抽象化の比較
lycorptech_jp
PRO
0
140
pool.ntp.orgに ⾃宅サーバーで 参加してみたら...
tanyorg
1
2.8k
(技術的には)社内システムもOKなブラウザエージェントを作ってみた!
har1101
1
440
Amazon Rekognitionで 「信玄餅きなこ問題」を解決する
usanchuu
1
260
Cloud Runでコロプラが挑む 生成AI×ゲーム『神魔狩りのツクヨミ』の裏側
colopl
0
260
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
56
47k
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
680
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
1.4k
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
440
Greatest Disaster Hits in Web Performance
guaca
0
330
Cosmos World Foundation Model Platform for Physical AI
takmin
0
1k
【Ubie】AIを活用した広告アセット「爆速」生成事例 | AI_Ops_Community_Vol.2
yoshiki_0316
1
140
Featured
See All Featured
Writing Fast Ruby
sferik
630
62k
We Are The Robots
honzajavorek
0
170
Building Adaptive Systems
keathley
44
2.9k
Odyssey Design
rkendrick25
PRO
1
510
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
650
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
290
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
55
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
160
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
69
Believing is Seeing
oripsolob
1
65
Transcript
rubymotion Sugar for iOS
HELLO code1n « allomov đ
I will talk about rubymotion
I will talk about rubymotion RubyMotion Laurent Sansonetti
How it works? 1 2 3 4 RUBY CODE AST
(semantic tree) LLVM IR Machine code Ruby parser RubyMotion LLVM code generator
How it works? # Ruby "Hello BRUG".class.ancestors => [String, Comparable,
Object, Kernel, BasicObject] # RubyMotion "Hello BRUG".class.ancestors => [String, NSMutableString, NSString, Comparable, NSObject, Kernel] OBJECTS
Ruby is neat RubyMotion Objective-C
met aprogramming is almost magic
Objective-C <objc/runtime.h>
send def tableView(tableView, didSelectRowAtIndexPath:indexPath) menu_row = self.menu_items[indexPath.row] # => 'profile'
self.send("open_#{menu_row}") end ! def open_profile; #...; end def open_messages; #...; end ! def open_feed; # ...; end
method_missing Slide is missing Please, imagine suitable image
define_method module Mouth def self.can_say(name) define_method("say_#{name}") do name.upcase end end
end ! class Person include Mouth can_say :hello end ! person.say_hello # => "HELLO"
DSl Domain Specific Language
Teacup teacup :main_window do style :UILabel, text: 'Hello!' style :hi_button,
origin: [10, 10], title: 'Hi!' end
20.times do rmq.append(UIButton).tag(:foo).move(l: rand(200), t: rand(500), w: 80, h: 20).style
do |st| st.text = rand(200).to_s st.background_color = rmq.color.blue end end RMQ
REPL Wanna see some magic?
TDD RubyMotion integrates Bacon Bacon is small clone of the
popular RSpec it can simulate user behaviour on device
Game in 15 minutes?
REPL Wanna see some magic? AppStore
THANK YOU FOR YOUR ATTENTION. Bye ! code1n « allomov
đ