日曜プログラミング

休日趣味でやってるプログラミング関連記事をダラダラと

点々マクロ(..)と Java メソッドチェーン比較

tnoda さんが以前 このようなトピック
挙げられていて基本的に賛成で、ここでは補足として JavaClojure の書き方を並べてみる。

Java Clojure
table.getColumns().clear(); (.. table getColumns clear)
table.getColumns().add(firstNameCol); (.. table getColumns (add firstNameCol))

引数がない場合はそのまま続け、引数が続く場合はカッコで囲む、また単一メソッド呼び出しの . と異なり省略する必要がある、と言う点が違う点かな。-> のように結果を次の呼び出しの最初の引数とする点ではまさに似ている。

後者の引数を取る例だとぶっちゃけ長くなってしまうが、それでも Java メソッドチェーンである事が明確になってるメリットは崩れないと思う。