• ベストアンサー

最も重いプログラミング言語

Javaは重いと言われますが、Javaより重い言語はあるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • foxa-gogo
  • ベストアンサー率44% (38/85)
回答No.4

たまたまredditを読んでいたら記事が出ていたので: あるアルゴリズムを異なった言語で実装して計測した結果です。 http://scienceblogs.com/goodmath/2006/11/the_c_is_efficient_language_fa.php? * C: 0.8 seconds. * C++: 2.3 seconds. * OCaml: 0.6 seconds interpreted, 0.3 seconds fully compiled. * Java: 1 minute 20 seconds. * Python: over 5 minutes. About a year later, testing a new JIT for Java, the Java time was down to 0.7 seconds to run the code, plus about 1 second for the JVM to start up. JITの登場でJavaの実行時間が1.2分から0.7秒に減ったそうです。確かにC、C++に勝っていますね。Pythonは5分とかなり長いですね。

student_of_kit
質問者

お礼

どうもありがとうございました。

student_of_kit
質問者

補足

興味深いアドバイスをありがとうございます。Pythonが5分以上ということですが、Pythonはコードを記述しやすく、再利用性や可読性が高いということなのでしょうか。検討してみます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

回答No.3

こんにちは。 全ての言語にあてはまるわけではありませんが、質問者様が 言っておられるような内容であると、 最近登場しているような高級言語はみな処理が重いのではないでしょうか。というか、どの言語も得意分野不得意分野があります。で、処理 の重さは、言語の実行エンジンを動作させるハードウェアとも深く関係していますので、どの言語が一番処理が重いとは、正直なところ言えないと思います。よく、Javaに比べたら.NETは軽快という人もいますし、 その逆のことを言う人もいます。そして、どの言語も、処理効率が少しでもよくなるように改良は絶えず続けられています。視点を変えますと、確かに、実装の仕方云々を度外視して、処理効率だけに関していうと、やはり、C言語あたりが一番処理効率が高いと思います。ですが、 生産性の高さも重要となると、C言語が一番よいとは必ずしも言えません。むしろ、Javaや.NETの方が、C言語よりは問題にならない程度で処理効率は低くなるが、生産性は断然高い方を選択するケース があるからです。

student_of_kit
質問者

お礼

ありがとうございました。

student_of_kit
質問者

補足

回答ありがとうございます。生産性の高さについても議論してゆきたいと思います。

全文を見る
すると、全ての回答が全文表示されます。
  • foxa-gogo
  • ベストアンサー率44% (38/85)
回答No.2

PHP, Python, Rubyなどのコンパイルされない言語は基本Javaより遅いと思います。JavaでPython実装したJythonなんかはより遅いかも。。。 (ベンチマークありました: http://blog.dhananjaynene.com/2008/07/performance-comparison-c-java-python-ruby-jython-jruby-groovy/ ) Javaは、昔から遅いと言われてきましたが、hotspotテクノロジがでた辺りからかなり速くなってきていて、Cに迫るか、Cより速いと主張する人もいます(僕は経験が少ないんであまりよく分かりませんが。。。) 今後は実行時の情報からコンパイラが動的に最適化を繰り返しながらコンパイルを随時行う方式が主流となり(JIT)、pythonなどの動的言語もいずれはC、アセンブリなどの実行速度を上回るだろうという内容のプレゼンを数年前にグーグルのエンジニアがStanfordかどっかでしていました。

student_of_kit
質問者

お礼

ご回答ありがとうございます。リンクを覗いてみました。Pythonは遅いと評価されていますが、コード量は圧倒的に少ないですね。また、Cは高速ですが、可読性が非常に悪く、掲載されているコードを読む気にはなれませんでした。Javaは高速化されているとおっしゃっていますが、オブジェクト指向独特の、メンバ関数の宣言に要する行数が多く、個人で数値計算等を行うときは生産性が大きく下がるような気がします。

全文を見る
すると、全ての回答が全文表示されます。
回答No.1

はじめまして。 実質、それはプログラマの実装の 仕方が一番影響しているような気がします。言い方を変えますと、 たとえC言語であっても実装がへたくそであると、 相当重いアプリケーションになります。つまり、重い軽いは プログラマの腕次第であると思います。センスのない人が実装すると、 どのような言語であっても処理が重いです。

student_of_kit
質問者

お礼

お返事ありがとうございます。質問の意図としては、重いが生産性の高い言語を知りたかったのです。

student_of_kit
質問者

補足

なるほど。では高級であるがゆえに重くなりがちな言語はあるのでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • プログラミングをするならどの言語

    こんにちは宜しくお願いします。 40歳近い私は、BASIC等でプログラムを組んだ世代ですが 最近新しいプログラミング言語を覚えようと思っております。 用途にもよると思いますが、お勧めのプログラミング言語が ありましたら、教えてください。 自分では、JAVAとかC++とかなのかなと思っています よろしくお願いします

  • プログラミング言語の質問です

    プログラミング言語の質問です プログラミング言語を今から勉強しようと思います。 そこで、オブジェクト指向の言語として(というより、今の社会で役立つ言語として)習うべきなのはどの言語でしょうか? 私は候補として、javaとC++を知っていますが、どう違うのかは分かりません。 どちらもCからの派生みたいなことは知っています。 そこで、javaとC++を比較して (1)どう違うのでしょうか?(できることの違い) (2)どちらの方がより優れていると思いますか? 今のところjavaとC++を考えていますが、他の言語の方が良いなら教えてください。 その他、プログラミング言語に関して知っておいたほうが良いことがあれば、 ぜひ教えてください。 回答よろしくお願いします。

  • プログラミング言語の質問です。

    プログラミング言語の質問です。 プログラミング言語を今から勉強しようと思います。 そこで、オブジェクト指向の言語として(というより、今の社会で役立つ言語として)習うべきなのはどの言語でしょうか? 私は候補として、javaとC++を知っていますが、どう違うのかは分かりません。 どちらもCからの派生みたいなことは知っています。 そこで、javaとC++を比較して (1)どう違うのでしょうか?(できることの違い) (2)どちらの方がより優れていると思いますか? 今のところjavaとC++を考えていますが、他の言語の方が良いなら教えてください。 その他、プログラミング言語に関して知っておいたほうが良いことがあれば、 ぜひ教えてください。 回答よろしくお願いします。

  • 新言語プログラミング2005?

    以前にC/C++言語・Javaプログラミングを勉強したことがあるのですが、今は違う業界にいて、最近では何のプログラミングが最新なのか分かりません。 「これから」という新言語プログラミングを、誰か知っていたら教えてください。 ちなみに、C言語とJavaの検定・2級を持ってます。

  • プログラミング言語

     プログラムの言語にはそれぞれ得意分野があるようなのですが、例えば家庭用のゲーム等は、何の言語を使って製作しているのですか?特に決まっていないのでしょうか。。。いや、気になっただけなんですけど。PC上のアプリケーションは、javaやC++などでしょうけれど。。。どなたか各言語の実用的な使い道を説明してくださる方、この初心者めに是非ともご教授くださいませ。よろしくお願いします。

  • プログラミング言語の選び方を・・・

    はじめまして、言語の選択で非常に悩んでいます。 主にWEB用として勉強していきたいと思っています。 今は、教えて!gooのような感じの動的ホームページを作成したいと思っています。 そこで言語なのですが、思いつくとこで、PHP・ASP・JSPあたりじゃないかとおもっています。 最近ASPってはやってるような気がしますが、次のステップにつながりますか?(CやJAVA) JSPはJSPやJAVAサーブレットなど比較的JAVAに近いかもしれないのですが初心者にしてはハードルが高い・・・ よって今後JAVAやXMLをやるにもしてもPHPからはじめると後に続くし比較的覚えやすいと聞いたことがあります。 というわけで PHPからはじめればいいのでしょうか?他に何かいい順番や入り方ありますか?後にC・JAVA・JavaScript・VB・ActionScriptなど、ちょっと手を出しすぎだと思うのですがよろしくお願いします。 もし、それは覚えなくていいよやこっちのほうがなどありましたら、その点にかんしてもアドバイスをお願いします。 なんかややこしくなってすみません。

  • プログラミング言語はどれから学ぶ?

    今年職業訓練校に通う者です。 訓練校ではCとJavaを学びます。 それ以外にも学んでおくとよい言語はどれでしょうか? 回答よろしくお願いします。

  • プログラミング言語についてです。

    私はプログラミング言語を勉強しようとしていますが、cかjavaをしようとしてます。 最終的にはどちらもできるよう努力しますが、どちらからしたらいいのでしょうか? それと、cとjavaって似たようなとこってありますか? 教えてください。

  • プログラミング言語、何をしてよいやら...

    余りにも雲をつかむような質問ですみません。 最近、プログラム言語を勉強したいと思うのですが、何の言語を勉強すれば良いのか迷ってます。 Java、PHP、Peal、VB....いろいろ有り過ぎて。 それぞれに良い所が有るし、悪い部分もあるだろうし...。 無難なところでVisualBasicでもいいかな~と漠然と考えてます。 「何をしたい(作りたい)のかで、違います」と言う様な答えになってしまいますでしょうか? 昔(10年以上前ですが)BASICでゲーム作った程度の私にオススメの言語を教えてください。

  • オススメのプログラミング言語

    以下の中で将来性が高く、面白い言語はどれですか? 参考にさせていただきたいので簡単な理由もお願いします。 1.C言語 2.PHP 3.Java 4.Java Script 5.Ruby 6.Swift 7.Python

大学の勉強方法について
このQ&Aのポイント
  • 大学生の試験対策や勉強方法についての質問です。
  • 友人もおらず、親しい先輩もいないため、過去問の入手方法にも悩んでいます。
  • 授業の受け方や復習方法、試験対策のコツ、大学の授業を活かす方法について教えてほしいです。
回答を見る