Первые 20 часов. Как быстро научиться… чему угодно | страница 72



Строки не единственный класс объектов. Вот пример класса целых чисел:

million = 1000000

Если объекты — это существительные языка программирования, то методы являются аналогом глаголов: то, что мы можем делать с объектами.

Предположим, у меня есть два строковых объекта, содержащих мои имя и фамилию:

firstname = "Josh"

lastname = "Kaufman"

Я могу использовать символ сложения (+), чтобы объединить эти строки, то есть соединить вместе:

fullname = firstname + lastname

Контрольный вопрос: что содержит переменная fullname? Если вы скажете «Josh Kaufman», то ошибетесь.

Не забывайте, что компьютер делает только то, что вы ему говорите. Вы не указывали, что нужно добавить пробел между «Josh» и «Kaufman». Поэтому переменная fullname будет содержать «JoshKaufman».

Поэтому если мы хотим исправить эту маленькую ошибку, то нужно изменить команду, добавив в нее пробел:

fullname = firstname + " " + lastname

«+» — это метод, и его действие зависит от того, к каким объектам он применяется. Если мы применим его к целым числам, а не строкам, то получим операцию сложения, а не объединения.

sum = million + million

Чему будет равна сумма? «2000000».

Встроенные методы Ruby помогут вам сразу же осуществить много интересных операций. Допустим, я хочу написать свои имя и фамилию задом наперед. Вместо того чтобы записывать это сочетание букв вручную или сочинять маленькую программу для расстановки букв в обратном порядке, я могу использовать метод reverse, доступный для каждого строчного объекта:

fullname.reverse

Вот что получится в результате: namfuaKhsoJ

Можно использовать одновременно несколько методов. Если я хочу расположить буквы имени и фамилии в обратном порядке и сделать все буквы строчными, то могу написать команду:

fullname.reverse.downcase

Результат: namfuakhsoj. В точку!

Похоже, научиться программированию на Ruby — это научиться использовать встроенные и создавать новые объекты, классы и методы, а также манипулировать ими. Помимо встроенных, вы можете при необходимости сами создавать, изменять и удалять объекты, классы и методы, что делает язык мощным и гибким средством программирования [24].

Документация на Ruby [25] содержит стандартный список объектов и методов, доступных для пользователя. Этот список впечатляет, но пугаться вы не должны — применять их все совсем не обязательно. Наоборот, большинство из них на первых порах безопаснее не трогать. Это опции, которые вы можете использовать при необходимости.