IQ49

IT業界の感想

Java神話

2017年にもなるというのに、自社製フレームワークJavaで開発しやがって何考えてるんだと思ったら「Javaが一番メジャーでみんな嬉しいよね」とのことです。 もういいかげんにしろと、俺はJavaでプログラミングしても他の言語ほど楽しくないんだよ。

Javaは00年台は強かった。なんでもできて、Javaが使えれば職にあぶれることはないと言われていた。しかし時代は変わるんだ。Javaだけしか使えないプログラマはもう必要ないんだ。

Javaへの依存心は、かつての土地神話と言われていた状況と似ている。バブル時代には土地の価格が下がらないことを前提とした貸付が頻繁に行われていた。土地の値段は上がり続け絶対に下がらないものだと銀行は思っていた。もちろんバブル崩壊でそんな期待はあっさりと裏切られるわけだが。 Javaだけを使ってる奴らは"俺らは最もスタンダードな言語で王道を征く"とでも勘違いしてるんじゃないかというような節がある。そしてJavaの価値が永遠であると勘違いし他の言語を悪いものと決めつけているんじゃないだろうか。Javaが主流じゃなくなる時代はくる。まあ職にあぶれる心配はなくて、そのときは(例えば)Kotlin上でJavaみたいなコードが書かれるだけだが。

Java教徒の根深い問題はJavaに関係ないところでもその力を発揮するところにある。Javaベースの古臭い知識で邪魔をしてくるのだ。 なんというか冗長で読みにくいコードを書く。冗長でないにしても、継承が必要ないのに継承を多用したり、メソッドの定義になんでもかんでもインタフェースを用いたりと好き勝手する。 彼らに言わせるとオブジェクト思考がわからないとインタフェースの良さはわからないらしい。 俺は"オブジェクト指向"といものがなんなのかさっぱりわからないので普段から「オブジェクト指向って難しいですよね、さっぱりわかんないです」と正直に告白している。

Java8とかでJava9でそこそこモダンになるじゃないかという意見もあると思うが、不思議なことにJavaしか使えないプログラマの多くStreamAPIを理解できていない。他の言語も理解しているものは使いこなしている。

ただこのJava神話を利用してプロジェクトを成功に導く方法がある。Java以外の言語でプロジェクトを計画するのだ。今だとKotlinとかScalaが候補に挙がるだろう。 Javaで募集すると能力が低くて、やる気がなくて、上から目線のものがやってくる。Kotlinで募集すると少なくともやる気があるものが集まる。 Javaしか使えない無能を他のプロジェクトに押し付けて、自らのプロジェクト守護れるのだ。