diff options
Diffstat (limited to 'ru-ru/ruby-ru.html.markdown')
-rw-r--r-- | ru-ru/ruby-ru.html.markdown | 39 |
1 files changed, 21 insertions, 18 deletions
diff --git a/ru-ru/ruby-ru.html.markdown b/ru-ru/ruby-ru.html.markdown index baa5e8b5..0a8fbb09 100644 --- a/ru-ru/ruby-ru.html.markdown +++ b/ru-ru/ruby-ru.html.markdown @@ -1,13 +1,14 @@ --- language: ruby +lang: ru-ru filename: learnruby-ru.rb contributors: - - ["David Underwood", "http://theflyingdeveloper.com"] - - ["Joel Walden", "http://joelwalden.net"] - - ["Luke Holder", "http://twitter.com/lukeholder"] - - ["Tristan Hume", "http://thume.ca/"] - - ["Nick LaMuro", "https://github.com/NickLaMuro"] - - ["Alexey Makarov", "https://github.com/Anakros"] + - ["David Underwood", "http://theflyingdeveloper.com"] + - ["Joel Walden", "http://joelwalden.net"] + - ["Luke Holder", "http://twitter.com/lukeholder"] + - ["Tristan Hume", "http://thume.ca/"] + - ["Nick LaMuro", "https://github.com/NickLaMuro"] + - ["Alexey Makarov", "https://github.com/Anakros"] --- ```ruby @@ -87,7 +88,7 @@ puts "Я печатаюсь!" x = 25 #=> 25 x #=> 25 -# Присваивание значения возвращает присвоенное значение +# Присваивание значения возвращает то самое присвоенное значение. # Это позволяет делать множественные присваивания: x = y = 10 #=> 10 @@ -150,7 +151,7 @@ array[1..3] #=> [2, 3, 4] # Вот так можно добавить значение в массив array << 6 #=> [1, 2, 3, 4, 5, 6] -# Хэши -- это массив пар ключ => значение. +# Хэши -- это массив пар "ключ => значение". # Хэши объявляются с использованием фигурных скобок: hash = {'color' => 'green', 'number' => 5} @@ -160,7 +161,7 @@ hash.keys #=> ['color', 'number'] hash['color'] #=> 'green' hash['number'] #=> 5 -# Поиск по ключу, которого в хэше нет, вернёт nil: +# Поиск по ключу, которого в хэше нет вернёт nil: hash['nothing here'] #=> nil # начиная с Ruby 1.9, существует специальный синтаксис @@ -200,7 +201,8 @@ end # "for" не имеет своей области видимости и все переменные, объявленные в нём # будут доступны отовсюду. "each" вместе с блоком создаёт свою область видимости. -# Метод "each" для диапазона значений запускает блок кода один раз для каждого из значений диапазона +# Метод "each" для диапазона значений запускает блок кода один раз +# для каждого из значений диапазона # Блок передаёт счётчик (counter) в качестве параметра. # Вызов метода "each" с блоком выглядит следующим образом: @@ -295,18 +297,19 @@ surround { puts 'hello world' } # Определение класса с помощью ключевого слова "class" class Human - # Переменная класса, она является общей для всех экземпляров класса + # Переменная класса, она является общей для всех экземпляров класса @@species = "H. sapiens" # Базовый метод-конструктор def initialize(name, age=0) - # Присвоить аргумент "name" переменной "name" экземпляра класса + # Присвоить аргумент "name" переменной "name" экземпляра класса @name = name - # Если аргумент "age" не задан, мы используем значение по умолчанию из списка аргументов + # Если аргумент "age" не задан, + # мы используем значение по умолчанию из списка аргументов @age = age end - # Базовый метод установки значения для переменной (setter) + # Базовый метод установки значения для переменной (setter) def name=(name) @name = name end @@ -316,9 +319,9 @@ class Human @name end - # Метод класса определяется с ключевым словом "self", - # чтобы можно было отличить его от метода экземпляра класса. - # Он может быть вызван только на уровне класса, не экземпляра. + # Метод класса определяется с ключевым словом "self", + # чтобы можно было отличить его от метода экземпляра класса. + # Он может быть вызван только на уровне класса, но не экземпляра. def self.say(msg) puts "#{msg}" end @@ -335,7 +338,7 @@ jim = Human.new("Jim Halpert") dwight = Human.new("Dwight K. Schrute") -# Давайте вызовем несколько методов этого класса +# Давайте вызовем несколько методов jim.species #=> "H. sapiens" jim.name #=> "Jim Halpert" jim.name = "Jim Halpert II" #=> "Jim Halpert II" |