Стоит ли изучать Ruby, если не использовать Rails?
Итак, я немного взглянул на Ruby несколько дней назад. Сначала я был очень удивлен некоторыми вещами, которые, по-видимому, облегчают жизнь программистам. (Использование блоков, объектной модели,...)
Но тогда есть эта большая проблема: никто, кажется, не использует Ruby без Rails! Канал #Ruby (-lang) мертвый, люди говорят только в #rails
Я буду придерживаться PHP для веб-разработки, не вопрос, но
- Действительно ли кто-то использует Ruby как язык общего назначения, а не для веб-разработки?
- Имеет ли Ruby (хорошие) библиотеки для офлайн-приложений?
- Это может быть субъективным, но должен ли я просто придерживаться Python для не-веб-скриптов?
Я не хочу изучать Ruby, чтобы узнать, что часть общего назначения на самом деле мертва!
С наилучшими пожеланиями,
ламы
Ответы
Ответ 1
Я предпочитаю Ruby для Python для общих сценариев и вычислений. Я считаю Ruby более гладким в использовании, хотя Python действительно имеет рынок в не-веб-приложениях. У Ruby есть немало хороших точек продаж без Rails (заметьте, я не использую Rails, я думаю, что это беспорядочно странно). Такие, как привязки GTK для Ruby, действительно потрясающие. Создание графического приложения hello world в 5 строках просто потрясающе...
Другая плохая вещь о Ruby заключается в том, что на данный момент она медленнее Python. Поэтому ваш выбор для изучения Ruby должен действительно зависеть от ваших потребностей. Вы программируете для развлечения/как хобби или пытаетесь создать коммерческие приложения? Python также более общепринят для рекламы (по крайней мере, больше, чем Ruby).
Ответ 2
Действительно ли кто-то использует Ruby как язык общего назначения, а не для веб-разработка?
Да. В качестве бонуса, это моя дневная работа.
Имеет Ruby (хорошие) библиотеки для "автономные" приложения?
Да.
Это может быть субъективно, но я должен просто придерживайтесь Python для не веб-сайтов сценарии?
Вы не пожалеете об изучении его для веб-или не-веб-скриптов. При этом у python есть свои сильные стороны. Они оба очень способные языки. IMHO ruby - более элегантное оружие.
- Ruby не имеет требований к пробелам.
- Ruby имеет лучший синтаксис
- ruby более выразителен
- python может быть быстрее
- python, возможно, имеет лучшие библиотеки для определенных вещей
И помните, что рельсы не являются единственной платформой для веб-программирования в рубине.
Ответ 3
Я предпочитаю писать общие сценарии в Ruby, потому что я нахожу язык более интуитивным, чем Python, Perl или bash. Например, используя Ruby для переименования файлов и редактирования их содержимого, также chmodding и Рубин.
См. также Ruby Top Projects. Он включает в себя некоторые связанные с Rails приложения, но другие проекты Ruby, которые также не связаны с Rails.
Ответ 4
В Парадокс Python Пол Грэм утверждает, что лучшие программисты часто пользуются "сравнительно эзотерическими" языками. Им они не нравятся, потому что они помогут вам на работу. Они им нравятся, потому что "сравнительно эзотерические" языки могут быть интересными и красивыми. Его эссе более 5 лет, поэтому многое изменилось - я не думаю, что Python или Ruby можно считать эзотерическим. Тем не менее, идея такая же. Есть ли какая-то лучшая причина использовать другой язык, кроме того, что вы считаете его интересным и, возможно, даже красивым?
Ответ 5
В моей работе ядро составляет около 93 000 строк Ruby, не включая DSL, тесты и Rails (хотя у нас есть все эти вещи в изобилии).
Среди основных функций - механизм обработки, который распределяется по n машинам, библиотека для создания postscript и несколько пользовательских мини-языков для макета, встроенных данных и других полезных свойств.
Итак, да, вы можете сделать совсем немного работы без рельсов в Ruby.
Ответ 6
Многие люди видят Ruby и Rails как синонимы. Я не занимаюсь веб-разработкой, но я использую Ruby почти каждый день. Я считаю, что это отличный язык общего назначения. Я не хочу отвлекаться от языка, но это язык, который мне нравится в использовании, и нашел много применений. Там являются сорт библиотеки, доступные для Ruby, которые не имеют никакого отношения к веб-программированию. Есть также коммерческие приложения в дикой природе, которые используют Ruby (Google SketchUp, для одного).
Если вы заинтересованы в изучении языка для общего использования, я рекомендую прочитать книгу "Programming Ruby" (которую можно найти в режиме онлайн бесплатно ruby-doc.org).
Если канал #Ruby мертв, попробуйте подписаться на список рассылки пользователей Ruby. Существует большая база подписчиков и много обсуждений.
Ответ 7
Ruby потрясающий для всех вещей. Но Rails - это приложение для убийц. Если вы хотите написать небольшие скрипты, которые делают мелкие вещи, это, вероятно, не имеет большого значения. Если вы хотите писать большие программы не-webapp в скриптовом langauge, возможно, стоит изучить Ruby. Но если вы знаете Python и любите его, нет никаких оснований для перехода на корабль.
Изучите Ruby, потому что это забавный язык и зная, что он сделает вас лучше всех программистов. Но это не похоже на то, что вам нужен рубин.
Ответ 8
Дайте Ruby попробовать. Это забавный язык. Плюс я не вижу ничего плохого в изучении чего-то нового. Это не похоже на то, что вы умрете от слишком большого знания.
Ответ 9
Абсолютно Ruby стоит изучать, интуитивно и элегантно и предельно лаконично. Я использовал Ruby в течение многих лет, чтобы автоматизировать процессы сборки, компилировать, устанавливать сборки, даже использовать WebBrick для облегченного CI-сервера (до того, как TeamCity упростил мою жизнь). Сейчас я нахожусь в проекте Rails, но люблю Ruby задолго до того, как я сделал с ним веб-проект.
Существует множество библиотек для выполнения повседневных задач сценариев. Файл IO прост. Cron + Rake - отличный способ управлять повторяющимися задачами.
Короче - сделайте это.
Ответ 10
Расстояние между мыслью и реализацией с Ruby радостно короткое, второе возможно только до Lisp/Scheme... это не имеет ничего общего с Rails.
Пикап Новая версия Matz от O'Reilly и свободно говорим с Ruby 1.9, вы не пожалеете об этом.
Что касается того, что Ruby мертв, я бы сказал, что текущий диск для языка спецификации и ISO постоянно противоречит.
Ответ 11
Что касается языков динамического написания сценариев, Python твердо держится на рынке не-веб-приложений. Я видел несколько небольших проектов, написанных на Ruby, но ничего не производственного уровня. У Python, с другой стороны, есть несколько мощных систем под ним.
Мое предложение? Придерживайтесь Python для не-веб-материалов и дайте Python кадр с веб-сайтом. Ruby отлично с Rails, и определенно стоит заглянуть в веб-разработку.
Ответ 12
Я использовал много рубиновых скриптов/программирования из-за того, что Ruby предложил по сравнению с Perl. Я выбрал Ruby над Python частично из-за шумихи и был в целом доволен этим.
Когда мне понадобится динамический объектно-ориентированный язык сценариев, я, вероятно, выберу Python, поскольку мне легче понять.
В любом случае, это индивидуальный выбор, и давайте посмотрим, что показывают другие ответы...
Ответ 13
Я много использую Ruby и не занимаюсь веб-разработкой, и считаю, что Ruby - отличный язык для написания общих приложений.
Вы найдете для любого данного приложения Ruby предоставляет множество хорошо продуманных и регулярно поддерживаемых библиотек; и в качестве дополнительного бонуса почти все разработчики Ruby размещают свой код на github, поэтому вклад в эти библиотеки - кусок пирога. Добавьте к этому простоту установки и обновления библиотек с использованием Ruby 'gems', и у вас есть почти полный пакет. Единственный потенциальный недостаток Ruby - небольшая нехватка документации для некоторых библиотек, но эта ситуация быстро улучшается.
В целом Ruby - замечательный язык, который очень хорошо продуман и красив. Одной из вещей, которые мне нравятся, является просмотр страниц "Ruby Reddit" и просмотр творческих способов, которыми сообщество продолжает расширять язык. Я определенно вижу, что он используется далеко за пределами веб-разработки, так бывает, что его текущим "killer-app" является Rails.
Вам не нужно беспокоиться о выборе Ruby, у него очень светлое будущее.