From: "NARUSE, Yui" Date: 2011-10-08T04:19:31+09:00 Subject: [ruby-list:48448] Re: 関数の戻り値について (2011/10/08 3:27), Jun'ya Shimoda wrote: >> 個人的には、何を返事するかは、オブジェクト指向として大切なことだと思っているの >> で、「return」で返事の内容を明示することをお勧めしたいのですが……。 > > 確かに最後に何を返すか明示する方がPascal出身の私も分かりやすいです。 > でも、るびきちさんの「Ruby逆引きハンドブック」によると > 「最後の式にわざわざ「return」を付けるのは、Ruby的に恰好悪い」 > そうなので、頑張ってreturnを回避してたらこんな目に会ってしまいました。 > どうしたものやら。 基本的に Ruby は書かなくてもいい物は書かない、ですからね。 「最後の式の値が返る」「全てが式」というルールが染みついていれば、 return は蛇足にしかならないわけです。 言い換えると、蛇足を増やすと本質が埋もれやすくなるので避ける、ですかね。 「記述が多い方がわかりやすい」派とは立場を異にしていると。 なお、わたしだったらこう書くかな def calc(str) str.split(//).inject(0){|sum, item| sum += item.to_i} end * Enumerable#inject http://doc.ruby-lang.org/ja/1.9.2/method/Enumerable/i/inject.html -- NARUSE, Yui