それを手に入れたくなった時に、全てを手元に置こうとするのがJava

プログラミング言語foobarの生産性の高さはどこまで本当か

それを手に入れたくなった時に、それが手元にある事
それを手に入れたくなった時に、全てを手元に置こうとするのがJavaTomcatなどのWebコンテナしかり、JSFしかり、Hibernateしかり、コネクションプールしかり。

本来であれば、WebコンテナがWebシステムのフロントエンドとなれば、余計なWebサーバなど不要な筈なのだけども、多くの開発プロジェクトでApacheTomcatの両方をチューニングするハメになっているのはどういうことなんだろう。 mod_servlet とか全く普及しないし。 アーキテクチャの発想がまるで異なるので仕方ない部分もあるだろうけど、「アレも欲しいコレも欲しい」と「全て手元に置きたがる」性癖の表れの気がするよ。 (多少非効率な仕組みを作っても商売が成立する程、市場が広がったからかもしれない)

しかし、最近では「欲しいもの」に「手が届く」ためには、「両手が必要」、すなわち一つの言語では充分ではないことが多くなってきた。例えばAJAX。クライアント側はもちろんJSで書かれるが、サーバー側も書いてはじめて「手が届いた」ことになる。

メインフレーム的な・・・DBとの接続部分からHTMLまで一つの言語体系でコントロールするという呪縛から逃れ得ないのがJava(というかそれを必要とする現場の文化)なのかなぁ、と。 つーか、そういった現場では、言語による支配、管理が十分に作用することを是としているので、かつてはJavaScriptなど第二の言語を使うことは「必要悪」としての扱いでしかなかったと思います。 (ってか、傭兵のかき集めになることが多い開発現場で2言語習得という条件はすごくリスキーじゃない?)

汎用的であるが為にプリミティブなコーディング・・・LL系言語であればワンコードで済むような処理が何十行にも渡るというよくあるアレ・・・を要求されるのだと思うけど、Eclipseなんてものはそういった進化の果てに登場したものなのだろうなぁ。

ってかね、LL一筋の人がもしいるのであれば、Eclipse+JavaとかVisualStudio+C# とかに触れてみることをお勧めする。 よかれ悪かれ、テキストベースのエディタ等とは全く異なるプログラミング体験がそこにはあるから。

いやプログラミング体験じゃないな・・・。 例えば、仮想関数を実装クラスにオーバライドする為に、GUIで選択するのってそれってプログラミングか?とか。