Как выбрать детский сад ? Что должен знать каждый родитель о детском саде ?
Что должен знать Ruby-программист?
Transcript of Что должен знать Ruby-программист?
философия
• мощный скриптовый язык• полноценное ООП• простота и практичность• продуктивность программиста• предсказуемое поведение
история
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
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]
принципы• don’t repeat yourself (DRY)• convention over configuration• model-view-controller (MVC)• RESTful design• security• developer happiness :)
фичи• роутинг• миграции• ассоциации (ActiveRecord)• i18n• автоматизированное тестирование• asset pipeline