BitArts Blog

ロードバイク通勤のRubyプログラマで伊豆ダイバー。の個人的なブログ。

アクセサメソッド

Javaでいつもイヤだなー、と思っているのがアクセサの定義。原始的なゲッター&セッターメソッドを書くしかないんですよね。

private String name;
public String getName() { return name; }
public setName(String name) { this.name = name; }

アクセサはオブジェクト指向では超必須にもかかわらず、1つのプロパティを定義するだけで7行も書かなくてはいけない。よく「シンプルなPOJOです」とか言うけど(自分も言ってる)、こういうアクセサメソッドだらけだと、一般的にはかなり冗長感を感じてしまうところだと思う。JavaDocコメントも付けようとすると、もう大変。(もちろんほとんどのIDEではアクセサメソッドもJavaDocコメントもまとめて自動生成できるので「書くのが」大変ということではなくて)

Rubyだと超簡単です。

attr_accessor :name

もう忘れたけど、たしかDelphiでもかなり簡単に書けたはず。