Программирование на языке Ruby
Шрифт:
В одной строке может быть несколько предложений, разделенных точками с запятой; только в этом случае точка с запятой и необходима. Логическая строка может быть разбита на несколько физических при условии, что все, кроме последней, заканчиваются обратной косой чертой или лексическому анализатору дан знак, что предложение еще не закончено. Таким знаком может, например, быть запятая в конце строки.
Главной программы как таковой (функции
1.2.1. Ключевые слова и идентификаторы
Ключевые (или зарезервированные) слова в Ruby обычно не применяются ни для каких иных целей. Вот их полный перечень:
Имена переменных и других идентификаторов обычно начинаются с буквы или специального модификатора. Основные правила таковы:
• имена локальных переменных (и таких псевдопеременных, как
• имена глобальных переменных начинаются со знака доллара
• имена переменных экземпляра (принадлежащих объекту) начинаются со знака «собачки»
• имена переменных класса (принадлежащих классу) предваряются двумя знаками
• имена констант начинаются с прописной буквы;
• в именах идентификаторов знак подчеркивания _ можно использовать наравне со строчными буквами;
• имена специальных переменных, начинающиеся со знака доллара (например,
Примеры:
• локальные переменные
• псевдопеременные
• константы
• переменные экземпляра
• переменные класса
• глобальные переменные
1.2.2. Комментарии и встроенная документация
Комментарии в Ruby начинаются со знака решетки (
Предполагается, что встроенная
1.2.3. Константы, переменные и типы
В Ruby переменные не имеют типа, однако объекты, на которые переменные ссылаются, тип имеют. Простейшие типы — это символ, число и строка.
Числовые константы интуитивно наиболее понятны, равно как и строки. В общем случае строка, заключенная в двойные кавычки, допускает интерполяцию выражений, а заключенная в одиночные кавычки интерпретируется почти буквально — в ней распознается только экранированная обратная косая черта.
Ниже показана «интерполяция» переменных и выражений в строку, заключенную в двойные кавычки:
Более подробная информация о литералах (числах, строках, регулярных выражениях и т.п.) приведена в следующих главах.
Стоит упомянуть особую разновидность строк, которая полезна прежде всего в небольших сценариях, применяемых для объединения более крупных программ. Строка, выводимая программой, посылается операционной системе в качестве подлежащей исполнению команды, а затем результат выполненной команды подставляется обратно в строку. В простейшей форме для этого применяются строки, заключенные в обратные кавычки. В более сложном варианте используется синтаксическая конструкция
Регулярные выражения в Ruby похожи на символьные строки, но используются по-другому. Обычно в качестве ограничителя выступает символ косой черты.
Синтаксис регулярных выражений в Ruby и Perl имеет много общего. Подробнее о регулярных выражениях см. главу 3.
Массивы в Ruby — очень мощная конструкция; они могут содержать данные любого типа. Более того, в одном массиве можно хранить данные разных типов. В главе 8 мы увидим, что все массивы — это экземпляры класса
Во втором примере показан массив, содержащий целые числа и строки. В третьем примере мы видим вложенный массив, а в четвертом - массив строк. Как и в большинстве других языков, нумерация элементов массива начинается с нуля. Так, в последнем из показанных выше примеров элемент