Программирование на языке Ruby
Шрифт:
• Не путайте операторы диапазона
• С диапазонами связана одна мелкая деталь, которая может вызвать путаницу. Если дан диапазон
• Не путайте диапазоны с массивами. Следующие два присваивания абсолютно различны:
Однако есть удобный метод
• Часто бывает необходимо присвоить переменной значение лишь в том случае, когда у нее еще нет никакого значения. Поскольку «неприсвоенная» переменная имеет значение
• В большинстве языков для обмена значений двух переменных нужна дополнительная временная переменная. В Ruby наличие механизма множественного присваивания делает ее излишней: выражение
• Четко отличайте класс от экземпляра. Например, у переменной класса
• Аналогично метод класса ассоциирован с тем классом, в котором определен; он не принадлежит никакому конкретному объекту и не может вызываться от имени объекта. При вызове метода класса указывается имя класса, а при вызове метода экземпляра - имя объекта.
• В публикациях, посвященных Ruby, часто для обозначения метода экземпляра применяют решеточную нотацию. Например, мы пишем
• В Ruby константы не являются истинно неизменными. Их нельзя изменять в теле методов экземпляра, но из других мест это вполне возможно.
• Ключевое слово
• Составные операторы присваивания
• Из-за того, как определены составные операторы присваивания, их нельзя использовать для инициализации переменных. Если первое обращение к переменной
• Такое поведение можно в некотором смысле обойти. Можно определить операторы для объекта
Мы привели этот код для иллюстрации возможностей Ruby, но стоит ли поступать так на практике, оставляем на усмотрение читателя.
• Уместно будет напомнить, что
• Некоторые операторы нельзя перегружать, потому что они встроены в сам язык, а не реализованы в виде методов. К таковым относятся
• Имейте в виду, что хотя оператор присваивания перегружать нельзя, тем не менее возможно написать метод экземпляра с именем
• Напомним: «голый» оператор разрешения области видимости подразумевает наличие
• Как уже говорилось,
• Напомним, что определения в Ruby исполняются. Вследствие динамической природы языка можно, например, определить два метода совершенно по-разному в зависимости от значения признака, проверяемого во время выполнения.
• Напомним, что конструкция
• Не забывайте, что метод, определенный на верхнем уровне, добавляется в модуль
• Методы установки (например,
• Напомним, что ключевое слово
• Ключевое слово
Последний реанорец. Том IX
8. Высшая Речь
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Франклин Рузвельт. Человек и политик (с иллюстрациями)
Проза:
историческая проза
рейтинг книги
Олигарх-подкаблучник
Сыщицы-любительницы Кира и Леся
Детективы:
иронические детективы
рейтинг книги
Я не князь. Книга XIII
13. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
рейтинг книги
Тринадцатый
Фантастика:
фэнтези
рпг
рейтинг книги
Юся и эльф
Фантастика:
юмористическое фэнтези
детективная фантастика
рейтинг книги
Вылазка легиона
3. Легион стоит здесь
Фантастика:
фэнтези
эпическая фантастика
рейтинг книги
Пророки и поэты
Документальная литература:
публицистика
рейтинг книги