Большинство языков программирования имеют некоторые конструктивные решения, которые влияют на их использование и применимость.
Например:
- Python фокусировался на удобстве сопровождения / читабельности кода и имел отступы как часть самого языка.
- Намерение Java заключалось в том, чтобы быть кроссплатформенным ООП «проще» и «дружелюбнее», чем C ++
- Objective-C был построен как оболочка OO, не зная будущего C ++ в то время
- Erlang разработан для отказоустойчивых и параллельных систем
- PHP предназначен для обработки динамического создания веб-страниц
- CoffeeScript предназначен для демонстрации хороших частей Javascript и добавления синтаксического сахара ООП и сокрытия нюансов (глобальных и т. Д.) JS «за кулисами» и т. Д.
Каждый язык программирования пытался использовать и извлечь выгоду из определенной ниши ИМХО. Выше приведены мои взгляды на то, что было основополагающими принципами языков программирования и которые определяли их эволюцию и широкое распространение. Конечно, есть еще много, но список предназначен только в качестве примера
Однако я изо всех сил пытался понять основополагающие принципы, на которых основан Ruby, и его растущую популярность. Каковы были основополагающие принципы Ruby, которые делают его популярным сегодня? Или это гений одного человека, который разработал фреймворк Rails? Если последнее, то Ruby сделал проект Rails лучше / проще / быстрее? В каком смысле?
Наиболее часто упоминаемая причина, по мнению его создателя, заключается в том, что «... нужен забавный, слабо типизированный язык программирования» - я не вижу в этом никакой причины для создания нового языка программирования в целом! ИМХО, программирование - это весело, независимо от языка (у каждого языка есть свои плохие стороны, но каждый либо обходит его, либо живет с ним).
Так какая ниша использовала (или делает) Ruby, который не используется современными языками? Какова «сильная сторона» (USP) Ruby, которая привела к его широкому распространению? Что сделал Руби, чего раньше не было (или было чрезвычайно сложно)?
Я не программист на Ruby, а просто нубский Ruby и, следовательно, путаница.
Отказ от ответственности : это НЕ пламенная война, и я не ищу ответы типа Ruby vs Programming. Я ищу дизайнерские решения, на которых основан Ruby, что привело к широкому распространению. Какую нишу удовлетворяет Ruby, чтобы стать популярным, или это просто связано с Rails?
источник
Это не дает прямого ответа на заглавный вопрос, но затрагивает некоторые вопросы (например, почему был создан Ruby)
Цитаты из Yukihiro 'Matz' Matsumoto, создателя Ruby, которые могут помочь объяснить, что вдохновило его создание:
В общем, Матц хотел чрезвычайно объектно-ориентированный язык, который был разработан для счастья программиста.
источник
+
в1+1
это метод.Ruby (вместе с рельсами) сделал соглашение о конфигурации популярным.
Старый (не рубин на рельсах) путь был
При соглашении о конфигурации базовая работа для этого выполняется автоматически:
Контрас: вы должны выучить все правила, поэтому изучать рубин на рельсах при первом запуске будет сложнее.
Плюсы: если вы знаете соглашения, то довольно легко понять код другого ruby на rails developpers, потому что каждый вынужден следовать тем же соглашениям.
Между тем соглашение о конфигурации вошло во многие экосистемы кодирования
источник
Во-первых, Ruby - это «текущий язык». Может быть, вы имеете в виду «языки, которые были популярны, когда Ruby был создан в 1995 году».
Мне нравится Ruby по тем же причинам, что и Perl:
Это мощный и выразительный. Я могу написать об одной строке кода Ruby вместо пяти строк Java или C ++. Нет повторения, которое не может быть рассмотрено с минимальной суетой.
Это динамично. Методы и свойства могут быть созданы во время выполнения, поэтому я могу обернуть объекты вокруг определенных внешними объектами, таких как таблицы базы данных, не дублируя определение этих вещей и не перестраивая приложение.
Есть отличная книга по языку ( Programming Ruby ), которая читаема и понятна.
Существует один репозиторий для пакетов общего доступа и удобный интерфейс командной строки для репозитория.
Но мне нравится Ruby лучше, чем Perl, потому что он более читабелен.
Существует множество страниц, сравнивающих Ruby с Python. Мне нравятся они оба. Я предпочитаю Ruby, но у меня ограниченный опыт работы с Python.
источник