• 締切済み

C言語とJava言語について

C言語とJava言語で作成されたソフトウェアの違いについて教えてください。

  • Java
  • 回答数2
  • ありがとう数4

みんなの回答

回答No.2

C言語はネイティブアプリが作れる。 Javaは基本的にはJavaVM(仮想マシン)上で動く中間コンパイルされた物になる。 ただし基本的と言うことで応用的というかJavaもネイティブコンパイルしてネイティブコードを生成する事ができるgcjと言うコンパイラが存在する。 WebサーバサイドのシステムとしてC言語は初期の頃には一部使われていたが今はその部分にJavaに取って代わられている。(JSP/Java Servlet) C言語はメモリ管理も自分でやる必要があるので下手なプログラマが作ったプログラムは無駄にメインメモリを消費し続けるだけのアプリになる。それによってセキュリティーホールになったりクラッシュしたりするアプリになる。 それに対してJavaはガベージコレクションに対応しているので基本的には自分でメモリの管理をする必要がない。

tatsuo2
質問者

お礼

ありがとうございます。

回答No.1

C言語とJava言語には実行される環境に違いがあります。 C言語は、コンパイルされた実行ファイルがOS上で実行されるのに対して Java言語は、仮想マシンを介して実行されます。 仮想マシンを介するメリットとしては、OS(Windows、Linux等)の違いを仮想マシン上で補完してくれる為移植性が高いです。 逆にC言語で作成されたソフトウェアはOS上で直接実行される為、移植性が低くなりがちです。 しかし、その分実行スピードが速かったり、OS固有の操作をやりやすかったりします。 主な活用範囲としては、 C言語は、自動車の制御やゲーム作成などによく使われています。 Java言語は、業務アプリの作成等によく使われています。 ですがもちろん、Javaでゲームを作ることだってできますし、C言語で業務アプリを作成することももちろん出来ます。

tatsuo2
質問者

お礼

ありがとうございます。

関連するQ&A

  • C言語とJAVA言語について

    一通りC言語を学習したのちで、最近JAVA言語をかじり始めたのですが、C言語とJAVA言語の違いが今一つ分かりません。違いをできるだけ多く、JAVA言語初心者である私に分かるレベルで教えてもらえないでしょうか。よろしくお願いいたします。

    • ベストアンサー
    • Java
  • C言語とJavaの違い

    C言語とJavaの違いの1つとして間違えていたら教えて下さい。 「C言語はコンパイル時に環境に応じて異なるモジュールが作成される危険性がでる場合があるのに対して、JavaはJavaVMという処理系でプラットフォームの違いを吸収されるので、JavaVMが搭載されていればどの環境でもJavaプログラムは動かすことができるでよいのでしょうか?」

    • ベストアンサー
    • Java
  • C言語とJava

    C言語とJavaのそれぞれについて長所、短所を教えて下さい。

    • ベストアンサー
    • Java
  • これからの重要な役割を果たす言語はCかJavaか・・・・

    はじめまして。 今現在、基礎的なものはC,Java共に学びました。 大学の研究室を選択する上で、これから先、Cを優先すべきかJavaを優先すべきかで研究室が分かれてしまうので、どちらを選ぶべきか悩んでおります。 できれば今現在企業で活躍されている方、もしくはそのような経験がある方に意見を聞きたいのですが、ソフトウェアを作成する上で使用するプログラミング言語の中でCかJavaを選ぶ場合、どちらを優先的に学べばよいでしょうか?

  • ゲーム作りたいがC言語かJAVAか迷う。

    私は将来、ゲーム・デザイナーになりたくて、プログラミングの勉強をしたいと思っています。それに向けて、学習するべき言語というのはCなのかJAVAなのかでまよっているのです。よくプログラミング言語など似たようなところがあり、ひとつの言語を身につければ他の言語も身につきやすいともいいますが、なるべく効率的に学んでいきたいですし、一番使用されることの多い言語を選びたいです。私が作りたいのは携帯電話用の比較的簡単なゲームでなく、ある程度大掛かりなというか、本格的なゲームを開発してみたいという思いがあります。これは特殊な例かもしれませんが、例えばコンピュータ将棋のプログラムなどではほとんどC、C++で開発されています。JAVAなどで作成されたソフトは見かけませんでした。やはり、JAVAの利点もあるでしょうが、結局、一番普遍的なというか、汎用性のあるプログラミング言語としてはC言語を選択するのが最良の策かなと考えています。これは妥当な筋道なのかとお尋ねしたく質問させていただきました。

  • C言語・Java・Visual Basic…教えてください。

    こんにちは。大学2年の女です。情報系の学校です。 授業の履修登録で困っています。 私は1年のときに必修科目でC言語基礎を習いました。 今年は、C言語中級・Java基礎・Visual Basic基礎のどれか(全部履修することも出来ます) を履修することになっているのですが、どれを履修するか決められません。 3つの違いがさっぱりわからないのです。 調べてみても、「…????」というかんじでわかりませんでした。 パソコン歴はまだ浅く、専門用語なども詳しくないのです。 素人のわたしにもわかるように、3つの主な違いを、どなたか教えていただけませんか? よろしくお願いいたします。  

  • Cとjavaの違い

    学校でC言語プログラミングを学んでおり,新たにjavaも習うことになったのですが, C言語とjava言語の違いはどのような所なのでしょうか? java言語は「オブジェクト指向」ですが,C言語は何指向なのでしょうか? よろしくお願いします。

    • ベストアンサー
    • Java
  • CとJavaの違い

    ずばりC言語とJavaの違いってあるのですかね? 両者とも言語的に似ているし、違う点といえば Javaにポインタがないことぐらいですかね?

  • c言語とJAVAの関係性を教えてください。

    聞いた話ですがc言語の発展系がJAVAと聞いたのですが、ということはC言語から入ればJAVAに移りやすいですか? 文体も似てると聞きました。 自分なりに調べてみたのですがあまり納得できませんでした。 無知ですがおしえてください。

  • C++とJava

    オブジェクト指向を採用しているC++とJava。オブジェクト指向プログラミングに関連している部分で、二つの言語の大まかな違いは何でしょうか。

専門家に質問してみよう