よしだです。
#おもしろそうと言っといてMLを読めなかった…。m()m
元々やろうとしている方法でコメントするとすべての部分に
コメントが必要なので、やりずらいので部分にコメントします。
> = ところで、原文の「Constructor Parameter method」は、どういうものなのでしょう
> = か?
Constructor Parameter Methodなど大文字で書かれているものは、
Kent Beckの著書“Smalltalk Best Practice Patterns”のパターンで
す。
XPのプロジェクト(C3)では、これをCoding Standardとしています。
(XPractice参照)
> 「リファクタリング」の邦訳をお持ちなら、173ページの、自己カプ
> セル化フィールドを使用する場合のコンストラクタの例が参考になる
> のではないでしょうか。
じつは、この例のとおりの内容です。ただ、命名の方法は「頭に
setを付け、後に初期化するフィールド名をならべる」となっている
ので、setName: amount:となっています。
> IntRange(int low, int high){
> initialize(low, high);
> }
> private void initialize(int low, int high){
> _low = low;
> _high = high;
> }
> このinitialize()が良く似ています。(もっとも、voidでもprivateで
> もありませんが)
voidについてはJavaではそれで十分でしょう。privateかどうかとい
う話では、このConstructor Parameter Methodは、Smalltalk
のプロトコルのprivateというところに分類していれておくので同様の
意味であると考えられます。
--
吉田 尚志 steven@....jp