[SML 7202] メソッド名について
NOBUTAKA Terauchi
europa @ ps.inforyoma.or.jp
2006年 10月 3日 (火) 19:43:32 JST
寺内です。お久しぶりです。
ThinkPad s30の調子が悪く、Mac miniに非常に惹かれています。
ここから質問です。
-----
Smalltalkイディオム->4.制御->分岐、繰返しにある「複数のメッセージセレク
タを一気にブラウズするためのプログラム」と「あるメッセージカテゴリに定義
されているメソッドを検索するプログラム」をクラスメソッドとして定義しよう
としています。(いつでも使用できるようするため)
クラスは、
Object
MethodSearchBlock
として定義しました。
インスタンス変数などは定義していません。
1. 「複数のメッセージセレクタを一気にブラウズするためのプログラム」を
クラスメソッド includes: messageSelectors として定義しました。
2. 次に、「あるメッセージカテゴリに定義されているメソッドを検索するプロ
グラム」を定義しようとしました。ただ、最後にメソッドを列挙するという
機能は同じなので includes: messageCategories にするとメソッド名が重
複してしまいます。
そこで、includesCategory: messageCategories として定義しました。
この場合、1.のメソッド名も includesXXX としたほうが分かりやすいように思
えてきました。
ただ、XXXの部分が思いつきません。システム全体を検索しているのでAllClass
とするほうが良いのでしょうか?
それとも、クラスを分けた方が良いのでしょうか?
includes: というメソッド名は、ベストプラクティス・パターン(ケント・ベッ
ク著)の「メソッドには、それが何を達成するかにちなんだ名前をつけましょ
う。」を参考にしました。(パクリました)
これが正解というものは無いかもしれませんが、よろしくお願いします。
あと、前回皆さんから指摘して頂いたことにより、Smalltalkイディオムの内容
を前回読んだ時よりも理解できるようになりました。(当社比)
改めてお礼申し上げます。
---
NOBUTAKA Terauchi<europa @ ps.inforyoma.or.jp>
SML メーリングリストの案内