Примеры программ на ruby

«Hello, World!» – классический пример тестовой программы. Эта простая программа, которую может написать даже новичок, позволяет также убедиться, что среда правильно настроена и работает.

Это руководство поможет написать такую программу в Ruby. Чтобы несколько разнообразить её, мы покажем, как научить программу запрашивать имя пользователя и использовать его в приветствии. В результате у вас будет программа, которая работает так:

Please enter your name.
8host
Hello, 8host! I’m Ruby!

Требования

Для работы вам понадобится локальная среда разработки. Настроить такую среду можно с помощью одного из руководств:

  • Установка Ruby и настройка локальной среды разработки в Ubuntu 16.04
  • Установка Ruby и настройка локальной среды разработки в macOS

1: Базовая программа «Hello, World!»

Чтобы написать базовую программу «Hello, World!», откройте текстовый редактор и создайте новый файл:

Вставьте следующий код:

puts «Hello, World!»

Ruby Programming | In One Video

Рассмотрим разные компоненты этого кода подробнее.

puts – это метод Ruby, который выводит на экран текст.

После этого метода идет последовательность символов «Hello, World!». Все символы, которые находятся в кавычках, составляют строку. Метод puts отобразит эту строку на экране.

Некоторые методы доступны в Ruby по умолчанию. Такие встроенные методы всегда доступны при написании программ Ruby. Также вы можете определять собственные методы.

Сохраните и закройте файл (Control+X, Y).

2: Запуск программы

Теперь нужно попробовать запустить программу «Hello, World!». Для этого можно использовать команду ruby.

Команда должна вернуть:

Команда ruby запустила интерпретатор Ruby. Интерпретатор читает указанный файл и оценивает его содержимое. Он выполнил код puts “Hello, World!”, вызвав функцию puts и передав ей строковое значение «Hello, World!».

В данном случае строка Hello, World! также называется аргументом. Аргумент – это значение, передаваемое методу.

Кавычки, в которые помещена строка, не отображаются, потому что они необходимы, чтобы обозначить интерпретатору Ruby пределы строки.

Итак, программа работает. Теперь попробуйте сделать ее интерактивной.

3: Пользовательский ввод

Эта простая программа при запуске будет выдавать один и тот же результат. Чтобы немного усложнить ее, настройте запрос пользовательских данных. Полученные данные программа сможет использовать в выводе.

Создайте новый файл для программы в текстовом редакторе:

Вставьте эту строку, которая будет запрашивать имя пользователя:

puts «Please enter your name.»

Это уже знакомый вам метод puts, который выводит текст на экран.

Следующая строка будет собирать пользовательские данные:

puts «Please enter your name.»
name = gets

Метод gets собирает ввод с клавиатуры. Это приостанавливает программу, позволяя пользователю ввести любой текст. Программа продолжит работу, когда пользователь нажмет клавишу Enter на своей клавиатуре. Все нажатия клавиш, включая нажатие клавиши Enter, собираются программой и преобразуются в строку символов.

Ruby in 100 Seconds

Эти символы можно использовать в выводе программы. Для этого присвойте полученную строку переменной name. Ruby сохраняет строки в памяти компьютера, пока программа не завершит работу.

Затем добавьте эту строку:

puts «Please enter your name.»
name = gets
puts «Hi, #! I’m Ruby!»

Читайте также:
Программа глимп описание как работает

Здесь снова используется метод puts. Также здесь используется функция Ruby, которая называется строковой интерполяцией. Она позволяет извлекать присвоенное переменной значение и помещать его внутри строки. Вместо слова name в строке будет значение, введенное пользователем.

Сохраните и закройте файл (Ctrl+X, Y).

Запустите программу. Она запросит имя пользователя. Введите имя и нажмите Enter. Вывод должен выглядеть так:

Please enter your name.
8host
Hi, 8host
! I’m Ruby!

Как видите, вывод программы разделяется, и вместо одной строки «Hi, 8host! I’m Ruby!» мы получаем две строки.

Дело в том, что программа фиксирует все нажатия клавиш, включая клавишу Enter, которая запускает дальнейшие действия программы. Но в строке нажатие клавиши Enter создает специальный символ, который переводит весь последующий вывод в новую строку. Потому программа отображает текст именно так, разбив строку на две. Это можно исправить.

Откройте файл greeting.rb:

Найдите эту строку:

И добавьте в нее:

Метод chop будет применяться к строке, полученной методом gets. Метод chop удаляет последний символ из строки. В данном случае это символ новой строки, создаваемый нажатием клавиши Enter.

Сохраните и закройте файл.

И вы получите одну строку:

Please enter your name.
8host
Hi, 8host! I’m Ruby!

Теперь у вас есть программа Ruby, которая может запрашивать данные пользователя и использовать их в выводе.

Заключение

Попробуйте расширить свою простую программу. Например, вы можете запросить любимый цвет пользователя и научить программу называть ее любимый цвет. Можно даже попытаться использовать эту технику для создания простой программы Mad-Lib.

Источник: www.8host.com

Код в стиле Ruby: грамотно, красиво и рационально. Пример для начинающих

image

Это перевод поста Майкла МакКи. Майкл — профессиональный программист, который время от времени делится своим опытом и навыками с коллегами, как начинающими кодерами, так и профессионалами.

Большинство программистов в последнюю очередь думают об эстетике кода, который они создают. Конечно, общих правил придерживаются почти все. Но что, если пойти дальше? Хороший код, в первую очередь, должен работать. Но я считаю, что у него должен быть свой стиль, это касается не только содержания, но и формы.

Skillbox рекомендует: Практический годовой курс «PHP-разработчик с нуля до PRO».
Напоминаем: для всех читателей «Хабра» — скидка 10 000 рублей при записи на любой курс Skillbox по промокоду «Хабр».

На самом деле это не так. Вот некоторые проблемы, с которыми сталкиваются все начинающие программисты, которые занимаются самообразованием. Про это есть тонны статей и заметок, но я хочу рассказать, как оформить код визуально так, чтобы он был не только корректным, но и неплохо выглядел со стороны. Я считаю, что самовыражаться можно не только в изобразительном искусстве — это можно делать всегда и везде.

Для меня очень важна организация работы, а также ее визуальная форма. Ruby — отличный вариант языка программирования, как будто специально сделанный, чтобы отвечать моим требованиям, поскольку позволяет делать то, что мы хотим, без всяких проблем. Он гибкий, стильный и логичный.

Давайте рассмотрим этот пример.

Даже начинающий программист поймет, что здесь не так. На этот код просто больно смотреть. А вот исправленный вариант, который выглядит уже получше.

Уф! Намного лучше. Теперь мы видим, что к чему относится и каким образом. Но и этот код можно улучшить. Декларирование attr_reader и attr_accessor можно сделать еще более выразительным.

Читайте также:
Что такое проводник программа

Объявление каждого нового атрибута с новой строки гораздо легче воспринимается. Теперь у нас есть список атрибутов, которые присвоены каждому аксессору. Можно пойти и дальше.

Здесь уже легко понять, где есть только возможность чтения, где — и чтения, и записи.

Давайте теперь посмотрим на следующую часть этого класса — метод инициализации. Здесь можно сделать много чего.

В принципе, код читаем, вроде бы все хорошо. Но можно сделать и лучше.

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

Давайте посмотрим, как теперь будет выглядеть InvoiceItem целиком.

Теперь у нас есть класс, который легко читаем и понятен с первого взгляда. Присваивания легко подбираются, аксессоры атрибутов просто использовать.

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

Ох, блин. Здесь в самом начале создается новый репозиторий для хранения классов транзакций. Всего их три, каждый используется для теста, попадания в хеш для более позднего использования. Причем для класса, который мы собираемся создавать, требуется немало атрибутов. Каждый из них имеет довольно длинное имя и значение.

Что можно улучшить так, чтобы код выглядел хорошо?

Основы ​программирования на Ruby

Основы ​программирования на Ruby

Ruby — это чистый объектно-ориентированный язык программирования. Чаще всего он используется для создания веб-приложений. Фреймворк для разработки приложений Ruby on Rails — первая реализация Ruby, которая приходит на ум.

Ruby — это динамичный язык программирования с открытым исходным кодом. Акцент здесь сделан на простоте и производительности.

У Ruby элегантный синтаксис, естественный для чтения и легкий для написания.

Первым делом напишем простую программу на Ruby. Все файлы здесь имеют расширение .rb. Поместим в файл example.rb следующий исходный код:

puts «Hello, I’m learning Ruby Programming!»;

Теперь предположим, у нас в каталоге есть интерпретатор Ruby. Попробуем запустить программу:

$ ruby example.rb

Результат выполнения будет такой:

Hello, I’m learning Ruby Programming!

Переменные в Ruby

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

Присвоение значения переменным происходит следующим образом:

для целого числа:
синтаксис: variable_name = value
пример: a = 5
для числа с плавающей точкой:
синтаксис: variable_name = value
пример: a = 10.5
для строки:
синтаксис: variable_name = «value»
пример: a = «abc»

Типы переменных в Ruby

Существует пять типов переменных:

1. Константы.
2. Глобальная переменная.
3. Переменная класса.
4. Переменная экземпляра.
5. Локальная переменная.

  1. Пример объявления константы:

a = «This is my book.»

2. Пример объявления глобальной переменной (используется символ $ ):

$var = ‘I love my-self’

5. Пример объявления локальной переменной:

var = 10

Получение данных от пользователя

Один из способов получения информации от пользователя — вызов метода gets .

gets — это сокращение от get string («получить строку»). Когда задействуется этот метод, программа ждет от пользователя 1) ввода информации и 2) нажатия клавиши Enter. Вот пример:

Читайте также:
Как увидеть себя со стороны программа

>> a = gets
demo
>> «demon»

Ввели код a = gets , дальше компьютер ожидает введения какой-то информации. Вводим demo , затем нажимаем на Enter, и программа возвращает «demon» .

n на конце — это символ новой строки, обозначающий клавишу Enter. Но здесь в строке он не нужен. Чтобы от него избавиться, используется chomp , присоединенный к gets с помощью точки. Этот .chomp ставится в конце любой строки для удаления символов возврата каретки.

>> a = gets.chomp
demo
>> «demo»
>> puts ‘Enter value for a : ‘
>> a = gets.chomp.to_i
>> puts ‘Enter value for b: ‘
>> b = gets.chomp.to_i
>> c = a + b
>> puts «Sum : #»
вывод: Enter value for a : 10 Enter value for a : 20 Sum = 30

Методы

Что такое метод/функция?

Метод — это набор инструкций, выполняющих задачу. Как и функция. Разница в том, что метод связан с объектом, а функция — нет.

Названия методов в Ruby должны начинаться со строчной буквы. Название метода, написанное с заглавной буквы, может быть принято в Ruby за константу. В этом случае парсинг вызова будет выполнен некорректно.

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

def method_name
expr..
end

Всякий раз, когда вызывается простой метод, пишется только название метода:

method_name
def demo(a1 = «Ruby», a2 = «programming»)
puts «This is #»
puts «This is #»
end
test «C», «C++»
test
вывод:
This is C
This is C++
This is Ruby
This is programming

Дата и время в Ruby

В Ruby даты и время представляет класс Time .

Получение текущей даты и времени:

time = Time.new puts «Current Time : » + time.inspect puts time.year # => Год даты puts time.month # => Месяц даты (с 1 по 12) puts time.day # => День даты (с 1 по 31) puts time.wday # => 0: День недели (0 — это воскресенье) puts time.yday # => 365: День года puts time.hour # => 23: 24-часовой формат puts time.min # => 59 puts time.sec # => 59 puts time.usec # => 999999: микросекунды puts time.zone # => «UTC»: название часового пояса
вывод:
Current Time : Mon Jun 02 12:03:08 -0700 2008
2021
7
2
1
154
12
3
8
247476
UTC

Массив

Что такое «массив»?

В программировании массив — это коллекция различных типов данных в одном контейнере или переменной.

Массив создается или инициализируется множеством способов. Один из них — с помощью метода класса new :

names = Array.new

Размер массива задается во время создания массива:

names = Array.new(20)

Каждому элементу массива присваивается значение:

names = Array.new(4, «system»)
puts «#»
вывод:
[«system», «system», «system», «system»]

new задействуется также с блоком:

nums = Array.new(10) < |e| e = e * 2 >
puts «#»
вывод:
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

Есть еще один метод массива [] . Вот как он работает:

nums = Array.[](1, 2, 3, 4,5)

И еще одна форма создания массива:

nums = Array[1, 2, 3, 4,5]

Здесь для создания массива цифр метод в качестве аргумента принимает диапазон:

digits = Array(0..9)
puts «#»
вывод:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

  • Разбор методов Ruby
  • Создание простого веб-скрейпера на Ruby
  • Google OAuth для реализации на Ruby

Источник: nuancesprog.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru