Тут можно читать онлайн книгу Фултон Хэл - Программирование на языке Ruby - бесплатно полную версию (целиком). Жанр книги: Программирование. Вы можете прочесть полную версию (весь текст) онлайн без регистрации и смс на сайте Lib-King.Ru (Либ-Кинг) или прочитать краткое содержание, аннотацию (предисловие), описание и ознакомиться с отзывами (комментариями) о произведении.
Программирование на языке Ruby - описание и краткое содержание, автор Фултон Хэл, читать бесплатно онлайн на сайте электронной библиотеки Lib-King.Ru.
Ruby — относительно новый объектно-ориентированный язык, разработанный Юкихиро Мацумото в 1995 году и позаимствовавший некоторые особенности у языков LISP, Smalltalk, Perl, CLU и других. Язык активно развивается и применяется в самых разных областях: от системного администрирования до разработки сложных динамических сайтов. Книга является полноценным руководством по Ruby — ее можно использовать и как учебник, и как справочник, и как сборник ответов на вопросы типа «как сделать то или иное в Ruby». В ней приведено свыше 400 примеров, разбитых по различным аспектам программирования, и к которым автор дает обстоятельные комментарии. Издание предназначено для программистов самого широкого круга и самой разной квалификации, желающих научиться качественно и профессионально работать на Ruby.
Программирование на языке Ruby - читать книгу онлайн бесплатно, автор Фултон Хэл
• Операторы
andor&&||а = trueb = falseс = trued = truea1 = a && b or с && d # Операции && выполняются первыми.a2 = a && (b or с) && d # Операция or выполняется первой.puts a1 # Печатается falseputs a2 # Печатается true• He забывайте, что «оператор» присваивания имеет более высокий приоритет, чем операторы
andor!+=-=x = y or z(x=у) or zx = (y or z)y = falsez = truex = y or z # Оператор = выполняется РАНЬШЕ or!puts x # Печатается false(x = y) or z # Строка 5: то же, что и выше.puts x # Печатается falsex = (y or z) # Оператор or вычисляется сначала.puts x # Печатается true• Не путайте атрибуты объектов с локальными переменными. Если вы привыкли к C++ или Java, можете забыть об этом! Переменная
@my_varmy_var• Во многих языках, и в Ruby в том числе, есть цикл
forforfor var in 1..10 puts "var = #{var}" if var > 5 var = var + 2 endend• Имена переменных не всегда легко «на глаз» отличить от имен методов. Как решает этот вопрос анализатор? Правило такое: если анализатор видит, что идентификатору присваивается значение до его использования, то он считается переменной; в противном случае это имя метода. (Отметим, что операция присваивания может и не выполняться: достаточно того, что интерпретатор ее видел.)
1.5.3. Предложение case в Ruby
Во всех современных языках есть та или иная форма многопутевого ветвления. В C/C++ и Java это предложение
switchcaseПредложение
casecaseВыше мы уже рассматривали синтаксис этого предложения, а теперь сосредоточимся на его семантике.
• Для начала рассмотрим тривиальный пример. Выражение
expressionvaluecase expression when value некоторое действиеendВ Ruby для этой цели есть специальный оператор
===• Предыдущее предложение можно записать и так:
if value === expression некоторое действиеend• Не путайте оператор отношения с оператором проверки на равенство (
==• Не думайте, что проверяемое выражение — это объект, которому сравниваемое значение передается в качестве параметра. На самом деле как раз наоборот (мы это только что видели).
• Это подводит нас к наблюдению, что
x===yy===xcase value when expression некоторое действиеend• В качестве примера рассмотрим строку
strpatВыражение
str =~ pat=~Regexppat =~ strpat === str===Regexpstr === pat