Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Ruby on Rails at HackDay in Saint Petersburg

949 views

Published on

Презентация для мастер-класса по Ruby on Rails на HackDay в Санкт-Петербурге 5 сентября 2009 года.

Published in: Technology
  • Be the first to comment

Ruby on Rails at HackDay in Saint Petersburg

  1. 1. Ruby on Rails Александр Красс Alexander.Krass@gmail.com
  2. 2. Что такое Ruby on Rails? • Ruby • Мощнейший фреймворк 2
  3. 3. Ruby На язык очень сильно повлияли: • Perl • Smalltalk • Lisp Разработан в 1993 году. 3
  4. 4. Ruby “Ruby is designed to make programmers happy” Yukihiro Matsumoto aka Matz 4
  5. 5. Ruby • Важно, чтобы удобно было человеку, а не машине, тогда программирование по- настоящему продуктивно. 5
  6. 6. В Ruby всё – это объекты 6
  7. 7. If без всяких хитростей 7
  8. 8. If без всяких хитростей 8
  9. 9. Case 9
  10. 10. Регулярные выражения 10
  11. 11. Блоки 11
  12. 12. Как принимать в функции блок? 12
  13. 13. Посмотрим внимательно на динамическое типизирование 13
  14. 14. Duck typing • Если что-то ходит как утка, крякает как утка, выглядит как утка, то это утка • Это называется “Duck typing” (“утиным типизированием”) 14
  15. 15. Посмотрим ещё внимательнее 15
  16. 16. Посмотрим ещё внимательнее У объекта класса Dog вызовется method_missing, который сгенерирует исключение. 16
  17. 17. method_missing 17
  18. 18. Это можно, например, использовать так… 18
  19. 19. Ruby • Очень активное сообщество • Постоянно совершенствуется 19
  20. 20. Rails. Кто, например, использует? 20
  21. 21. Rails. Основные принципы Convention over Configuration 21
  22. 22. Rails. Основные принципы Don’t Repeat Yourself 22
  23. 23. Rails. Основные принципы Model-View-Controller 23
  24. 24. Active Record Таблица tasks Поле Тип id int(11) title varchar(255) due_date date 24
  25. 25. Создаём модель 25
  26. 26. Database Migration 26
  27. 27. db/migrate 27
  28. 28. Active Record 28
  29. 29. Active Record 29
  30. 30. Action Controller • http://www.../tasks/index • Здесь: – tasks – это TaskController – index – это метод класса TaskController 30
  31. 31. Для этого создаём ресурс 31
  32. 32. Как это выглядит 32
  33. 33. Action View 33
  34. 34. Action View 34
  35. 35. Демонстрация 35
  36. 36. Они сделают за Вас многое – плагины и gems 36
  37. 37. Аутентификация и авторизация • restful_autentification • authlogic • authlogic_openid • restful_acl • … 37
  38. 38. Загрузка файлов и изображений • papaperclip • attachments_fu • file_column • … 38
  39. 39. И многое, многое другое • will_paginate • recaptcha • act_as_commentable • act_as_taggable / act_as_taggable_on_steroids • act_as_rateable • act_as_state_machine • … 39
  40. 40. Популярные IDE • Aptana RadRails (Eclispse) • IntelliJ IDEA / RubyMine • Microsoft Visual Studio (Ruby in Steel) • NetBeans • TextMate, Vim и другие мощные текстовые редакторы 40
  41. 41. Что же нам даёт Rails в двух словах? 41
  42. 42. Rails делает за Вас много рутинных задач, сохраняя Ваше время для творчества. 42
  43. 43. Что посмотреть? • rubyonrails.com • railscasts.com • slideshare.net • Agile Web Development with Rails. 3rd Edition 43
  44. 44. Ruby on Rails Александр Красс Alexander.Krass@gmail.com

×