Ruby как первый язык программирования. Ruby для начинающих: чем интересен этот язык и как его эффективно изучать. Важные личные качества

Ruby - мощный и популярный язык программирования. Помимо своей популярности на нём основывается известный фреймворк , который позволяет создавать крутые и динамические веб сайты различной тематики. Если взглянуть на рейтинг TIOBE , то язык входит в двадцатку самых популярных языков мира.

Язык появился в 1995 году и считается молодым языком в сравнении с Си или же C++, которые появились в 1972 и 1983 году соответсвенно. Язык имеет ряд преимуществ и специфичных возможностей, которые реализованы исключительно в нем, если брать в сравнение другие популярные языки программирования.

План курса

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

За курс мы изучим как установить и работать с языком, изучим синтаксис Руби (переменные, циклы, условные операторы), а также более сложные вещи: ООП, работа с файлами, исключения, методы и затронем еще множество других тем.


Установка Ruby на Windows

Для установки Руби на Виндовс используйте RubyInstaller , который можно скачать на официальном сайте по этой ссылке . Скачивайте последнюю версию и устанавливайте её как обычную программу. После завершения установки перед вами будет похожее окно:

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

В открывшемся окне введите поочередно 1 и нажмите Enter , дождавшись конца установки нажмите 2 и Enter и в конце выполните третью команду нажав 3 и Enter .

Установка Руби на Мак

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

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

Curl -L https://get.rvm.io | bash -s stable

После установки менеджера необходимо перезапустить терминал. Выполните следующую команду:

Rvm list known

После перезапуска вы можете установить ту версию, которую пожелаете. В нашем случае была установлена версия 2.4.2:

Rvm install ruby-2.4.2

В конце вы можете еще раз проверить версию и если она по прежнему старая, то просто установите по-умолчанию новую версию.

Язык программирования Ruby - чисто объектно-ориентированный язык программирования, первоначально разработанный для сценариев. Она сочетает в себе синтаксис, впитавший Ада и Perl и Smalltalk объектно-ориентированные особенности, а также имеет общие черты с Python , Lisp и утилитой командной строки - это плюс при обучении основам программирования.
Язык программирования Руби в настоящее время имеет только одну реализацию Ruby интерпретатора, хотя предпринимаются усилия по реализации интерфейса Ruby (так называемый "Кардинал") для виртуальной машины Parrot .
Язык программирования Ruby имеет много полезных функций. Ruby поддерживает также оператор перегрузки и обработки исключений. В настоящее время, языку программирования Руби не хватает Unicode поддержки. Ruby имеет итераторы (которые напоминают CLU и Sather). Ruby поддерживает абстрактные представления функций (также как и в Smalltalk и многих функциональных языках программирования для начинающих). Руби имеет встроенную, синтаксическую поддержку регулярных выражений Perl на уровне языка (а не только в библиотеках, как в Python и многих других языках). Руби поддерживает автоматический сбор мусора и динамическую библиотеку загрузки / подключения модулей (в зависимости от архитектуры) на Microsoft Windows . Ruby был портирован на многие платформы, включая Unix , Microsoft Windows, DOS , Mac OS X , OS/2, Amiga , и многое другое.
Ruby является чисто объектно-ориентированным: каждый бит данных объектов, включая типы, которые определены как "примитивные" в остальных языках. Каждая функция является методом. Это похоже на Smalltalk, но в корне отличается от Java и Python. Каждое имя значения (имя переменной) в программе Ruby определяет ссылку на объект, а не сам объект. Ruby поддерживает наследства с динамической диспетчеризацией, Mixins , и Синглтон методами. Ruby не поддерживает множественное наследование, но классы могут импортировать модули. Хотя в Ruby можно пользоваться процедурным синтаксисом, но все в Руби является объектами в смысле Smalltalk, а не Perl или Python программирование для чайников.
Язык был создан Юкихиро Мацумото (ака "Мац") Yukihiro Matsumoto (a.k.a. "Matz") 24 февраля, 1993 . Текущая стабильная версия 1.8.0. Обратите внимание, что имя не акроним - это на самом деле игра слов как у Perl . По словам автора, Ruby предназначен принципу наименьшего удивления (POLS), это означает, что язык должен быть свободным от ловушек и несоответствия, которые мешают других языках.
Из Ruby FAQ: Если вам нравится Perl, тогда вы используя Ruby, будете чувствовать себя превосходно из-за его синтаксиса. Если вам нравится Smalltalk, вам понравится Ruby и понравится его семантика. Если вам нравится Python, то вы сможете, а может и нет почувствовать огромную разницу в философии дизайна между Python и Ruby / Perl.
Руби распространяется бесплатно и с открытым исходным кодом по лицензии GPL или Artistic License , как и Perl.

Примеры
Вот некоторые примеры кода Ruby:

>> -199.abs # номер -199 является объектом; для него вызывается метод ABS. => 199 >> "Ruby is cool".length # вызывается метод объекта String – длина строки => 13 >> "Rick".index("c") => 2 >> "John".swapcase => "jOHN" >> #Arrays ?> .sort => >> .sort.reverse => # следующий блок кода выполнится 10 раз 10.times { # Replace " " with ", " and store in string1 string1 = "Hello world".gsub(" ", ",") # append "!" to variable "string1" string1 += "!" # print variable "string1", followed by a newline puts string1 }

Как стать профессионалом по разработке сайтов и начать зарабатывать? Недорогие видео курсы с ознакомительным введением.

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

В сегодняшней статье мы рассмотрим три наиболее популярных языка, применяемых в веб-разработке: PHP , Ruby и Python . Мы узнаем, как они выглядят, чем отличаются друг от друга, насколько и среди какой аудитории они популярны.

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

PHP: самый популярный язык для Интернета

PHP (Hypertext PreProcessor , препроцессор гипертекста) – язык программирования, исполняемый на стороне веб-сервера, спроектированный Расмусом Лердорфом (Rasmus Lerdorf ) в качестве инструмента создания динамических и интерактивных веб-сайтов.

Этот язык оказался достаточно гибким и мощным, поэтому приобрёл большую популярность и используется в проектах любого масштаба: от простого блога до крупнейших веб-приложений в Интернете:

Преимущества PHP:

  • является свободным программным обеспечением, распространяемым под особой лицензией (PHP license);
  • легок в освоении на всех этапах;
  • поддерживается большим сообществом пользователей и разработчиков;
  • имеет развитую поддержку баз данных;
  • имеется огромное количество библиотек и расширений языка;
  • может использоваться в изолированной среде;
  • предлагает нативные средства организации веб-сессий, программный интерфейс расширений;
  • является довольно полной заменой проприетарной среды ASP (Active Server Pages ) от Microsoft ;
  • может быть развёрнут почти на любом сервере;
  • портирован под большое количество аппаратных платформ и операционных систем.

Недостатки PHP:

Популярность:

Согласно Википедии , на 1 января 2013 года PHP был установлен на более чем 240 миллионах веб-сайтов (39% от всего объёма исследованных) или на 2,1 миллионах веб-серверов.

Использование

Скрипты, написанные на языке PHP , обычно хранятся в файлах с расширением .php , которые содержат в себе смесь обычных HTML -тэгов со специальной разметкой: открывающим тэгом :

Ruby: интерпретируемый, чистый ООП-язык

Ruby – динамический императивный объектно-ориентированный язык программирования, разработанный Юкихиро Матсумото . Ruby был создан под влиянием таких языков, как Perl , Eiffel и Smalltalk .

Он характеризуется динамической типизацией и автоматическим управлением памятью. Язык Ruby используется в веб-разработке в составе открытого веб-фреймворка Rails , чаще называемого Ruby on Rails (RoR ):

Преимущества Ruby:

  • открытая разработка;
  • работает на многих платформах;
  • может внедряться в HTML -разметку;
  • относится к языкам программирования сверхвысокого уровня (VHLL ), то есть обладает высоким уровнем абстракции и предметным подходом в реализации алгоритмов;
  • реализует концептуально чистую объектно-ориентированную парадигму;
  • предоставляет продвинутые методы манипуляции строками и текстом;
  • легко интегрирует в свои программы высокопроизводительные серверы баз данных (DB2, MySQL, Oracle и Sybase );
  • благодаря VHLL программы на Ruby хорошо масштабируются и легко сопровождаются;
  • простой и чистый синтаксис значительно облегчает программистам первые шаги в обучении этому языку;
  • имеется простой программный интерфейс для создания многопоточных приложений;
  • имеет продвинутые средства для работы с массивами;
  • возможности языка можно расширить при помощи библиотек, написанных на C или Ruby ;
  • зарезервированные слова могут являться идентификаторами, если это не создаёт неоднозначности для парсера;
  • дополнительные возможности для обеспечения безопасности;
  • встроенный отладчик.

Недостатки Ruby:

  • обучение языку выше начального уровня может оказаться непростым;
  • информационных ресурсов, посвящённых Ruby , явно недостаточно;
  • Ruby менее производителен по сравнению со многими другими языками, применяемыми в веб-разработке;
  • Ruby относительно медленно разрабатывается и развивается.

Проекты, использующие Ruby:

  • Google SketchUp ;
  • 37signals ;
  • GitHub ;
  • Shopify ;
  • Indiegogo ;
  • Basecamp .

Популярность

Согласно официальному сайту Ruby , этот язык входит в десятку наиболее популярных языков программирования. Рост популярности самого языка обусловлен популярностью программных продуктов, написанных на Ruby , в особенности RoR .

Использование

Файлы программ, написанных на Ruby , имеют расширение .rb . Эти файлы можно запустить как скрипты командной оболочки при помощи интерпретатора. Например, учитывая, что интерпретатор Ruby находится в /usr/bin :

Python: язык программирования общего назначения

Python широко применяется как интерпретируемый язык для скриптов различного назначения (хотя существуют и трансляторы языка Python ).

Как и Ruby , Python имеет целью приблизить синтаксис реальной программы, написанной на нём, к описывающему задачу псевдокоду, что позволяет программисту уменьшить объём программы. Идея создания данного языка возникла в конце 1980-х и была реализована Гвидо ван Россумом .

Элегантный дизайн и эффективный, дисциплинирующий синтаксис этого языка облегчают программистам совместную работу над кодом. Python – мультипарадигмальный язык программирования: он позволяет совмещать процедурный подход к написанию кода с объектно-ориентированным и функциональным:

Преимущества Python:

  • открытая разработка;
  • довольно прост в изучении, особенно на начальном этапе;
  • особенности синтаксиса стимулируют программиста писать хорошо читаемый код;
  • предоставляет средства быстрого прототипирования и динамической семантики;
  • имеет большое сообщество, позитивно настроенное по отношению к новичкам;
  • множество полезных библиотек и расширений языка можно легко использовать в своих проектах благодаря предельно унифицированному механизму импорта и программным интерфейсам;
  • механизмы модульности хорошо продуманы и могут быть легко использованы;
  • абсолютно всё в Python является объектами в смысле ООП , но при этом объектный подход не навязывается программисту.

Недостатки Python:

  • не слишком удачная поддержка многопоточности;
  • на Python создано не так уж много качественных программных проектов по сравнению с другими универсальными языками программирования, например, с Java ;
  • отсутствие коммерческой поддержки средств разработки (хотя эта ситуация со временем меняется);
  • изначальная ограниченность средств для работы с базами данных;
  • бенчмарки показывают меньшую производительность Python по сравнению с основными Java VM , что создаёт этому языку репутацию медленного.

Проекты с использованием Python:

  • Yahoo Maps ;
  • Zope Corporation ;
  • Linux Weekly News ;
  • Shopzilla ;
  • Ultraseek .

Популярность

Согласно Wikipedia , Python прочно вошёл в 8 наиболее популярных языков программирования по версии TIOBE Programming Community Index . А если не считать отдельно языки с C-подобным синтаксисом (C++, C#, ObjectiveC, Java и т. д.), то Python является третьим по популярности языком.

Использование

Интерпретатор python можно использовать как для запуска скриптов, так и в режиме интерактивной оболочки.

Наберите в командной строке:

$ python чтобы получить приглашение интерпретатора: Python 2.4.3 (#1, Nov 11 2010, 13:34:43) on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> Теперь можно набрать строку на языке Python и нажать Enter, чтобы выполнить её: >>> print "Put some text here" Put some text here

Потребность в специалистах

Основываясь на анализе Jobs Tractor , учитывающем более 45000 вакансий разработчиков, опубликованных в Twitter за последний год, потребность в программистах такова:

  • PHP – требуется 8238 человек;
  • Ruby – 2937 человек;
  • Python – 1587 человек.

Разумеется, статистика – не единственный фактор, который стоит принимать во внимание при изучении языка программирования.

Какой же язык программирования стоит изучать?

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

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

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

Развитые фреймворки, включающие в себя функции для работы с пользовательскими данными (статьями, темами, постами, фотографиями и т. д.) называются фреймворками управления контентом (Content Management Framework – CMF ).

Если добавить к этому элементы интерфейса для конечного пользователя сайта, получается так называемая система управления контентом или CMS (Content Management System ). CMS позволяет получить сайт с прототипом интерфейса и минимальной функциональностью сразу после установки или после определённой настройки, то есть вообще без программирования.

При этом большинство CMS предоставляют программисту как программный интерфейс CMF , так и интерфейс для расширения своей функциональности.

Программисты Ruby — это специалисты, которые обладают богатым опытом, техническими знаниями, используют динамический язык программирования. Разработчики применяют этот язык для создания сайтов, веб-интерфейсов, корпоративных приложений, программного обеспечения. Профессия подходит тем, кого интересует информатика (см. выбор профессии по интересу к школьным предметам).

Краткое описание

Язык Ruby, который отличается открытым исходным кодом, был создан в начале 90-х годов японским разработчиком, в открытый доступ он попал в 1995 году. За пределы Японии Ruby вышел не сразу, ведь в первые годы его существования ни один документ не был переведен на европейские языки. Лишь в конце 90-х годов появилась тех. документация на английском, а рассматриваемым языком программирования заинтересовались многие разработчики.

Заметим, что до сих пор существует очень мало технической литературы, переведенной на русский, поэтому разработчик обязательно должен знать английский или японский язык. Сегодня этот язык программирования входит в Топ-5 самых популярных, уступая лидирующие позиции Java, JavaScript и PHP.

Ruby человеку без профильного образования будет сложно освоить. Работать с ним смогут лишь те программисты, которые в течение нескольких лет использовали C#, C++ или Java. Ruby отличается простым синтаксисом, многопоточным программированием, поддержкой обработки исключений, в нем данные — это объекты.

Особенности профессии

Работа программистов Ruby не отличается от труда разработчиков, использующих язык JavaScript или PHP. В их задачи входит создание программного обеспечения, его отладка и дальнейшее сопровождение. Обязанности программиста определяет компания, в которой он работает:

  • совершенствование и доработка функционала интернет-магазинов, приложений и т. д.;
  • техническая поддержка плагинов в различных системах;
  • создание приложений для Android, веб-приложений, игр, платформ и других продуктов;
  • проектирование архитектуры баз данных;
  • тестирование и отладка созданного ПО;
  • взаимодействие с дизайнерами, разработчиками и другими членами команды;
  • управление проектом.

Плюсы и минусы профессии

Плюсы

  1. Простой и понятный динамический язык программирования.
  2. Небольшое количество опытных Ruby-разработчиков, что повышает ценность профессии в глазах работодателя.
  3. При наличии профессиональных знаний освоить Ruby можно достаточно быстро.
  4. Стабильная и высокая заработная плата, получение бонусов при условии успешной работы.
  5. Трудиться можно в офисе или удаленно, самостоятельно планируя рабочий день.
  6. Постоянный карьерный рост.
  7. Разработчики добиваются успеха очень быстро, ведь можно стать Ruby Senior в возрасте 25-30 лет.
  8. Начинать работать можно еще во время обучения, что принесет и прибыль, и опыт.
  9. Большое количество онлайн-курсов и свободных программистов, готовых обучать студентов.

Минусы

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

    1. Спокойствие, ведь часто приходится выполнять работу в авральном режиме.
    2. Полная самоотдача и терпеливость, что особенно касается отсутствия графика рабочего дня, внесения бесконечных изменений, исправления ошибок.
    3. Коммуникабельность, ведь необходимо находить общий язык с дизайнерами, заказчиками, сторонними программистами.
    4. Скромность и интеллектуальность.
    5. Честность и техническая грамотность.
    6. Творческий поход.
    7. Добросовестность.
    8. Отсутствие вредных привычек.
    9. Находчивость.

    Обучение на программиста Ruby

    Вузы

    Место работы

    1. IT-компании.
    2. Рекламные агентства.
    3. Частные разработчики ПО.
    4. Банковская система.
    5. Другие организации, которым для работы необходим программист.

    Карьера

    Ruby-разработчика, как и любого другого программиста, ожидает стабильный профессиональный рост, но его скорость зависит от знаний, умений и личных амбиций человека. В первые 3 месяца работы программист является учеником, после чего каждый год опыта будет приносить ему новый статус:

    • Junior (до 18 месяцев опыта);
    • Middle (до 3-4 лет опыта);
    • Senior (более 4 лет опыта).

    Классификация может быть иной, но принцип остается неизменным: больше опыта — лучше должность и выше заработная плата.

    Зарплата Программиста Ruby

    Зарплата на 03.02.2020

    Россия 30000—120000 ₽

    Москва 50000—230000 ₽

    Профессиональные навыки

    1. Знание Ruby и Ruby on Rails.
    2. Опыт работы с PHP, Java, C++ и т. д.
    3. Желателен опыт работы в сфере программирования не менее 2-3 лет.
    4. Обязательное знание иностранных языков.
    5. Знание MySQL, PostgreSQL, JSP, HTML, UnitTest, Grails, CSS.
    6. Git, Subversion или Mercurial.
    7. Разработка технической документации.

    Полезные материалы

    1. Русскоязычный форум о Ruby: onrails.club.
    2. Сайт с переводами для Ruby: rusrails.ru.
    3. Крис Пайн «Учись программировать».
    4. Майкл Фитцджеральд «Изучаем Ruby».
    5. Giovanni Sakti, Nia Mutiara, Хафис Бари Лубис «Learning Devise for Rails».

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

    История языка Ruby

    Ruby как язык программирования существует уже очень давно. Работа над первой редакцией этого невероятно популярного сегодня языка началась в далеком 1993 году, а первая официальная версия датируется 1995 годом. Создатель языка, Юкихиро Мацумото, был энтузиастом программирования еще со времен студенчества, однако идея создания собственного инструмента появилась у него гораздо позже. Так что же такого примечательного в этом языке программирования, что сегодня он занимает одну из лидирующих позиций на мировой арене разработки программного обеспечения?

    Язык программирования Ruby - это высокого уровня, с и независимой от исполняющей среды реализацией многопоточности. В нем есть свой сборщик мусора, а по особенностям синтаксиса он наиболее приближен к таким языкам как Perl. С развитием экосистемы эта платформа много позаимствовала также у Smalltalk, Python, Lisp и других языков программирования. Очень важным для существования и непрерывного развития является также то, что язык "Руби" и его реализация являются полностью свободной. Это означает, что любой желающий может предложить свои изменения, и если они будут приняты сообществом, то войдут в следующую версию языка.

    Философия Ruby

    При создании своего детища, Мацумото, как преданный фанат и энтузиаст объектно-ориентированного программирования, создал определенную философию для программистов, желающих освоить его язык. Так, язык программирования Ruby предназначен для создания простых, и в то же время понятных приложений. Основной упор Ruby делает не на скорость работы программы, а на простоту и читабельность кода.

    Поэтому эту платформу очень часто выбирает как входную для обучения программированию. Главным принципом, на котором базируется этот язык, является так называемый принцип “наименьшей неожиданности” - это означает, что программа должна вести себя так, как того от нее ожидает автор (программист). Другой важной частью идеологии языка, которую привнес создатель, является большая его вариативность. Одного и того же результата можно добиться различными путями и функциями. Благодаря этому каждый программист может решать задачу так, как считает наиболее корректно и удобно. Это во многом повлияло на популярность языка среди профессионалов в сфере информационных технологий.

    Основные характеристики языка

    Что такое "Руби" как язык программирования? Это прежде всего объектно-ориентированный язык. В нем нет примитивных типов - все структуры и единицы данных являются объектами (в отличие от того же языка Java, его есть примитивные структуры данных). Каждая функция в "Руби" является методом. Многие свойства и возможности привнесены создателями из других языков программирования, поэтому можно смело сказать, что Ruby (язык) вобрал в себя лучшее от множества других языков и технологий.

    Так, к примеру, в экосистеме "Руби" есть свой собственный сборщик мусора, идея которого была перенята из Smalltalk и Java, и который может работать со всеми объектами в системе. Этот механизм позволяет незаметно для пользователя приложения и разработчика выполнять очистку памяти от объектов, которые уже не будут востребованы. Сборщик мусора позволяет разработчику в большинстве случаем не отвлекаться на управление памятью приложения, а сосредоточиться на функциональности и удобстве пользования.

    Парадигмы языка

    Отвечая на вопрос о том, что такое "Руби" как мультипарадигменный язык, можно неожиданно для себя оказаться в пылу спора. Ведь этот язык позволяет использовать любую из парадигм программирования одинаково успешно: процедурный стиль программирования, объектно-ориентированный или Разработчик волен выбрать для себя ту парадигму, которая ему ближе, и его набор инструментов от этого не станет ограниченнее или слабее. Язык программирования "Руби" только поощряет этот выбор.

    Причины популярности

    Во многом этот язык стал популярен благодаря простоте разработке различных дополнений к нему. Поэтому количество фреймворков и библиотек постоянно растет, и задачи, которые они решают самостоятельно, позволяют разработчикам в кратчайшие сроки довести продукт до состояния готовности. Очень часто "Руби"-программирование ассоциируется с разработкой веб-приложений и поддержкой функционирования различных сайтов и интернет-платформ. Эту нишу язык занял благодаря своей простоте и скорости разработки. Ведь альтернативные платформы (например, Java), требуют гораздо большего багажа знаний и опыта для решения тех же задач.

    Популярные фреймворки

    Если говорить о популярных фреймворках, которые существуют на рынке сегодня, то среди них стоит выделить Rails. Много людей, отвечая на вопрос о том, что такое "Руби", интуитивно подразумевают RubyOnRails. Этот набор программных компонентов стал промышленным стандартом среди разработчиков. Он постоянно поддерживается, развивается и дополняется сообществом программистов, оставаясь при этом бесплатным. Этот фреймворк описывает компоненты веб-приложения в рамках шаблона MVC (Model-View-Controller), а также предоставляет готовую интеграцию с и интерфейс для доступа к базе данных. Эти 3 компонента, по сути, позволяют в считанные часы написать и запустить в интернет простой блог или частную веб-страничку.

    На языке программирования Ruby можно создавать даже нативные мобильные приложения, благодаря библиотеке RubyMotion. Она позволяет исполнять код Ruby на платформах iOS, OS X и Android. Она создана частной группой разработчиков, поэтому за ее использование необходимо платить, но она лишний раз подтверждает богатые возможности языка.

    Важность написания тестов

    Другой важной составляющей экосистемы языка Ruby, и его веб-ориентированной части, являются фреймоврки и библиотеки для написания тестов. RubyOnRails проповедует философию BDD (behavior-driven development), что означается, что сначала программист создает последовательность тестов, описывающих ожидаемое поведение программы, а потом уже создает код, который должен успешно пройти эти тесты. Негласным стандартом в этой сфере является RSpec - это фреймворк позволяет писать тест-кейсы на понятном даже неопытным в разработке пользователям.

    Ruby Gems

    Благодаря детально описанному стандарту, которому должны соответствовать все пакеты и библиотеки на Ruby, разработка дополнений не составляет особого труда. Поэтому среди так называемых gems (от англ. - драгоценный камень) можно найти модули для решения практически любых задач - от интеграции с социальными сетями и сторонними сервисами до готовых платформ для электронной коммерции. Все, что нужно для использования сторонней библиотеки - это описать зависимость своего проекта от какой-то библиотеки, находящейся в удаленном или локальном репозитории, и при следующей сборке эта библиотека автоматически загрузится в приложение. Это также упрощает миграцию проекта между разработчиками, так как нет необходимости вручную делиться зависимостями для сборки проекта.

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