• 締切済み

JavaとC++の生産性の違い

早くプログラムを完成させるという点ではJavaに軍配が上がると思いますが、JavaとC++の両方に熟知している場合、 何倍ぐらい生産性に違いがでますか?

みんなの回答

  • MrBan
  • ベストアンサー率53% (331/615)
回答No.3

条件設定次第で何倍にでも、逆に何分の一にでもなります。 用途目的が異なる可能性が高く、通常は直接比較してもあまりうれしくないデータでしょう。 # 例えるなら「乗用車とF1カーの乗車定員が何倍違うか」の比較とでもいうか。 Java VMのない環境、速度や資源の点で動かない/話にならない開発も多々あります。 逆に、組込JavaなどでC++のネイティブコードが許されない開発もあります。 両方が動く環境においても、 確かに速度や時間、資源などに何ら要求がないなら大抵はJavaの方が早いと思いますが、 例えば速度やメモリ等に大きな制約があったりすると、 そもそもJavaで動くようにする方が面倒かも知れず、C++の方が早くなることもあるでしょう。 それはそれとして、「とりあえず動く」レベルでのJavaとC++の生産性という意味では、 「標準ライブラリの提供機能範囲の違い」が大きいと感じます。 Javaで言語標準外のフレームワークを駆使し、 C++でも同様にサードパーティのライブラリを駆使していいのならば、 「既に両言語を熟知してる人(※)」の生産性は大差ないのかもしれません。 (Javaより面倒な部分もある一方で、汚くても動けばいいならC譲りの無茶もできますし) ※言語/ライブラリ/フレームワークを含めた「熟知する」までの学習コストは既に償却済前提なのでここでは考慮外。

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.2

Javaの得意分野に限ればJavaの方が生産性が高いといえます。 一方、C++の得意分野に限れば、Javaは開発言語の候補にすら挙らない可能性があります。 なお、Javaの得意分野であっても、そのうちのかなりの部分はPHPのような他の言語の方が圧倒的に生産性が高いことがあります。 Javaしか選択肢がない分野もいくらかありますので、それらについては、C++やPHPなどはどうすることもできません。

回答No.1

あまり違いがあるとは思えない。 というよりも、 それぞれ得手/不得手があり、開発環境や実行環境による違いも発生するのに、 それを考慮(比較要因)とせずに「生産性」とだけ考えることが前提として間違っている気がする。

関連するQ&A