3
なぜRubyでは "Class < Module"ですか、他のクラスにクラスを含めることはできませんか?クラスが別のクラスから継承できる点を除いて、クラスとモジュールの技術的な違いは何ですか?Rubyにクラスを組み込むことが不可能なのはなぜですか?
なぜRubyでは "Class < Module"ですか、他のクラスにクラスを含めることはできませんか?クラスが別のクラスから継承できる点を除いて、クラスとモジュールの技術的な違いは何ですか?Rubyにクラスを組み込むことが不可能なのはなぜですか?
これは、Rubyモジュールのクラスとモジュールの違いは正確には含まれており、クラスはできません。それは単に言語の設計です。
クラスは、拡張のために開いた具体的な機能と、Modules provide namespaces and mixin capabilitiesを提供することを意図しています。この相違の原因はおそらく、多重継承とインタフェースの代わりとしてのミックスインの考え方に関係していると考えられます。
これは依然として疑問を抱きます。なぜあなたはクラスから継承できますか?それをミックスインとして含めることはできませんか? – Kudu
可能ならば、 'self.new'や' initialize'のようなクラス固有のメソッドもinclude/extendを使っているクラスに混在させます。私はinclude/extendが*これらのクラス固有のメソッドを無視することができれば可能かもしれないと思います...チャレンジの受け入れ! – RyanScottLewis