Що таке "Рубі" (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)? Мова програмування "Рубі"