回答編集履歴
3
回答を修正
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
> 簡単な練習問題をクラスメソッドで実装する利点(トップクラスでメソッド定義したりすればいいのでは)
|
2
2
|
|
3
|
-
|
3
|
+
トップレベルのインスタンスメソッドにするには使用が限定的であるので不適切であるというのが一番大きな理由だと思います。それと副産物的なものですが、定義したメソッド群に対してわかりやすく名前をつけているとかでしょうか。
|
4
4
|
|
5
5
|
> またクラスメソッドでなくモジュールで定義する利点を教えてください。
|
6
6
|
|
2
修正
answer
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
> またクラスメソッドでなくモジュールで定義する利点を教えてください。
|
6
6
|
|
7
7
|
メソッドが関数的に使われているのでRubyっぽくはないですね。特に利点があるとも思いません。
|
8
|
-
クラスを定義して `generate_matrix` の処理なんかは `initialize` でやるとRubyっぽくなるかなと思います。
|
8
|
+
クラスを定義して `generate_matrix` の処理なんかは少し改良して `initialize` でやるとRubyっぽくなるかなと思います。
|
9
9
|
|
10
10
|
---
|
11
11
|
|
1
追記
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
> 簡単な練習問題をクラスメソッドで実装する利点(トップクラスでメソッド定義したりすればいいのでは)
|
2
2
|
|
3
|
-
リンク先の回答のモジュールは`self`を`extend`しているのでトップレベルでモジュールを定義している場合、トップレベルのメソッド定義とほとんど同義です。
|
3
|
+
リンク先の回答のモジュールは`self`を`extend`しているのでトップレベルでモジュールを定義している場合、トップレベルのメソッド定義とほとんど同義です。定義したメソッド群に対してわかりやすく名前をつけている程度の捉え方でいいと思います。
|
4
4
|
|
5
5
|
> またクラスメソッドでなくモジュールで定義する利点を教えてください。
|
6
6
|
|