37
tastes like ruby

Что должен знать Ruby-программист?

  • Upload
    iqspace

  • View
    87

  • Download
    7

Embed Size (px)

Citation preview

tastes like ruby

* ruby* rails* ecosystem* community

1976

1991

1992

1993

1994

1996

2012

философия

• мощный скриптовый язык• полноценное ООП• простота и практичность• продуктивность программиста• предсказуемое поведение

история

1993 - 1996 // первая версия @matz

1997 // английская документация

2001 // RubyConf #1

2004 // RubyConf - @dhh

13 дек 2005 // Rails 1.0 / ruby 1.8.2

особенности• все является объектом• миксины (mixins)• операторы это методы• открытые классы• выражение возвращает свое значение• блоки• синтаксис (CONST, method_names, :symbols)

объекты1.class => Fixnum

1.year.class => ActiveSupport::Duration

1.year.to_s=> "31557600.0"

1.year.ago => Sun, 19 Jul 2015 18:32:48 UTC +00:00

mixins

операторы = методы

return value

(1..9).class => Range

(1..9).select { |e| e > 4 } => [5, 6, 7, 8, 9]

(1..9).select { |e| e > 4 }.reverse=> [9, 8, 7, 6, 5]

блоки

синтаксис

rails

* actioncableactionmaileractionpackactionview* activejob

activerecord

принципы• don’t repeat yourself (DRY)• convention over configuration• model-view-controller (MVC)• RESTful design• security• developer happiness :)

фичи• роутинг• миграции• ассоциации (ActiveRecord)• i18n• автоматизированное тестирование• asset pipeline

ecosystem

community

the end