Библиотека knigago >> Компьютеры и Интернет >> Учебники и самоучители по компьютеру >> Лекции по языку Ruby


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 1564, книга: Мы вращаем Землю: Песни
автор: Владимир Семёнович Высоцкий

Книга "Мы вращаем Землю: Песни" Владимира Высоцкого представляет собой собрание пронзительных и глубоких стихов, положенных на запоминающиеся мелодии. Высоцкий, один из самых почитаемых бардов Советского Союза, мастерски сочетает поэтическое мастерство с остросоциальными комментариями и личными переживаниями. В эту антологию вошла целая вселенная песен, каждая со своим неповторимым настроем и посланием. "Песня о друге", душераздирающее размышление о мужской дружбе,...

СЛУЧАЙНАЯ КНИГА

Попрыгунчик в шкатулке (вар. пер.). Рэй Дуглас Брэдбери
- Попрыгунчик в шкатулке (вар. пер.)

Жанр: Ужасы

Серия: Рэй Брэдбери. Октябрьская страна

Автор неизвестен - Лекции по языку Ruby

Лекции по языку Ruby
Книга - Лекции по языку Ruby.   Автор неизвестен  - прочитать полностью в библиотеке КнигаГо
Название:
Лекции по языку Ruby
Автор неизвестен

Жанр:

Самиздат, сетевая литература, Учебники и самоучители по компьютеру, Литература ХXI века (эпоха Глобализации экономики), Программирование: прочее, Ruby

Изадано в серии:

неизвестно

Издательство:

неизвестно

Год издания:

ISBN:

неизвестно

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Лекции по языку Ruby"

Аннотация к этой книге отсутствует.


Читаем онлайн "Лекции по языку Ruby". Главная страница.

Функции в языке программирования Ruby

Декомпозиция алгоритма
Если из алгоритма, реализующего сложную задачу, выделить несколько более простых
«вспомогательных» алгоритмов, то исходный алгоритм будет являться комбинацией этих вспомогательных алгоритмов.
Метод как способ реализации вспомогательного алгоритма
Методы, наряду с переменными и операторами, являются основными строительными блоками в Ruby. Вспомогательные методы называют также функциями или подпрограммами.
Математическая аналогия
Функция — это четверка:
имя, откуда, куда, как.
f :X→Y
Тело функции
(правило вычисления)
f (x) = x + 2
Вызов функции
f (5)
1 def f(x)
2
x+2
3 end
4
5

puts f(5)
7

Вызов метода
Метод должен быть определен до своего использования!
Каждый метод возвращает значение. Это результат последней выполненной операции или
выражение, следующее за словом return.
Имя метода
Имя метода должно начинаться со строчной латинской буквы (от a до z). Называйте функции «говорящими» (осмысленными) именами.
Если имя состоит из нескольких слов, то их разделяют символом подчеркивания, или каждое слово, начиная со второго, выделяют заглавной буквой.
1

Метод без аргументов
def имя_метода
...
тело_метода
...
end
Пример
1
2
3

def helloWorld # имя метода
puts "Hello, World!" # тело метода
end

4
5

helloWorld # вызов метода
Hello, World!

Метод с параметрами
def имя_метода(арг1, арг2, ...)
...
тело_метода
...
end
Пример
1
2
3

def saySomething(text)
puts text
end

4
5
6

saySomething("Hello, World!")
saySomething("Привет, мир!")
Hello, World!
Привет, мир!

Вызов private метода
Методам, определяемым вне тела того или иного класса, присваивается специальная пометка private (частный), называемая спецификатором доступа. При обращении к такому методу
используется функциональная форма, а не оператор вызова метода . (точка).
Вызов public метода
Методы, определенные внутри тела класса, по умолчанию помечаются как public. При вызове методов, определенных таким образом, используется «точечная» форма вызова метода.
2

Вызов метода
Так как наши программы пока не содержат определений новых классов, то для всех методов, разработанных нами, используется функциональный стиль вызова (аналогично sin, sqrt
и т. п.).
Параметры метода
Параметры метода являются локальными переменными. Это означает, что метод оперирует копиями переменных, переданных ему (часто говорят, что параметры передаются по
значению).
Пример
1
2
3
4
5
6
7

1
2
3

def printOneMoreThan(x)
x += 1
puts "Во время выполнения: #{x}"
end
x = 1; puts "До: #{x}"
printOneMoreThan(x)
puts "После: #{x}"
До: 1
Во время выполнения: 2
После: 1

Параметры по умолчанию
Параметры по умолчанию, дают возможность вызова метода без обязательного указания
значения всех параметров.
Метод с параметрами, заданными по умолчанию
1
2
3
4
5

def имя_метода(арг1 = знач1, арг2 = знач2, ...)
...
тело_метода
...
end

Пример
1
2
3
4
5
6
7

def saySomething(text = ’Hello, World!’)
puts text
end
saySomething
saySomething()
saySomething "Пробел между именем и аргументами"
saySomething(" или использование скобок")

3

1
2
3
4

Hello, World!
Hello, World!
Пробел между именем и аргументами
или использование скобок

Вызов метода с аргументами
Рекомендуется всегда заключать аргументы метода в круглые скобки. Это позволит избежать некоторых ошибок и недоразумений. Общепринятыми исключениями являются методы
печати — puts, print и т. д., хотя и при их вызове аргументы полезно заключать в скобки.
О методах, получающих массив в качестве параметра
Массив — это набор ССЫЛОК на некоторые элементы (их адресов в памяти компьютера).
При передаче массива-параметра он копируется аналогично другим объектам (но копируются
при этом ссылки!)
Операция [ ]= осуществляет переход по ссылке к соответствующей ячейки памяти и изменяет её содержимое. Следовательно, меняется и сам исходный массив.
Функция, изменяющая массив
1 def modify(ar)
2
for i in 0 ... ar.size
3
ar[i] = ar[i]∗2
4
end
5
return ar
6 end
7 a = [1, 2, 3, 4]
8 puts "Массив до вызова функции modify"
9 p a
10 puts "Вызвали функцию modify"
11 p modify(a)
12 puts "Массив после вызова функции modify"
13 p a
1
2
3
4
5
6

Массив до вызова функции modify
[1, 2, 3, 4]
Вызвали функцию modify
[2, 4, 6, 8]
Массив после вызова функции modify
[2, 4, 6, 8]

Функция,
не изменяющая массив
1 def dont_modify(ar)
2
arNew = ar.clone
3
for i in 0 --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.