Существует ли стандартная или стандартная система для организации многофайловых программ Ruby? Я начал свой первый большой "проект" в Ruby, поисковую программу, которая логически организована в несколько файлов и каталогов. Я обрисовал в общих чертах ниже своей потенциальной структуры:
Однако код в настоящее время имеет класс (давайте назовем его Искателем), который поисковый класс каждого протокола наследовал от (GoogleSearcher <Искатель). Для управления этим я должен включать основной файл в эти файлы протокола (право?), который не кажется возможным, учитывая мою идеальную структуру.
Кроме моего определенного примера, я задавался вопросом, существуют ли какие-либо конвенции, такие как "больше файлов, а не меньше", или "логическое структурирование файлов является ненужным". Действительно ли распространено иметь файл функций "помощника" (такой как в направляющих?), Какой уровень абстракции считают соответствующим?
Наконец, я - планирование интеграции этого в направляющие когда-нибудь как библиотека (не плагин; я хочу, чтобы это работало автономное также). Я не знаю, влияло ли это на организацию.
Я знаю, что это - довольно открытый вопрос, но поэтому я ценил бы любой совет, который удаленно релевантен. Заранее спасибо.
Вы можете рассмотреть возможность создания драгоценного камня для вашей библиотеки. Это упростит использование библиотеки как автономной, так и с Rails, а также сделает развертывание/обновление проще.
Далее, так как драгоценные камни обычно следуют определенной структуре каталогов, это также решает вашу проблему не зная, как организовать библиотеку.
Для создания драгоценных камней доступно множество документации. Здесь немного больше информации о структуре файлов, а также другие полезные советы.
.Если вы хотите интегрироваться с Rails, вы, вероятно, захотите создать плагин.
Это руководство может быть хорошим началом: http://guides.rubyonrails.org/plugins.html
Вы, возможно, захотите взглянуть на идеальную структуру проекта рубина в сочетании с советом фонконрада. Джемчужина, безусловно, будет хорошим местом для начала и прослушивание официальной документации по рубинам также может быть полезным.