・型を書け! ・名前を付けろ! ・合成しろ! 型を書け! 「は?型推論あるのにわざわざ型なんて書かなくていいし!」と思いましたか? では保守を任されて緊急でソースを理解したい時にこのようなコードだった場合はどうでしょう。 //XXとYYはどこか別の場所で定義されている class AAA[A <: XX, B <: YY] { def f(a:A,b:B) = a.xx + b.yy } 「戻りの型くらい書いとけ、ばかやろぅ」と言いたくなりましたね。それが普通の反応です。 class AAA[A <: XX, B <: YY] { def f(a:A,b:B):String = a.xx + b.yy } 戻り値の型がある場合と比べて見てください。コードの読みやすさが全く違います。このようにコーディングする際にほんのひと手間掛けるだけで、保守時のコストが大幅に削減出来ます。 保守のコストを