Урок 1: «Рубин нужен не только для лазера»

Внимание! Уроки начинал писать еще в 2012 году, когда на RoR был хайп. Сейчас RoR не востребован от слова «совсем». Вакансий крайне мало в российском сегменте. За границей на него спрос еще остался, но он затухает. Язык довольно-таки интересный, но, спрос на него будет неуклонно падать.Так что имейте это в виду (октябрь 2019 года)

Спрос на рынке труда диктует свои правила. Не так давно Ruby on Rails стала весьма популярной у российских работодателей. А это означает, что я не мог обойти данную платформу стороной.

Естественно, что для того, чтобы создавать сайты на RoR, нужно уметь программировать на самом языке Ruby. К своему неудовольствию, я обнаружил, что литературы, посвященной этому языку крайне мало. Это и побудило меня начать цикл уроков, посвященных программированию на Ruby с последующим переходом на рельсы (on Rails).

Итак, приступим. Для начала программирования нам понадобятся интерпретатор языка Ruby. Да-да, это очередной интерпретируемый язык, чтобы вы знали. А это означает полную переносимость кода. Тем не менее, нужно сразу оговориться об особенностях этого интерпретатора. Изначально сам Ruby был заточен под .nix системы и у него было крайне много проблем в Windows, особенно при использовании onRails. Сейчас ситуацию в Windows изменили в лучшую сторону, но, тем не менее, все же советую для коммерческой разработки использовать  виртуальную машину с Ubuntu или Mint, если вы сидите под виндовс. В дальнейшем, когда мы закончим основы самого языка и накачаем мышцы для перехода на onRails, то лично я уже буду отталкиваться от никсовой системы, хотя и буду показывать, как многое можно сделать в Windows. Тем не менее, имейте в виду эту особенность платформы.

К счастью, Ruby обзавелся русским комьюнити. Скачать интерпретатор языка вы сможете с https://www.ruby-lang.org/ru/downloads/. К слову сказать, раньше интерпретатор для Windows поставлялся вместе с достаточно хорошей книжкой по языку Руби. Теперь книги уже нет, но сам сайт стал гораздо удобнее и обзавелся внятной документацией и многими «плюшками». Крайне рекомендую поизучать данный сайт. Для тех же, кто сидит на маках и линуксах, там описано, как установить  систему нужные гемы (пакетные библиотеки ruby). В рамках основ Ruby я на этом останавливаться не буду, так как уверен, что 90% читателей этих уроков работают на Windows.

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

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

Итак, запустив Interactive Ruby, мы наберем следующую команду:

puts “Привет программисту на Ruby!”

И нажмем на Enter. У вас должно получиться такое:

Знаю, что данное выражение набило оскомину, но нужно же с чего-то начинать?! Тем не менее, не стоит злоупотреблять русским текстом. Интерпретатор этого не любит и у вас будут выводиться всякие «квакозябры», если вы это не вбиваете в самом irb.

Для написания и отладки скриптов Ruby лучше использовать специализированные редакторы или IDE.  Можно использовать RubyMine от JetBrains, но он платный. Подойдет для написания и SublimeText, однако он обладает вышеназванным недостатком лично я в дальнейших уроках буду использовать бесплатный редактор кода MS Visual Studio Code. Он бесплатный, кроссплатформенный и при помощи различных расширений из него можно сделать практически полноценную студию разработки своих программ на Ruby.

 

Приятный современный мощный редактор кода

Скачать  Visual Studio Code вы можете с https://code.visualstudio.com/. Установка простая абсолютно для всех поддерживаемых операционных систем. Добавление расширений для работы с Ruby не должно вызвать проблем и находится в соответсвующем пунке меню редактора. Для тех, кто все же не хочет тратить время на поиск всех этих пунктов, рекомендую просмотреть вводный видеоурок, где я также рассказываю, как подготовить среду для разработки своих скриптов.

Скачав и установив Visual Studio Code, теперь можно создать новый файл и вбить в нем текст:


puts "Hello! I'm Ruby!"

И сохранить его с расширением .rb и названием Hello. В моем примере я поместил его в корень диска C и могу его теперь вызвать в Windows так:

ruby C:\Hello.rb

Или же можно все эти скрипты запускать в том же Visual Studio Code (если вы его настроили правильно) и RubyMine. Тут вопрос удобства.

Пока все. Мы настроили среду разработки и написали первый скрипт. Урок 2 будет посвящен уже синтаксису языка.

Вводное занятие по Ruby. Это будет самое длинное видео в этой серии уроков. Расписал полезные моменты по минутам для улучшения навигации

 


Дополнение от 22.04.2018

Этот цикл уроков я начал в 2012 году. Не зная, сколько просуществует блог, старался писать обобщенно по языку, ведь конструкции не будут изменяться в разных версиях языка.

К сожалению, на тот момент трафик не рос на сайте, уроки просто воровались и я их бросил в том же году. Сейчас, по прошествии шести лет хотелось бы именно дополнить этот начальный урок (не исправить, так как для Windows суть не сильно меняется).

  1. Так как ко мне на блог заходили, в основном, виндузятники, то просто и начал писать для них уроки. Но имейте в виду, что Ruby попросту не приспособлен для Windows и имеет массу известных проблем. Хоть сам язык вы и изучите, но при переходе на Рельсы от винды придется отказываться, имейте это в виду. Так что лучше под виртуальной машиной завести nix систему.
  2. Ruby очень легкий язык. Причем, даже не ожидал встретить в 2012 году  такой простой язык, хотя Swift его и переплюнул потом. Но имейте в виду, что на него спрос только на Рельсы и он не настолько обширный, как хотелось бы. По сравнению с традиционным PHP, рубисты отстают на два порядка. Для диверсификации рисков, настоятельно рекомендую прокачивать скиллы в Frontend и для кучи изучить в отличном объеме PHP.
  3. Запомните одну вещь — в интернете развелась куча «лекторов», транслирующие видео в ютьюбе. Кто-то откровенно отвратительный, кто-то нормальный. Но обращайте внимание на дату публикации урока. Слишком все меняется быстро.  И смотреть уроки мало — нужно выполнять задания и практиковаться. К сожалению, человек так устроен, что попросту игнорирует часть информации. В итоге вы распылите массу времени, но ничему толком не научитесь.
  4. Литература. Она нужна, но нужна как букварь, не более. К сожалению, по книгам можно изучить только азы. Кроме того, литература быстро устаревает. Как по мне, гораздо лучше изучать что-либо по туториалам. Потом проще будет и на документацию перейти. Из блогов можете найти какой-то типа моего, где пытаются в виде самоучителей дать информацию, но потом подобный подход будет обречен. Нужно будет искать сообщества и даже использовать Хабр, так как именно на нем размещают полезные посты, если это не переводы.
  5. Запишитесь на курсы. Но курсы нужны именно серьезные, а не типа «Введите gems в терминале добейте следующий код». Курсы будут дорогими (меньше 50 килорублей они не будут стоить), но если там есть куча ДЗ с проверкой и дедлайнами, размещение нескольких проектов на Гитхабе и обучение многим методологиям, то вы дойдете минимум до уровня джуна и спокойно отобьете затраты за месяц-два работы (при условии, что занимаетесь, а не ленитесь). Не слушайте никого по поводу самоучек. Если бы все становились спецами по книжкам и видео, то вузы бы просто закрыли за ненадобностью. Для тех, кому это дорого   можно посоветовать https://www.codecademy.com/en/tracks/ruby. Но нужно знать английский. Хотя его все равно придется изучить, иначе вы просто будете неконурентноспособны.
  6. На Руби повлиял Питон. Они настолько похожи, что изучить после Руби Питон можно будет за неделю. А там освоить Джанго и уже выбирать, что больше нравится.
  7.  Ну и заглядывайте на этот блог, так как после 6 лет кидания из крайности в крайность,  теперь я уже полностью вернулся в разработку. Кроме того, в силу своего преклонного возраста на дату дополнения (мне почти 33), российский рынок труда для меня просто ограничен. Как раз на блоге буду писать еще и о том, как правильно фрилансить и работать удаленно.

 

Следующий урок >>

Яндекс.Метрика