Upload
yury-omelchuk
View
78
Download
0
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