2014-05-22

またrebuild.fmJavaの悪口で盛り上がってたよ

http://rebuild.fm/44/

 Androidアプリ作ろうとしてJavaプログラマ募集したらクズしかこなかった全部クズだったとか、ひどくありません?

 まあそれは置いといて、UIみたいに最初から仕様を決められなくて何度も作り直すようなコードJavaは不向きみたいな話もまったく同意できないわ。

JavaじゃなくてC#だけど、昨日コードを書いていて

string url = "http://www…";

のように、URL文字列で持っていたけど、やっぱアドレス用のクラスでもったほうが安心だなって思って

URI url = new URI("http://www…");

と書き直しました。

当然、このurlを参照しているところは全部エラーになります

Javaをはじめとする静的型の言語をけなしてる人たちは、これが面倒だと思うんでしょうか。

逆にエラーの出ている箇所を片っ端から直してエラーが無くなれば、修正漏れなしの証拠からめちゃくちゃ安心できます

JavascriptやらRubyでこういうことをしたら、人間が目を皿のようにして全部チェックしないといけないわけでしょ。

どう考えても変更の多いコードこそ動的型の言語は不向きだと思われますが。

 こういう話をすると、エディタ検索でどうこうって反論がくると思いますけど、あれは言語理解しないでテキストマッチしてるだけでしょ。

たとえば func($url); と他のサブルーチンに渡して、

function func($address) {} みたいに受け取って、そこから先は文字列として扱ってるコードがあっても探しきれませんよね。

静的型の言語なら、void func(string address) {} を void func(URI address) {}と修正したら修正漏れの箇所があってもエラーが伝播して言って、すぐ分かります

 OracleGoogle裁判がらみで「Java終了よかったよかった」みたいな話の流れで、AndroidアプリJavascriptで作ればいいって盛り上がってたけど、そうなったらIDEサポートが大幅になくなる原始的環境に逆戻りでしょ。

勘弁して欲しい。

ほんとうに動的型の言語はめんどくさい。

トラックバック - http://anond.hatelabo.jp/20140522162254