mirror of
https://github.com/adambard/learnxinyminutes-docs.git
synced 2025-03-16 04:10:01 +01:00
- added russian "lang" in description
- removed tabs - minor changes in the text
This commit is contained in:
parent
27a73fe175
commit
e5f626f7c4
@ -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"
|
||||
|
Loading…
x
Reference in New Issue
Block a user