[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends] Re: Javaの開発生産性について




えんどうです。

> (F)ヘッダファイルだけ書いて他のチームに提供し、後で結合する、
>   ということがやりにくくてしょうがないような気がするんですけ
>   ど(どうするんでしょう?

はい。
 interfaceだけ先に提供?)
これです。

> ・データ構造がメソッドの実装に埋もれてしまい、読みにくい(ま、
>   これはツールを使えば抽出できるだろうけど)。

XMLを使いましょう。

> ・Javaではオブジェクトについてはポインタしか扱えないので、デー
>   タの実体を保持する必要があるときと、ポインタを保持する必要
>   がある場合の区別が付かない(結果としてデータ構造が読み取り
>   にくい)。

よくわかりません。

> ・templateがないので、全てObjectにしなければならず、何を示す
>   型なのかわけがわからん。

interface を使いましょう。

> ・typedefがないので、intみたいな謎の型が散乱し、わけがわからん。
>   (ま、これはCでも、エラーチェックが入らないのでさほど効果は
>   ないけど、コメントやドキュメントに比べればだいぶマシ)

よくわかりません。

> もちろん、これは、比較する相手のC/C++のコードが、「理性を持っ
> て書かれた」場合に限ります。C/C++は、悪用のしがいのある言語
> なので、読みにくいコードはなんぼでも生産できます。

C++ の方が「ちゃんと書けてる」打率が悪そうな気がするんですが
気のせいでしょうか。

> が、ちゃんと書いたC/C++のコーディングに比べて、Javaのコーディ
> ングは「ちゃんと書いても」読みにくく(慣れの分をさっぴいても)、
> 故に、大規模プロジェクトにこういう言語を使うと保守ではまるぞ、
> と思うのは、私だけでしょうか?

C/C++ の方が Java より読みやすいと思ったことは一度も無いのですが、
人によって感じ方はいろいろなんですね。

> # もちろん、Javaでも、PerlやVBと比べれば、はるかに「マシ」な
> # んだろうと思いますけれども。

比較の対象が悪すぎ... 

> 「銀の弾丸はない」というブルックスの言葉を噛みしめる今日この
> ごろです。

それはそうなんですが、
ネットワーク・プログラミングや、スレッド・プログラミングなど
Java が強い分野というのはあります。

青木淳さんの本にも書いてあった言葉を使わせてもらうと、
言語も「目的」を達成するための「乗物」に過ぎないです。
「目的」の方が大事だと思います。

---
ENDO Yasuyuki <yasuyuki@xxxxxxxxxx>
http://www.javaopen.org/jfriends/index.html (Japanese Only)