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 - How I learned to like iOS despite ...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Thom Parkin
January 10, 2013
Programming
0
370
RubyMotion - How I learned to like iOS despite Objective-C
First talk of the year for Orlando Ruby User Group (ORUG)
Thom Parkin
January 10, 2013
Tweet
Share
Other Decks in Programming
See All in Programming
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
7
2.4k
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
220
Claude Codeと2つの巻き戻し戦略 / Two Rewind Strategies with Claude Code
fruitriin
0
140
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
650
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
200
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
SourceGeneratorのススメ
htkym
0
200
Package Management Learnings from Homebrew
mikemcquaid
0
230
Apache Iceberg V3 and migration to V3
tomtanaka
0
170
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
16年目のピクシブ百科事典を支える最新の技術基盤 / The Modern Tech Stack Powering Pixiv Encyclopedia in its 16th Year
ahuglajbclajep
5
1k
CSC307 Lecture 04
javiergs
PRO
0
660
Featured
See All Featured
Done Done
chrislema
186
16k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
320
30 Presentation Tips
portentint
PRO
1
220
Exploring anti-patterns in Rails
aemeredith
2
250
Are puppies a ranking factor?
jonoalderson
1
2.7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.2k
Designing Powerful Visuals for Engaging Learning
tmiket
0
240
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Git: the NoSQL Database
bkeepers
PRO
432
66k
It's Worth the Effort
3n
188
29k
How to Talk to Developers About Accessibility
jct
2
130
Transcript
RubyMotion How I learned to like iOS despite Objective-C
iOS Mobile Development
iOS Mobile Development Objective-C ME
Objective-C syntax is bizarre & strange Struggle with nuances of
XCode Interface Builder is very “GUI” iOS follows MVC [generally] iOS Mobile Development
iOS Mobile Development Objective - C
iOS Mobile Development Objectionable-C
Obtuse iOS Mobile Development Objectionable-C
RubyMotion ‘Toolchain for iOS’ (iPhone/iPad/iPod) NOT PhoneGap or Rhomobile Creates
statically compiled, native code Fully compliant with App Store guidelines
RubyMotion Familiar environment Ruby*, MVC Tests (MacBacon) Memory Management Ruby
Gems Rake CLI (Terminal based workflow) *still required to understand structure and syntax of Obj-C
RubyMotion Debugger (introduced in 1.24) Read-Eval-Print-Loop (REPL) Huge community Libraries
and DSLs Mix Objective-C and Ruby
RubyMotion Laurent Sansonetti Creator and lead developer of MacRuby left
Apple late 2011 HipByte (small team) Made by Rubyists for Rubyists
RubyMotion Match Made in Heaven?
RubyMotion Match Made in Heaven? Marriage between MacRuby and iOS
iOS Mobile Development RubyMotion Only ONE file (.rb)
iOS Mobile Development RubyMotion NSObject is root class Only ONE
file (.rb)
iOS Mobile Development RubyMotion NSObject is root class implicit return
Only ONE file (.rb)
iOS Mobile Development RubyMotion NSObject is root class Duck typing
implicit return Only ONE file (.rb)
iOS Mobile Development RubyMotion NSObject is root class Duck typing
“sensible” dot notation implicit return Only ONE file (.rb)
RubyMotion
RubyMotion ENOUGH TALK LET’S CODE iOS in RUBY!!
RubyMotion No `eval` (statically compiled) No proc#binding No define_method Named
Parameters RVM / Bundler / Gems is NOT pure Ruby
RubyMotion Learning Objective-C slow painful Ruby familiar fun Conclusion
RubyMotion Purchase RubyMotion (~$200)* license key 1 year software updates
1 year private ticket system “How Do I Get Started?!” * 10% discount code
RubyMotion Google Group GitHub HipByte/RubyMotion ParkinT/RubyMotion_Life/wiki ParkinT/RubyMotionSamples ParkinT/F1rstUse Resources
RubyMotion Book Clay Allsopp Wiki Tutorials Official Samples repo MotionCasts
Conference #inspect Resources