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
80
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
61
You should learn Go!
kodio
1
120
Daha iyi Geliştirme Ortamı için: Vagrant
kodio
0
63
Building Next-Generation iOS Apps with AFNetworking 2.0
kodio
2
210
Reactive Principles
kodio
1
130
AngularJS vs. Ember.js vs. Backbone.js
kodio
1
500
iBeacons: Interacting with the physical world using Bluetooth LE
kodio
1
84
Go: a simple programming environment
kodio
2
150
Why I had to write a client side framework for Koding.
kodio
1
88
Other Decks in Programming
See All in Programming
VS Code をプロダクトにどう取り込むか
onomax
1
370
Zero Waste, Radical Magic, and Italian Graft – Quarkus Efficiency Secrets
hollycummins
0
230
Let's learn code review
riofujimon
2
430
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
110
TCAとKMPを用いた新規動画配信アプリ 「ABEMA Live」の設計
tomu28
1
110
Git Lint
bkuhlmann
4
750
初心者のためのRubyKaigi入門/RubyKaigi Introduction
a_matsuda
2
870
Rubyでたのしむクリエイティブコーディング/Enjoy Creative coding with Ruby
chobishiba
1
180
雑に思考を整理する技術と効能
konifar
60
29k
#phpcon_odawara オープン・クローズドなテストフィクスチャを求めて / open closed test fixtures
77web
3
230
[技育CAMPアカデミア]アイディアを形に!【超入門】スマホアプリ開発〜リリースまでの流れをご紹介
teamlab
PRO
0
380
Netty Chicago Java User Group 2024-04-17
sullis
0
180
Featured
See All Featured
For a Future-Friendly Web
brad_frost
172
9k
Product Roadmaps are Hard
iamctodd
44
9.7k
Infographics Made Easy
chrislema
238
18k
Agile that works and the tools we love
rasmusluckow
325
20k
The Mythical Team-Month
searls
216
42k
Navigating Team Friction
lara
178
13k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
Building Flexible Design Systems
yeseniaperezcruz
319
37k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
17
1.4k
Music & Morning Musume
bryan
41
5.6k
Faster Mobile Websites
deanohume
299
30k
Optimising Largest Contentful Paint
csswizardry
8
2.4k
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!