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
Ruby for Mobile Development
Search
Aliaksandr Lomau
November 23, 2013
Technology
1
170
Ruby for Mobile Development
BRUG, Minsk, November, 2013
Aliaksandr Lomau
November 23, 2013
Tweet
Share
More Decks by Aliaksandr Lomau
See All by Aliaksandr Lomau
Fails Night
allomov
0
38
"Ya Ne Lochu Comp" Challenge.
allomov
1
88
Catch and Throw in Ruby
allomov
0
40
Mortal Rubizza
allomov
0
79
Рэмбовидная проблема: особенности развития открытых технологий
allomov
0
48
Vault-tec: Safest Future
allomov
0
230
Promises and Reality
allomov
1
51
Cloud Theory for Rubizza Classes
allomov
0
87
Антология деплоя
allomov
0
74
Other Decks in Technology
See All in Technology
CIでのgolangci-lintの実行を約90%削減した話
kazukihayase
0
340
Абьюзим random_bytes(). Фёдор Кулаков, разработчик Lamoda Tech
lamodatech
0
270
Agentic Workflowという選択肢を考える
tkikuchi1002
1
370
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
2
140
Uniadex__公開版_20250617-AIxIoTビジネス共創ラボ_ツナガルチカラ_.pdf
iotcomjpadmin
0
150
成立するElixirの再束縛(再代入)可という選択
kubell_hr
0
860
登壇ネタの見つけ方 / How to find talk topics
pinkumohikan
3
270
IIWレポートからみるID業界で話題のMCP
fujie
0
720
Prox Industries株式会社 会社紹介資料
proxindustries
0
190
新卒3年目の後悔〜機械学習モデルジョブの運用を頑張った話〜
kameitomohiro
0
370
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
53
32k
AIエージェント最前線! Amazon Bedrock、Amazon Q、そしてMCPを使いこなそう
minorun365
PRO
10
3.8k
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Scaling GitHub
holman
459
140k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
GraphQLとの向き合い方2022年版
quramy
46
14k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.9k
Facilitating Awesome Meetings
lara
54
6.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
4
200
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Become a Pro
speakerdeck
PRO
28
5.4k
Transcript
RUBY MOBILE D E V E L O P M
E N T
Hello code1n allomov ALTOROS
TODAY I TALK ABOUT this presentation: http://speakerdeck.com/allomov
MOBILE APPLICATIONS TYPES WEB NATIVE HYBRID
WEB APPLICATIONS
WEB MOBILE APPLICATIONS
WEB MOBILE APPLICATIONS WEB NATIVE
WEB MOBILE APPLICATIONS - Offline mode support - WebStorage -
GeolocationAPI - CSS3 selectors - Media Queries
WEB MOBILE APPLICATIONS Limitations: WEB MOBILE APPLICATIONS - native UI
elemnets - WebStorage is limited - No accelerometer - No support gestures - Lack of Notifications - Background mode - and much more ...
WEB MOBILE APPLICATIONS ZURB FOUNDATION TWITTER BOOTSTRAP
HYBRID APPLICATIONS
HYBRID APPLICATIONS WEB VIEW APPLICATION LOGIC
HYBRID APPLICATIONS Phonegap Sencha Touch Calatrava Rhodes Ruby JavaScript
NATIVE APPLICATIONS
NATIVE APPLICATIONS
WHAT TO CHOOSE? NATIVE HYBRID WEB USER EXPERIENCE
NATIVE APPLICATIONS
MobiRuby Ruboto RubyMotion
Mob Rub
Mob Rub
Yukihiro "Matz" Matsumoto
- Subset of CRuby (without File, Socket) - Generational incremental
GC - AOT compilation into *.mrb bytecode - Can be converted to readable C code
- Mobile development kit on mruby - Opensource, MIT license
- Currently implemented only for iOS Mob Rub
Mob Rub has only one app in AppStore already
None
Charles Nutter
Rub Motio
Rub Motio Laurent Sansonetti
Strengths:
Strengths: - Ruby good is
Strengths: - Ruby good is - Community
Strengths: - Ruby good is - Community - iOS native
Strengths: - Ruby good is - Community - iOS native
- Test suites
Strengths: - Ruby good is - Community - iOS native
- Test suites - and more...
DARK SIDE
- most expensive DARK SIDE
- most expensive - not open source DARK SIDE
AppStore
HOW IT WAS? Objective-C Objective-C Runtime Foundation Framework iOS SDK
HOW IT IS? Objective-C Objective-C Runtime Foundation Framework iOS SDK
Rub Motio
Rub Motio Objective-C
# Ruby "Hello BRUG".class.ancestors => [String, Comparable, Object, Kernel, BasicObject]
# RubyMotion "Hello BRUG".class.ancestors => [String, NSMutableString, NSString, Comparable, NSObject, Kernel] OBJECTS
# RubyMotion NSObject == Object => true OBJECTS
# Objective-C [string drawAtPoint: point withFont: font] # RubyMotion string.drawAtPoint(point,
withFont: font) # using send string.send(:"drawAtPoint:withFont:", point, font) NAMED PARAMETERS
METAPROGRAMMING define_method method_missing send instance_eval (with block) const_get (or even
set)
REPL console
TDD RubyMotion integrates Bacon Bacon is small clone of the
popular RSpec it can simulate user behaviour on device
TOOLS
GEMS teacup bubble-wrap simpleview ib
BACKEND AS A SERVICE HELIOS
ASK QUESTIONS KEEP CALM AND