2011年10月 8日

[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 <naruse@xxxxx>


投稿者 xml-rpc : 2011年10月 8日 04:19
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/106833
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。