Sure, I Could Learn Objective-C, but...

1,418 views

Published on

Slides from the presentation that I gave at the Kod.io conference in Istanbul, on October 26, 2013. In this presentation, I look at how RubyMotion can be used for much more than just a direct translation of Objective-C.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,418
On SlideShare
0
From Embeds
0
Number of Embeds
43
Actions
Shares
0
Downloads
10
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Sure, I Could Learn Objective-C, but...

  1. 1. Sure, I could learn Objective-C but... Isn’t there something better?
  2. 2. Joshua Ballanco @manhattanmetric https://github.com/jballanc
  3. 3. Joshua Ballanco @manhattanmetric https://github.com/jballanc
  4. 4. What is Objective-C? • Object Oriented • Message Passing • SmallTalk Inspired • Strict Superset of C
  5. 5. Objective-C Explosion Why?
  6. 6. Duh...
  7. 7. Is there another option?
  8. 8. What is Ruby? • Object Oriented • Message Passing • SmallTalk Inspired • Strict Superset of C RubyMotion is Ruby for iOS and OS X
  9. 9. Learning a New Language Stage 1 I understand what you’re saying... but I have no idea how to reply
  10. 10. Learning a New Language Stage 2 I know how to construct statements, but they are direct translations from that other language I know
  11. 11. Learning a New Language Stage 3 I get it!
  12. 12. How to learn RubyMotion? • If you don’t know Objective-C... • GREAT! Go for it!
  13. 13. How to learn RubyMotion? • Directly Translate • Apply Ruby Refactorings • Re-Open Core Types (Monkey-Patching) • Build Modules • Use Wrappers
  14. 14. JTGestureBasedTableView https://github.com/jamztang/JTGestureBasedTableViewDemo
  15. 15. GestureTable Sample https://github.com/HipByte/RubyMotionSamples/tree/master/ios/GestureTable
  16. 16. Direct Translation Obj-C RubyMotion
  17. 17. Direct Translation
  18. 18. Direct Translation
  19. 19. Direct Translation Obj-C RubyMotion
  20. 20. Direct Translation Obj-C RubyMotion
  21. 21. Direct Translation Obj-C RubyMotion
  22. 22. Direct Translation Obj-C RubyMotion
  23. 23. Ruby Refactoring
  24. 24. Ruby Refactoring
  25. 25. Re-Open Core Classes
  26. 26. Modules
  27. 27. Modules
  28. 28. Wrappers http://motionwrappers.com/
  29. 29. Wrappers http://motionwrappers.com/
  30. 30. Wrappers http://motionwrappers.com/
  31. 31. Wrappers http://motionwrappers.com/
  32. 32. Wrappers http://motionwrappers.com/
  33. 33. Why should I use Objective-C • Speed • Interface directly with C libraries • Like long method names
  34. 34. Why should I use RubyMotion • Development speed • Clear, concise business logic • Use high-level wrapper libraries
  35. 35. Moral of the Story... Use the best tool for the job... and there is more than one tool!

×