Rubyモジュールのインスタンスメソッドを、それを含めずに呼び出すことはできますか?
バックグラウンド: いくつかのインスタンスメソッドを宣言するモジュールがあります module UsefulThings def get_file; ... def delete_file; ... def format_text(x); ... end そして、クラス内からこれらのメソッドのいくつかを呼び出したいと思います。Rubyでこれを通常行う方法は次のとおりです。 class UsefulWorker include UsefulThings def do_work format_text("abc") ... end end 問題 include UsefulThingsもたらすすべてのメソッドのUsefulThings。この場合、私は必要format_textとするだけで、明示的には必要get_fileありませんdelete_file。 これに対するいくつかの可能な解決策を見ることができます: どういうわけか、どこにも含めずにモジュールで直接メソッドを呼び出す これがどのように/できるのかわかりません。(したがって、この質問) どういうわけUsefulthingsかそれのいくつかのメソッドを含めて、それだけを 取り入れます 私はまた、これがどのようにしてできるのかを知りません プロキシクラスを作成UsefulThingsし、それに含めてから、format_textそのプロキシインスタンスに 委任する これは機能しますが、匿名プロキシクラスはハックです。ああ。 モジュールを2つ以上の小さなモジュールに分割する これも機能し、おそらく私が考えることができる最良のソリューションですが、数十および数十のモジュールが急増することになるため、回避することをお勧めします。これを管理するのは面倒です。 単一のモジュールに無関係な機能がたくさんあるのはなぜですか?これApplicationHelperは、私たちのチームが事実上、他のどこにも属さないほど具体的ではないもののゴミ捨て場として決定したRailsアプリからのものです。ほとんどどこでも使用されるスタンドアロンのユーティリティメソッド。私はそれを別々のヘルパーに分割することができましたが、それらの30があり、すべて1つのメソッドで...これは非生産的なようです