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
Sure, I could learn Objective-C but...
Search
Kod.io
October 26, 2013
Programming
1
84
Sure, I could learn Objective-C but...
By Joshua Ballanco
http://kod.io
Kod.io
October 26, 2013
Tweet
Share
More Decks by Kod.io
See All by Kod.io
Our future is in our past or whatever
kodio
0
64
You should learn Go!
kodio
1
130
Daha iyi Geliştirme Ortamı için: Vagrant
kodio
0
64
Building Next-Generation iOS Apps with AFNetworking 2.0
kodio
2
310
Reactive Principles
kodio
1
140
AngularJS vs. Ember.js vs. Backbone.js
kodio
1
500
iBeacons: Interacting with the physical world using Bluetooth LE
kodio
1
93
Go: a simple programming environment
kodio
2
160
Why I had to write a client side framework for Koding.
kodio
1
91
Other Decks in Programming
See All in Programming
2,500万ユーザーを支えるSREチームの6年間のスクラムのカイゼン
honmarkhunt
6
3.6k
[JAWS-UG横浜 #79] re:Invent 2024 の DB アップデートは Multi-Region!
maroon1st
0
120
ゼロからの、レトロゲームエンジンの作り方
tokujiros
3
1.1k
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
2.3k
SRE、開発、QAが協業して挑んだリリースプロセス改革@SRE Kaigi 2025
nealle
1
2.9k
ErdMap: Thinking about a map for Rails applications
makicamel
1
930
AWSマネコンに複数のアカウントで入れるようになりました
yuhta28
2
140
動作確認やテストで漏れがちな観点3選
starfish719
5
720
Immutable ActiveRecord
megane42
0
110
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
180
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
250
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
222
9.1k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Bash Introduction
62gerente
610
210k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
192
16k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
174
51k
Rails Girls Zürich Keynote
gr2m
94
13k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Why Our Code Smells
bkeepers
PRO
335
57k
Docker and Python
trallard
43
3.2k
Music & Morning Musume
bryan
46
6.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
39
1.9k
Transcript
Sure, I could learn Objective-C but... Isn’t there something better?
Joshua Ballanco @manhattanmetric https://github.com/jballanc
Joshua Ballanco @manhattanmetric https://github.com/jballanc
What is Objective-C? • Object Oriented • Message Passing •
SmallTalk Inspired • Strict Superset of C
Objective-C Explosion Why?
Duh...
Is there another option?
What is Ruby? • Object Oriented • Message Passing •
SmallTalk Inspired • Strict Superset of C RubyMotion is Ruby for iOS and OS X
Learning a New Language Stage 1 I understand what you’re
saying... but I have no idea how to reply
Learning a New Language Stage 2 I know how to
construct statements, but they are direct translations from that other language I know
Learning a New Language Stage 3 I get it!
How to learn RubyMotion? • If you don’t know Objective-C...
• GREAT! Go for it!
• Directly Translate • Apply Ruby Refactorings • Re-Open Core
Types (Monkey-Patching) • Build Modules • Use Wrappers How to learn RubyMotion?
JTGestureBasedTableView https://github.com/jamztang/JTGestureBasedTableViewDemo
GestureTable Sample https://github.com/HipByte/RubyMotionSamples/tree/master/ios/GestureTable
Direct Translation Obj-C RubyMotion
Direct Translation
Direct Translation
Direct Translation Obj-C RubyMotion
Direct Translation Obj-C RubyMotion
Direct Translation Obj-C RubyMotion
Direct Translation Obj-C RubyMotion
Ruby Refactoring
Ruby Refactoring
Re-Open Core Classes
Modules
Modules
Wrappers http://motionwrappers.com/
Wrappers http://motionwrappers.com/
Why should I use Objective-C • Speed • Interface directly
with C libraries • Like long method names
Why should I use RubyMotion • Development speed • Clear,
concise business logic • Use high-level wrapper libraries
Moral of the Story... Use the best tool for the
job... and there is more than one tool!