Что такое "Руби" (Ruby)? Язык программирования "Руби"

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

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

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

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

Философия Ruby

При создании своего детища, Мацумото, как преданный фанат и энтузиаст объектно-ориентированного программирования, создал определенную философию для программистов, желающих освоить его язык. Так, язык программирования 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 (от англ. - драгоценный камень) можно найти модули для решения практически любых задач - от интеграции с социальными сетями и сторонними сервисами до готовых платформ для электронной коммерции. Все, что нужно для использования сторонней библиотеки - это описать зависимость своего проекта от какой-то библиотеки, находящейся в удаленном или локальном репозитории, и при следующей сборке эта библиотека автоматически загрузится в приложение. Это также упрощает миграцию проекта между разработчиками, так как нет необходимости вручную делиться зависимостями для сборки проекта.

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


Внимание, только СЕГОДНЯ!

» » » Что такое "Руби" (Ruby)? Язык программирования "Руби"