Ruby basics

1,340
-1

Published on

This presentation was held at HackDay in Yaroslavl, 3 April 2011.

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

No Downloads
Views
Total Views
1,340
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
14
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • можно заметить на строки\nменьший рассход памяти\nвыделяються в редакторе\n\n
  • \n
  • Когда я вижу птицу которая ходит как утка, плавает как утка и крякает как утка - я называю эту птицу уткой\n\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • рор - программный каркас\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Ruby basics

    1. 1. Введение в Ruby Михаил Вайсман HackDay Ярославль
    2. 2. Что такое Ruby?
    3. 3. Ruby это...A dynamic, open source programming language witha focus on simplicity and productivity. It has anelegant syntax that is natural to read and easy towrite. http://www.ruby-lang.org
    4. 4. историческая справка• Ruby был создан Yukihiro “Matz” Matsumoto в 1993 г. • Более мощный, чем Perl и более OO, чем Python• Наиболее используемая версия 1.8• Текущая версия 1.9
    5. 5. особенности• Интерпретируемый • Чистый ОО язык• Динамическая • Любое выражение типизация имет возвращаемое значение• Оптимизирован для человека • Объектная модель полностью открыта и • Легко писать и может быть изменена разработчиком читать • Мощный
    6. 6. IRB (interactive ruby)
    7. 7. IRB• Прекрасный инструмент для: • Эксперементов и проверки идей • Изучения Ruby • Исследования внутреннего устройства Ruby и его библиотек• Запускается из командной строки
    8. 8. ~$ irb --simple-prompt>> 2+2=> 4>> 5*5*5=> 125>> puts ’Hi’Hi=> nil>>
    9. 9. Объекты в Ruby
    10. 10. Все есть объект• Как и Smalltalk, Ruby это чисты ОО язык - все есть объект• Примитивных типов (int, long, byte, etc) не существует• Описывать переменные не нужно• Блок кода тоже объект
    11. 11. Что такое объект?• Хранит состояние• Может получать сообщения• Может обрабатывать сообщения
    12. 12. • “Примитивный” тип - объект •-1.abs• nil - объект •nil.class• Класс - объект • Object.new
    13. 13. “Типы”
    14. 14. Типы• Строки • С интерполяцией и без• Числа• Символы (symbols)• Массивы• Ассоциативные массивы, хэши (hash)
    15. 15. Символы• Символ - это клас• Создаются добавлением “:” к имени или строке • :my_symbol • :”my symbol”• Атомарны, неизменны и уникальны
    16. 16. Классы
    17. 17. Классы• Все объекты принадлежат какому-нибудь классу• У каждого (кроме одного) класса есть супер класс• Корень иерархии • Object (1.8) • BasicObject (1.9)
    18. 18. наследование• Единичное наследование• Подмешивание (Mix-in)
    19. 19. Методы
    20. 20. Особенности• Не вызов метода, а • ! и ? в конце имен посылка сообщения методов объекту • Скобки вокруг• Все методы аргументов возвращают значение • Упрощенный• Удаление метода синтаксис для hash• method_missing• Синтаксический сахар
    21. 21. Типы методов• Метод класса• Метод объекта• Singleton метод• Метод вне класса
    22. 22. Блоки и Proc• Ключевое слово yield• Аргумент метода с “&”• Замыкания (closure)
    23. 23. объектная модель 1.8
    24. 24. Мир Ruby
    25. 25. Интерпретаторы• MRI/YARV (ruby) • MacRuby (macruby)• Rubinius (rbx)• JRuby (jruby)• Ruby Enterprise Edition (ree)• MagLev (maglev)• IronRuby (ironruby)
    26. 26. Тестирование• Test::Unit• Shoulda• RSpec• Cucumber
    27. 27. gEMs• Централизованное хранилище • http://rubygems.org• Утилита gem• Gem Bundler
    28. 28. Экосистема RUBY• github • http://github.com• heroku • http://heroku.com• Google App Engine• Активное и дружелюбное сообщество
    29. 29. IDE• NetBeans v6.9.1Ruby Edition • http://netbeans.org• RubyMine • http://jetbrains.com/ruby• TextMate (только Mac OS)• Sublime Text 2
    30. 30. Ruby on rails
    31. 31. Ruby on rails это...Ruby on Rails is an open-source web frameworkthat’s optimized for programmer happines andsustainable productivity. It lets you write beaurifulcode by favoring convention over configuration. http://rubyonrails.org
    32. 32. Историческая справка• Ruby on Railsбыл создана David Heinemeier Hansson в 2003 г. • Web development that doesn’t hurt• Текущая версия 3.0
    33. 33. Особенности• Основан на архитектуре Model-View- Controller (MVC)• Принцип Don’t Repeat Yourself (DRY)• Convention Over Configuration• Генераторы (scaffold)• “Батарейки в комплект входят”
    34. 34. Model-View-Controller
    35. 35. демо
    36. 36. Вопрос и ответы
    37. 37. контакты• twitter: vaysman
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×