アプリケーションにはいろいろ設定があるものです。一般的な例では、production / development のようなモードや、ログレベルなど。プログラムを書くとき、こういうデータをどのように管理しますか? 大きく 2 種類の書き方があると思います。 グローバル変数(やそれに類するもの)に入れる クラス生成時にコンストラクタに引き回す どちらも一長一短があると思っています。 1. グローバル変数に入れる たとえば、$config = { mode: :development } などとするだけ。 Rubyの場合、グローバル変数だけでなく、定数に入れたり、クラスメソッドにしたり、singletonライブラリを使ったり、スレッドローカルストレージを使ったりするのもこの分類に含めます。 長所 記述がとても簡潔 設定の追加が簡単 短所 グローバル変数を使うことに罪悪感がある 1 つのプロセスで