Pull to refresh

Покорим Ruby вместе! Капля вторая

Reading time 3 min
Views 45K
Продолжаем изучать Ruby? Так точно!

В первой части мы получили обзорные знания о Руби и Рельсах и, надеюсь, решили, нужно ли нам это, или нет. Так как мы взялись за язык основательно необходимо обустроить рабочее учебное место. Нам нужны: сам интерпретатор Ruby, фрэймворк Rails, база данных (MySQL, думаю, будет лучшим выбором) и непосредственно среда разработки, которая должна сделать процесс программирования приятным, удобным и увлекательным ;)



Среда для разработки


Как и в других интерпретируемых языках создавать готовые программы можно и в Блокноте, однако же мы всерьёз схватились за Руби ;) Стоило бы, наверное, погуглить IDE для языка, провести какое-то тестирования производительности и функциональности. Но мы же непрофессионалы, так что ищем наиболее универсальное, надежное, качественное, проверенное решение. И оно есть: это Ruby in Steel для Microsoft Visual Studio 2005/2008. Да, это сугубо коммерческий, закрытый продукт только для Windows. Но, во-первых, это знакомая IDE, которая верно будет вам служить в будущем, во-вторых она не базируется на Java, что положительно отражается на скорости работы (это важно для слабых компов, вроде моего), в-третьих, полнофункциональная trial-версия работает 60 дней, чего, я надеюсь, нам будет достаточно для нашего курса.

Если же вы отдаете предпочтение другим ОС, то несомненно стоит взглянуть на свободный кроссплатформенный NetBeans IDE 6.0 Ruby.

Выбранная вами среда разработки в дальнейшем особого значения не имеет, однако процесс установки компонентов я буду освещать для Ruby in Steel — он достаточно прост, так как вы можете скачать All-in-One Installer — готовый пакет с бесплатным Visual Studio 2008 и всем необходимым для нашего учебного места.

После загрузки распакуйте архив и запустите Setup. Отметьте нужные пакеты (в большинстве случаев стоит оставить все по умолчанию), нажмите Install и только успевайте нажимать Next и Finish в появляющихся окнах установщиков. В процессе установки будут загружены и установлены последние Rails, поэтому консольные окна не закрываем и ждем, когда появится «Press any key to continue...». Для MySQL можем задать запуск в виде сервиса Windows и установить пароль рута.

Никакой дополнительной конфигурации не требуется — просто запускаем свежеустановленный Visual Studio.

Первый проект


Проект в Ruby in Steel создаем как обычно в VS: File — New — Project — Ruby In Steel (слева) — Ruby Project (справа) — Name (задаем имя проекта) — OK.

Стоит уделить внимание иерархии организации работы с кодом — проект (Project) содержит в себе один или несколько файлов в одной или нескольких папках, в то же время Solution (решение) может содержать несколько проектов.

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

Первая программа


Традиционно это Hello World:

puts "Hello World!"

Упс, это всё… Ctrl+F5 в среде — и результат, так сказать, налицо!

Игры со строками


puts "Hello World!\nPrivet Mir!"

Как вы заметили прямо в строках работают управляющие последовательности (Escape Sequences), в т.ч. \n (новая строка), \t (табуляция), \s (пробел) и др.

puts 'Hello World!\nPrivet Mir!'

А вот строка, заключенная в апострофы «глупая» — она не понимает ES, поэтому в большинстве случаев используем именно кавычки. Однако если заранее известно, что ES в строке не нужны, то апострофы позволяют выиграть в производительности приложения.

puts 'It\'s Ruby'

Хотя нет, «глупая» строка понимает \' и больше ничего.

print "Hello World!"
print "Hello World!"


В отличие от оператора puts print не делает перенос строки после вывода переменной.

puts "2 x 2 = #{2*2}"

Замечательная возможность Ruby — регулярное выражение в переменной — вы можете вставлять кусочки кода Ruby прямо в строки используя конструкцию #{code}.

puts "#{"Ruby! "*4}"

«Умножаем» строку на четыре и получаем слова песни Kaiser Chiefs ;) Причем делаем все это в одной строке кода!

puts "\n\t#{(1 + 2) * 3}\nGoodbye"

Попробуйте представить, что выведет этот код и проверьте ваше догадки :)

Эпилог


За два «занятия» мы узнали что такое Ruby и Rails, узнали их преимущества, настроили учебное место, установили IDE, написали Hello World и даже немного познакомились с работой со строковыми переменными в Руби, обойдясь при этом без ООП.

Думаю, что мы и дальше будем познавать нативный, «чистый» Руби, отставив Rails в кладовку на будущее. Заранее прошу прощения за это перед теми, кто рассчитывал сразу штамповать сайты. Далее мы познакомимся с числовыми переменными, методами, локальными и глобальными переменными. Теперь будет меньше текста, больше кода

PS: При написании записи использовались известные бесплатные пособия HUMBLE LITTLE RUBY BOOK от Jeremy McAnally и THE BOOK OF RUBY от Huw Collingbourne, особая благодарность Google и Яндексу. Как всегда, наверное, в тексте есть ошибки, неточности — сообщайте о них в комментариях. Если вам известны какие-нибудь оригинальные учебные пособия по Ruby (можно на английском), доступные для загрузки — также жду вас в комментариях.

Третья капля уже здесь
Tags:
Hubs:
+37
Comments 94
Comments Comments 94

Articles