В моей работе часто приходится распространять сценарии среди других отделов компании, подрядчиков и т. Д. Если сценарий представляет собой один файл .rb / .php / .jar / .py, то это легко: все, что мне нужно, это каким-то образом предоставить его подать на человека, и он просто дважды щелкнет его, чтобы выполнить. Но если скрипт сложный (большой), запись его в виде одного файла не очень хороша с точки зрения программиста - поэтому сложные скрипты создаются в виде ряда файлов с чем-то вроде «основного» файла, который запускает скрипт. И где проблема с распространением таких сценариев для непрограммистов: им нужно скопировать всю папку, содержащую все файлы, найти основной файл и дважды щелкнуть по нему. Для непрограммистов это намного сложнее, чем просто дважды щелкнуть один файл :(. Действительно.
PHP, Java и Python предлагают решение для таких проблем распространения. Я могу просто упаковать все файлы в файл ".phar", ".jar" или ".egg" и передать этот файл конечным пользователям - двойной щелчок по нему запустит скрипт (или введет его имя в консоли, если скрипт является командой- линия). Та же простота, что и с одним файлом сценария.
Существует ли что-то подобное для Ruby? Я проверил механику 'gem', которая кажется мне очень распространенной для python 'egg', но кажется, что 'gems' не подходят для выполнения в качестве 'сценария', они предназначены только для установки: (.
Есть намеки или идеи?