Prezentácia: Ruby on RAils

1,005 views

Published on

Moja prezentácia o webovej platforme Ruby on RAils na Pokročilé webové systémy.

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,005
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Prezentácia: Ruby on RAils

  1. 1. Ruby on Rails Gabriel Ščerbák
  2. 2. Ruby <ul><li>Objektovo orientovaný jazyk založený na posielaní správ:
  3. 3. class XML
  4. 4. def method_missing (msg, *args, &block)
  5. 5. puts &quot;< #{msg} > #{args[ 0 ]}</ #{msg} >&quot;
  6. 6. end
  7. 7. end
  8. 8. document = XML . new
  9. 9. document. title “New document“ </li></ul>
  10. 10. Ruby <ul><li>Prky funkcionálneho programovania - closures
  11. 11. class XML
  12. 12. def method_missing (msg, *args, &block)
  13. 13. args. each do |value|
  14. 14. puts &quot;< #{msg} > #{value }</ #{msg} >&quot;
  15. 15. end
  16. 16. end
  17. 17. end
  18. 18. XML . new.name “John“, “Jack“, “Joe“, “Justin“, “Julian“ </li></ul>
  19. 19. Ruby <ul><li>Dynamické typovanie
  20. 20. Metaprogramovanie, otvorené triedy, symboly,...
  21. 21. Key Value Coding pomocou asociatívnych polí
  22. 22. Minimalistická syntax, nepovinné zátvorky, nepovinné bodkočiarky, end na konci bloku kódu namiesto zložených zátvoriek okolo,... </li></ul>
  23. 23. Rails <ul><li>Konvencia pred konfiguráciou, scaffolding
  24. 24. Architektúra MVC s podporou štýlu REST
  25. 25. $ ruby script/generate scaffold Recipe title:string
  26. 26. chef:string instructions:text
  27. 27. Views pre index, show, new a edit operácie
  28. 28. Layout a CSS pre Recipes
  29. 29. Controller, Helper, funkčný test a presmerovanie URL adries v štýle REST pre Recipes
  30. 30. Model, migrácia, unit test a testovacie dáta pre Recipe </li></ul>
  31. 31. Rails <ul><li>Množina interných doménovo špecifických jazykov
  32. 32. # routes.rb
  33. 33. map. resources :projects
  34. 34. map. task_archive ' tasks/ :year / :month', :controller => 'tasks', :action => 'archive'
  35. 35. map. home '', :controller => ' projects ', :action => ' index ' </li></ul>
  36. 36. Rails <ul><li>Vzor Active Record spolu s migráciami a rake db:* úlohami úplne abstrahujú od databázu
  37. 37. $ruby script/generate model Folder
  38. 38. class Folder < ActiveRecord :: Base
  39. 39. acts_as_tree
  40. 40. belongs_to :user
  41. 41. has_many :messages, :class_name => &quot; Message &quot;
  42. 42. end
  43. 43. $rake db:migrate </li></ul>
  44. 44. Ekosystém <ul><li>Runtime platformy: MRI, JRuby, IronRuby, MacRuby, MagLev, Rubinius
  45. 45. Konzultácie, tréning, konferencie, knihy, ...
  46. 46. Ukladanie dát: MySQL, Oracle, MongoDB, Redis
  47. 47. Možnosti nasadenia: Engine Yard, Heroku,...
  48. 48. Hosting projektov: GitHub, RubyForge,...
  49. 49. IDE: TextMate, Netbeans, Eclipse, Aptana RadRails, </li></ul>
  50. 50. Ruby on Rails v praxi Basecamp Twitter Shopify Yellow pages Baseamp GitHub Lighthouse
  51. 51. Ďakujem za Vašu pozornosť!

×