Javaでプログラムを書いていて気持ち悪いなと思うところは主語が一貫していないところです。Javaの文法でなくて慣例の問題です。
object.getValue();
というメソッドがあったとしてこの"get"の主語は何ですか?value
を得るのはこのメソッドの呼び出し元のクラスだから、object
は主語ではありません。
object.isAvailable();
というメソッドがあったら、available
なのは誰ですか?object
でしょう。
System.out.println("Hello world");
で文字列をプリントするのは誰ですか?System
ですか?this
ですか?それともコードの書き手ですか?明らかではありません。
これが非常に気持ち悪い。どうにかしたいけど、既存のコードが主語に一貫性がないからどうしようもない。
こういうことを考えているプログラミング言語はないのか?あったとしたら普及させたい。