Я подумываю о создании (большого) настольного приложения на Ruby (на самом деле игра, подумайте что-нибудь вроде Angband или Nethack с использованием Gtk + для GUI).Я пришел из C # /. NET фона, так что я немного растерян для того, как структурировать вещи.
В C # я бы создал много пространств имен, таких как Application.Core, Application.Gui и т. Д.).Части приложения, которые не нуждаются в Gui, не будут ссылаться на него с помощью оператора using.Из того, что я понимаю, в Ruby оператор require в основном выполняет текстовую вставку, которая позволяет избежать дублирования кода.Что меня беспокоит, так это использование операторов require, чтобы каждый файл / класс имел доступ ко всему остальному, потому что упорядочение операторов require.
Я прочитал некоторый код ruby, который использует модули в качестве пространств имен.,Как это работает и как это помогает?
Не уверен, что я здесь получаю ... У кого-нибудь есть хорошие советы о том, как структурировать большое приложение Ruby?Как насчет некоторых нетривиальных (и не-Rails) приложений, которые используют Ruby?