Rhomobile

1,436 views
1,373 views

Published on

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

  • Be the first to like this

No Downloads
Views
Total views
1,436
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Rhomobile

  1. 1. Cross-Platform Entwicklung mit Rhodes <ul><li>Jan Owiesniak
  2. 2. – [email_address]
  3. 3. – http://www.github.com/janowiesniak
  4. 4. Dauer
  5. 5. – ca 20 Minuten </li></ul>
  6. 6. Rhomobile
  7. 7. Entwicklung / Rhodes <ul><li>Opensource Ruby Framework zur Entwicklung von nativen Smartphone Applikationen
  8. 8. – http://rhomobile.com/
  9. 9. – http://www.ruby-lang.org/en/documentation/quickstart/
  10. 10. Github
  11. 11. – https://github.com/rhomobile/rhodes
  12. 12. Rubygems
  13. 13. – https://rubygems.org/gems/rhodes </li></ul>
  14. 14. Plattformen
  15. 15. Aufbau <ul><li>Extern
  16. 16. – Basiert auf dem MVC Pattern
  17. 17. – Ruby/HTML5/CSS/JavaScript
  18. 18. Intern
  19. 19. – In C++ implementiert
  20. 20. – Kompiliert Anwendung zu Ruby 1.9 Bytecode </li></ul>
  21. 21. Installation Allgemein <ul><li>Als eigene IDE Rhostudio (Windows, Mac)
  22. 22. – http://rhomobile.com/products/rhostudio/
  23. 23. Als Eclipse Plugin (Windows, Mac, Linux)
  24. 24. – http://docs.rhomobile.com/rhodes/rhostudio-eclipse
  25. 25. Manuell (Linux) </li></ul>
  26. 26. Installation Linux (Ubuntu 11.10) <ul><li>GIT installieren
  27. 27. – http://wiki.ubuntuusers.de/GIT
  28. 28. $ sudo apt-get install git
  29. 29. Sun Java JDK installieren
  30. 30. – http://wiki.ubuntuusers.de/JAVA#Sun-Java
  31. 31. Android SDK installieren
  32. 32. – http://developer.android.com/sdk/index.html
  33. 33. Android NDK installieren
  34. 34. – http://developer.android.com/sdk/ndk/index.html
  35. 35. AVD erstellen
  36. 36. – http://developer.android.com/guide/developing/devices/managing-avds.html </li></ul>
  37. 37. Installation Linux (Ubuntu 11.10) <ul><li>RVM installieren
  38. 38. – http://beginrescueend.com/
  39. 39. $ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )
  40. 40. [[ -s &quot;$HOME/.rvm/scripts/rvm&quot; ]] && . &quot;$HOME/.rvm/scripts/rvm&quot; # Put this in your .bashrc. This loads RVM into a shell session.
  41. 41. Ruby v1.8.7+ installieren
  42. 42. $ rvm install ree
  43. 43. RubyGems v1.8.5+ installieren
  44. 44. $ sudo apt-get install rubygems
  45. 45. Gemset anlegen
  46. 46. $ rvm use [email_address] --create
  47. 47. rhodes installieren
  48. 48. $ gem install rhodes
  49. 49. rhodes konfigurieren
  50. 50. $ rhodes-setup </li></ul>
  51. 51. Das erste Projekt <ul><li>Projekt erzeugen </li></ul><ul><li>.rvmrc erzeugen
  52. 52. cd seminar; echo 'rvm use [email_address] --create' > .rvmrc
  53. 53. Model erzeugen </li></ul>
  54. 54. MVC <ul><li>Model </li></ul>
  55. 55. MVC - Datenbankmodelle <ul><li>Property Bag
  56. 56. – http://en.wikipedia.org/wiki/Entity-attribute-value_model
  57. 57. include Rhom::PropertyBag
  58. 58. + Keine Migrationen
  59. 59. - Größer
  60. 60. - Langsamer
  61. 61. Fixed Schema
  62. 62. – http://en.wikipedia.org/wiki/Relational_model
  63. 63. include Rhom::FixedSchema
  64. 64. - Migrationen
  65. 65. + Kleiner
  66. 66. + Schneller </li></ul>
  67. 67. MVC <ul><li>Controller </li></ul>
  68. 68. MVC <ul><li>View </li></ul>
  69. 69. Konfigurieren / Kompilieren <ul><li>rhoconfig.txt
  70. 70. build.yml
  71. 71. rake run:android; tail -f rholog.txt </li></ul>
  72. 72. Rhomobile
  73. 73. Integrieren / Rhoconnect <ul><li>Opensource Mobile App Integration Server
  74. 74. Synchronisation von Enterprise Applikationen mit dem Smartphone
  75. 75. Früher Rhosync [Deprecated]
  76. 76. Github
  77. 77. – https://github.com/rhomobile/rhosync
  78. 78. Rubygems
  79. 79. – https://rubygems.org/gems/rhoconnect </li></ul>
  80. 80. Architektur
  81. 81. Standalone <ul><li>Redis 2.2.14+ installieren
  82. 82. – http://redis.io/download
  83. 83. Gemset anlegen
  84. 84. $ rvm use ree@project_name –create
  85. 85. rhoconnect installieren
  86. 86. $ gem install rhoconnect
  87. 87. Projekt erzeugen
  88. 88. $ rhoconnect app project_name
  89. 89. $ cd project_name
  90. 90. .rvmrc erzeugen
  91. 91. echo 'rvm use ree@project_name --create' > .rvmrc </li></ul>
  92. 92. Source Adapter <ul><li>Schnittstelle zwischen Rhoconnect und der Enterprise Applikation
  93. 93. Source Adapter erzeugen </li></ul>
  94. 94. Post Source Adapter
  95. 95. Hosted <ul><li>Heroku: general cloud application platform
  96. 96. – http://devcenter.heroku.com/categories/getting-started
  97. 97. RhoHub: rhodes cloud application platform
  98. 98. – http://www.rhohub.com
  99. 99. – Zur Zeit nur Rhosync [Deprecated] kein Rhoconnect </li></ul>
  100. 100. Beispiel Applikation janr <ul><li>Just Another News Reader
  101. 101. Opensource
  102. 102. – https://github.com/janowiesniak/janr-rhodes
  103. 103. – https://github.com/janowiesniak/janr-backend
  104. 104. Heroku
  105. 105. – http://blooming-ocean-5391.herokuapp.com
  106. 106. – Login: [email_address]
  107. 107. – Password: password
  108. 108. Rhohub
  109. 109. – https://app.rhohub.com/janowiesniak/projects/janr </li></ul>
  110. 110. Infrastruktur
  111. 111. Client Kommunikation Rhoconnect <ul><li>rhoconfig.txt
  112. 112. app/Post/post.rb </li></ul>
  113. 113. Server Kommunikation Rhoconnect <ul><li>rhoconnect-rb installieren
  114. 114. $ gem install rhoconnect-rb
  115. 115. app/config/initializers/rhoconnect.rb
  116. 116. app/Post/post.rb </li></ul>
  117. 117. Live Beispiel janr <ul><li>Heroku
  118. 118. – Backend
  119. 119. – Rhoconnect Adapter
  120. 120. Backend
  121. 121. – News anlegen
  122. 122. Client </li></ul>

×