Статьи

История Рубина

rubygrows

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

Примечание. Эта статья содержит метафоры (от языка к человеку), так что будьте готовы.

Рождение (1993)

Руби родился в 1993 году, задуманный в ходе дискуссии между Юкихиро Мацумото («Мац») и его коллегой. Они обсуждали возможность объектно-ориентированного языка сценариев. Мац заявил в ruby-talk: 00382, что он знает Perl, но ему не очень нравится; что он пах «игрушечным» языком. Он также рассказал, что знает Python, но ему не нравится, потому что это не настоящий объектно-ориентированный язык программирования.

Мац хотел язык, идеально подходящий для его нужд:

  • Синтаксически Простой
  • Истинно объектно-ориентированный
  • Наличие итераторов и замыканий
  • Обработка исключений
  • Вывоз мусора
  • портативный

Осмотревшись вокруг и не найдя подходящего ему языка, Юкихиро Мацумото решил создать свой собственный. Потратив несколько месяцев на написание переводчика, Мэтц, наконец, опубликовал первую публичную версию Ruby (0,95) в различных японских внутренних новостных группах в декабре 1995 года. Вы все еще можете загрузить детскую версию Ruby здесь на свой страх и риск.

Годы малыша

Ruby стал малышом (n .: маленький ребенок, который только начинает ходить), когда Ruby 1.0 был выпущен в декабре 1996 года. Ruby 1.1 вскоре последовал в августе 1997 года, и первая стабильная версия Ruby (1.2) была выпущена в Декабрь 1998 г.

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

Начальная школа

В 1998 году Matz создал простую английскую домашнюю страницу для Ruby. Тем не менее, Ruby все еще был очень локализован в Японии. Чтобы продвинуть это расширение, был создан первый список рассылки Ruby на английском языке, Ruby-Talk . Рубин начал распространяться за пределы Японии.

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

В октябре 1999 года Юкихиро Мацумото и Кейджу Ишицука написали первую книгу о языке программирования Ruby: объектно-ориентированный язык сценариев Ruby . Руби начал становиться очень популярным в Японии и быстро распространяться в англоязычных странах.

В 2001 году в 2001 году была выпущена первая английская книга по Ruby, Programming Ruby («Кирка»). Благодаря этой новой информации о Ruby гораздо больше людей смогли выучить язык.

Ruby 1.8 был выпущен в 2003 году. Этот выпуск внес значительные изменения в гибкий язык 10-летней давности. В том числе:

  • Duck Typing (выглядит как утка, плавает как утка, крякает как утка: это утка)
  • Полностью квалифицированные имена ( Foo::Bar
  • Родная поддержка YAML
  • WEBrick
  • StringIO
  • открытая URI
  • PP (Pretty Printer для Hash#inspect
  • ruby -runruby -run -e mkdir foo
  • И много других мелких особенностей

В 2004 году RubyGems был выпущен для общественности. Хорошие вещи начали происходить дальше …

Мятежный подросток

В 2005 году использование Ruby взлетело. Причина: Ruby on Rails . Эта новая структура изменила историю быстрой веб-разработки. В прошлом Ruby использовался для написания CGI-скриптов, но Ruby on Rails пошёл дальше. Rails имеет структуру Model-View-Controller, которая фокусируется на «соглашении по конфигурации», что отлично подходит для разработки веб-приложений.

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

В марте 2007 года был выпущен Ruby 1.8.6, а в мае 2008 года — 1.8.7. На данный момент Ruby достиг пика. Mac OS X даже начала поставляться с ним в 2007 году. На данный момент Ruby было 15 лет.

Ruby 1.9 (версия для разработки) была выпущена в декабре 2007 года, а затем стабилизировалась 4 года спустя (2011) как Ruby 1.9.3. Ruby 1.9.3 был производственной версией 1.9.2. Эти версии принесли новые изменения в язык, такие как:

  • Значительные улучшения скорости
  • Новые методы
  • Новый синтаксис хэша ( { foo: 'bar' }
  • RubyGems включен
  • Новый Socket API (поддержка IPv6)
  • Несколько генераторов случайных чисел
  • Улучшения регулярных выражений
  • Улучшения производительности загрузки файлов
  • Test :: Улучшения модуля
  • Новая поддержка кодирования
  • Больше настроек форматирования строк
  • И многое другое

Ruby переходил от мятежного подростка к сильному взрослому, когда ему исполнилось 18 лет с Ruby 1.9.3.

Сильный Взрослый

Ruby 2.0.0 был выпущен в феврале 2013 года и принес много стабилизирующих изменений в язык. Среди них:

  • Больше улучшений скорости
  • Уточнения (безопасное исправление обезьян)
  • Ключевые аргументы
  • UTF-8 по умолчанию
  • Новый движок регулярных выражений
  • Оптимизированная сборка мусора
  • Добавление встроенной синтаксической документации ( ri ruby:syntax

В отличие от 1.9.x, которая разбила множество драгоценных камней своими изменениями, 2.0.0 была почти полностью обратно совместима с 1.9.3. Кроме того, Heroku, один из ведущих хостов Ruby / Rails, быстро обновился до 2.0.0, что привело к более раннему, чем обычно, принятию новых и существующих проектов. Язык Ruby был (и есть) в своем золотом веке.

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

Ruby 2.1.1 был выпущен в 21 день рождения Ruby (24 февраля 2014 года). Руби теперь по закону разрешено пить в США (не то, что мы бы этого хотели). В этой версии были в основном улучшения скорости и исправления ошибок. Вскоре после 2.1.1, Ruby 2.1.2 был выпущен в мае 2014 года. 2.1.2 содержит больше исправлений и является текущей стабильной версией Ruby.

Будущее

Ruby — отличный язык. Мац хотел язык программирования, который отвечал бы его потребностям, поэтому он создал его. Это вдохновляющая история разработки программного обеспечения: если вы не можете найти то, что вам нравится, запрограммируйте это самостоятельно. С 0.95 до 2.1.2 Руби поражал тех, кто хотел программировать так, как хотел, а не так, как хотел автомат.

Мы не можем знать будущее языка Ruby, но мы можем предсказать его, основываясь на прошлом. Я верю, что язык Ruby и его фантастическое сообщество будут продолжать развивать язык выше и вне того, что другие считают возможным, и проекты, созданные с его использованием, будут делать то же самое.