FAQ
Данный документ содержит коллекцию Часто Задаваемых Вопросов о языке программирования Ruby с ответами и был основан на переводе выполненом Юрием Лейкиндом, за что ему огромное спасибо. Источником для новых вопросов, по-видимому, будет являтся форум.
Общие вопросы (17)
- Благодарности
- Что такое Ruby?
- Покажите мне код на Ruby
- Почему Ruby называется Ruby?
- История Ruby
- Где домашняя страница Ruby?
- Есть ли новостная группа, посвященная Ruby?
- Есть ли список рассылки по Ruby?
- Как правильно: "Ruby" или "ruby"?
- Есть ли книги по Ruby?
- Какие текстовые редакторы поддерживают Ruby?
- Как аннотировать Ruby код его результатами?
- Где можно получить помощь?
- Какие ресурсы доступны для начинающих изучать Ruby?
- Можно ли писать на Ruby программы, которые затем запускались без самого Ruby?
- Ruby - это интерпретируемый или компилируемый язык?
- Как в VIM форматировать программы на Ruby?
Установка Ruby (8)
- Какие операционные системы поддерживают Ruby
- Где взять исходный код Ruby?
- Могу ли я получить доступ к CVS версии Ruby?
- Как собрать Ruby?
- Как узнать, где находятся библиотеки Ruby?
- Есть ли Ruby в виде готового к установке бинарного пакета?
- Что такое cygwin, mingw и djgpp?
- Почему Tk графика не работает в Windows?
- Генерирует ли присваивание новую копию объекта?
- Какова облаcть видимости локальной переменной?
- Когда локальная переменная становится доступной?
- Какова облаcть видимости константы?
- Как передаются аргументы?
- Влияет ли присваивание формальному аргументу на настоящий аргумент?
- Что произойдет, если я вызову метод через формальный аргумент?
- Что обозначает "*" перед аргументом?
- Что обозначает "&" перед аргументом?
- Как задать значение по умолчанию для формального аргумента?
- Как передать аргументы блоку?
- Почему мой объект неожиданно изменился?
- Меняется ли значение константы?
- Поддерживает ли Ruby ключевые слова (keyword arguments) в аргументах?
Итераторы (5)
Синтаксис (12)
- Как получить доступ к значению символа?
- Является ли loop управляющей структурой?
- Как писать циклы с проверкой условия после выполнения блока?
- a +b выдает ошибку!
- s = "x"; puts s *10 выдает ошибку!
- Почему нельзя передать хеш-литерал методу: p {} ?
- Как вызывать lvalue методы?
- Какая разница между "\1" и "\\1"?
- Какая разница между "or" и "||" ?
- Какая разница между "and" и "&&"?
- Что обозначают $:, $!, $_ и другие переменные?
- Почему (1210 / 100) возвращает 12, а не 12.1?
Методы (16)
- Как Ruby решает, какой метод вызывать?
- Являются ли операторами +, -, * и т.д.?
- Где ++ и --?
- Все эти объекты - это хорошо, но вот есть ли в Ruby простые функции?
- И откуда тогда берутся эти функции-методы?
- Можно ли получить доступ к переменным объекта?
- Какая разница между private и protected?
- Можно ли изменить видимость метода?
- Может ли идентификатор, начинающийся с заглавной буквы, быть именем метода?
- Почему вызов super приводит к ArgumentError?
- Как вызвать метод с тем же именем, но двумя уровнями выше?
- Можно ли вызвать встроенный метод после того, как он был переопределен?
- Что такое деструктивный (destructive) метод?
- Почему деструктивные методы могут быть опасны?
- Может ли метод вернуть несколько значений?
- Почему я не могу определить свои методы там, где хочу?
Классы и модули (16)
- Может ли повторяться определение класса?
- Есть ли в Ruby переменные класса?
- Что такое переменная класса как объекта?
- Что такое синглтон(singleton) метод?
- Есть ли в Ruby методы класса?
- Что такое синглтон класс?
- Что такое функция модуля?
- Какая разница между классом и модулем?
- Можно ли наследоваться от модуля?
- Что такое mix-in?
- Зачем нужны два способа объявления метода класса?
- Какая разница между load и require?
- Какая разница между include и extend?
- Что значит self ?
- Почему нельзя загрузить переменные из другого файла?
- Как создавать пространства имен?
- Что возвращает instance_methods(nil) ?
- Какая разница между непосредственным значением(immediate value) и ссылкой?
- Какая разница между nil и false?
- Как узнать номер строки текущего открытого файла?
- Как использовать less для просмотра выхода программы?
- Как отсортировать файлы по времени изменений?
- Как подсчитать частоту слов в файле?
- Почему пустая строка не является ложным выражением в булевском контексте?
- Как отсортировать строки в алфавитном порядке?
- Что возвращает 'abcd'[0]?
- Какая разница между sub и sub!?
- Что значит символ \Z?
- Какая разница между ".." и "..."?
- Есть ли в Ruby указатели на функции?
- Как в Ruby переименовать или скопировать файл?
- Какая разница между thread и fork?
- Как использовать Marshal?
- Есть ли в Ruby обработка исключений?
- Как использовать trap?
Ввод и вывод (6)
- Я зачитал файл и изменил его, но на диске его содержимое не поменялось
- Я записал данные в файл, скопировал его, но в конце файла-копии данные потерялись
- Как управлять буферизацией стандартного потока вывода?
- Что происходит с объектом класса File, если на него больше не ссылается ни одна переменная?
- Должен ли я заботиться о том, закрыт ли файл?
- Как получить список всех файлов всех файлов, находящихся в директории и в поддиректориях (рекурсивно)?
Расширения (7)
Ruby On Rails (1)
Часто задаваемые вопросы о популярном средстве разработки Web приложение Rails
