Первый урок: Hello World

Введение в Ruby [HEXLET]

Урок познакомил меня с тремя вариантами запуска программ написанных на языке Ruby.

Что показали в видео ролике к курсу

Автор курса традиционно начинает с примера написания Hello World!

Продемонстрировал как можно запустить программу в ruby

B упомянул про простейшие математические операции. Подробнее он про них будет говорить во втором уроке.

Что узнал по факту

Написание программ выполняется в файлах с расширением .rb (стандартное расширение ruby)

Для вывода информации на экран используется функция puts. Она печатает на экране те данные, которые ей передаются.

Первый урок: Hello World
Вывод данных на в консоль при помощи функции puts.

Строка с текстом заключается в кавычки, а числа — без кавычек.

Первый урок: Hello World
числа выводят без кавычек, а строки — обрамляются в кавычки.

Написанная в файле программа запускается через интерпретатор. Есть как минимум ТРИ способа запустить:

Классический способ запуска программы

Вводим команду ruby и передаем название рабочего файла (исходный файл в котором прописана программа)

Первый урок: Hello World

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

Выводим команду ruby, далее прописываем её флаг -e, далее указываем строку кода, которую необходимо отобразить. Я пока что не до конца понял что это за ФЛАГИ такие, но фишку с тем, что можно вывести код без сохранения в файле — заценил. Можно на лету проверять вычисление или считать что то. Сразу видим результат математических операций.

Первый урок: Hello World

Обращаю внимание на синтаксис. Для выполнения кода, который мы пишем после флага -e, необходимо оборачивать всю строку в одиночные кавычки! если после функции мы передаём строку — как всегда оборачиваем строек в двойные кавычки!

Интерактивный запуск с использованием interactive Ruby — irb

Этот способ использует одну из программ класса REPL

(Read → Evaluate → Print Loop: Зачитали, выполнили, напечатали, и так много раз)

По сути irb является построчным интерпретатором, который выполняет программу сразу же. Если я верно понял суть — то это упрощает тестировании и поиск ошибок в программе. Если она работает последовательно от строки к строке, то мы сможем понять где допустили ошибку и исправить её.

Как узнал из других источников, в Ruby используется собственная реализация REPL, которая называется irb. она способна справиться с примитивными задачами. Но на сложных программах лучше использовать более функциональную альтернативу под названием pry.

Pry — это мощная альтернатива стандартной IRB-оболочке для Ruby. С подсветкой синтаксисагибкой архитектурой плагинов, вызовами времени исполнения и просмотром исходников и документации.

Дальше я копать не стал, так как пока рановато туда лезть.

Первый урок: Hello World
вывод данных в консоли по средствам irb.

Как только я потестил irb, возник вопросик — как из него выйти 🙂 об этом не говорили и мне пришлось искать в поисковике. Ответ был найден быстро — для того что бы выйти из режима irb в консоли нужно нажать комбинацию клавиш: наберите quit, exit или просто нажмите Control-D. Все три варианта у меня сработали. И это очень прикольно. По сути можно было предположить и попробовать сказать «Выход» что бы тебя выпустили. Постепенно начинаю понимать всю прелесть синтаксиса Ruby 🙂

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

Так же благодаря irb можно тестировать написанный нами код и проводить эксперименты модифицируя его.

Ссылки из урока

После просмотра видео я посмотрел что там по ссылкам, прикрепленным под видео. Там было две ссылки:

Ссылка на официальную документацию

В ссылке на официальную документацию я ознакомился с её иерархией (помог google-переводчик) и понял что вся справочная документация по ruby состоит из разделов:

  • Core API — документация по API для базовых классов и модулей для текущей стабильной версии языка Ruby (на момент моего посещения это была версия 3.0.1)
  • Standard Library API — Библиотека API для стандартных классов и модулей Ruby.
  • Новости актуальной версии — список обзоров и новостей по актуальной версии языка Ruby.
  • Getting Started — раздел для начинающих. Как начать программировать на Ruby (официальное руководство на английском). По сути содержит небольшую коллекцию ресурсов, для старта в изучении программирования на Ruby. Это самый нужный для меня раздел, но дабы не распыляться вернусь к нему ПОСЛЕ прохождения текущего мини-курса.
  • Docs in Other Languages — Официальная документация на других языках.
  • More Ruby-Doc — раздел ссылок на файлы для скачивания и спецификацию по Ruby
  • Ruby Stuff — американский магазин мерча для Рубистов. Я впервые для себя открыл такую группу товаров как женские стринги с логотипами 🙂 Я осознавал что девушки тоже кодят и делают это не хуже мужиков, но что бы стринги с рельсами заказывали — мой мир никогда не будет прежним.
Первый урок: Hello World
Скриншот магазина мерча для программистов на Ruby. женское нижнее бельё с логотипами.

Ссылка на утилиту irb

Перейдя по ссылке я ознакомился с краткой документацией и примерами использования irb — инструментом для интерактивного выполнения выражений.

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

Практическая часть урока

После просмотра видео мне предложили пройти небольшой тест из двух вопросов. Если вы просмотрели видео и пробежались по документации так же как я — вам будет просто ответить на вопросы теста.

По завершению теста нам предлагают пройти небольшое практическое задание и написать в онлайн-редакторе традиционную программу Hello, world!

# BEGIN (write your solution here)
puts "hello, world!"
# END

Юрий Ронин