バックグラウンド
すべての Smalltalk 初心者は、add:
"self" を返すのではなく、追加されたオブジェクトを返すことに注意してください。
たとえば、次のコードを使用します。
myCollection := OrderedCollection new
add: 'Peter';
add: 'John';
add: 'Paul'.
myCollection
コレクション自体ではなく、文字列「Paul」が含まれます。
これは、add:
追加されるオブジェクトが返され、カスケード式全体が最後に送信されたメッセージに評価されるためです。
代わりにyourself
、最後に次のように記述する必要があります。
myCollection := OrderedCollection new
add: 'Peter';
add: 'John';
add: 'Paul';
yourself.
質問
- これはなぜですか?
- これは何を設計したのですか?
add:
このように振る舞うことの利点は何ですか?