• 締切済み

JavaScriptとC言語の違いについて教えてください

大学の授業でC言語かJavaScriptのどちらかを選んで学ぶ授業をとるのですが、この二つの言語の違いについて教えていただけないでしょうか? 初めてプログラミングをするのでよければ解りやすく教えていただけるとありがたいです。

みんなの回答

  • BLK314
  • ベストアンサー率55% (84/152)
回答No.2

まず、コンピュータ言語のおさらいからです。 コンピュータは基本的に数値しか理解できません。 命令も各命令に割り振られたコード番号で与えます。 よって、このコード番号一覧さえわかれば プログラミングできます。これを機械語とかマシン語とか呼びます。 マシン語はCPUにとってはわかりやすくても 人間にとっては単なる数値の羅列に過ぎず 大変分かりにくいです。 そこで、もう少し、人間にわかりやすくプログラムが作れないかと 考えられ、いろんなコンピュータ言語が登場しました。 C言語もJavaScriptもそんな言語の一つです。 先ほど、コンピュータが理解できるのはマシン語だけと申しました。 C言語もJavaScriptもそのままではコンピュータが理解できません。 マシン語に翻訳しなければなりません。 この翻訳の仕方で大きく2つに別れます A)全体を一気に翻訳してしまう方法   ”コンパイラ型"と呼ばれます。   全体を翻訳するためには、それなりの時間がかかります。   プログラム全体の構成を検査してから、翻訳できるため、   成果となるマシン語の出来がよく、高性能なプログラムが作れます。 B)少しずつ(必要に応じて)翻訳する方法   "インタープリタ型"と呼ばれます。   必要な最小限の翻訳しか行わないので、すぐに動かすことができます。   簡単にプログラムを作成しては試験し、修正しということが可能なので、   生産性が高いといわれます。   JavaScriptはこちらです。   プログラム全体を見渡しての翻訳とかが不可能なため、   できるマシン語に無駄が多かったりします。   そのため、出来上がったプログラムの質ではコンパイラ型に劣る傾向に   あります。 このような特徴があるので C言語は独立したプログラム(ネィティブ)を作るのによく用いられます。 また、PCや各種ゲームなどのSDK(要するにプログラムを作るための 道具箱)もC言語用が多いのも特徴です。 JavaScriptはブラウザと合わせて用いるWeb系でよく採用されています。 もともとブラウザ自体がHTMLを少しDLしては表示、またDLしては 表示を繰り返すものです。 少しマシン語に翻訳しては実行を繰り返す インタープリタと相性が良いのです。 ここまで言っといてなんですが 厳密には言語とコンパイラ/インタプリタとは別の概念です。 C言語のインタプリタも考えられます。 しかし、上記のような利用方法が定着してしまったので C言語のインタープリタなどはあまり使われていません。 要はどんなことがやりたいかで言語が違ってくると思います。 Web系を考えているのならJavaScript そうでないネィティブなプログラミングならC言語 そうなると思います。

  • Ajedony
  • ベストアンサー率50% (1/2)
回答No.1

861130さんが、情報系の学生であるならCを、そうでないならJavaScriptをお勧めします。 C言語は現在の主流言語に多くの影響を与えた、古くて重要な言語です。 JavaScriptは主にブラウザ上で動的な処理を行うために用いられる、Cに比べると新しい言語です。 C言語で書いたプログラムを実行するには、コンパイラというプログラムをパソコンにインストールする必要がありますが、 JavaScriptで書かれたプログラムはブラウザさえあれば(すなわち、質問をしている現時点で)実行することができます。 大学だけでなく自宅でも学習をしたい場合は、JavaScriptの方が簡単に始められるでしょう。 一方で、C言語はコンピュータの頭脳に相当するCPUに近い処理を記述することになるため、 コンピュータの仕組みを理解することが必要となります。 JavaScriptでは、コンピュータの仕組み云々をあまり気にすることなくプログラムを書くことができます。 情報系の学生であるなら、ぜひC言語を習ってコンピュータの仕組みについて学んでいただきたいと思います。 とにかくプログラムが書きたい、単位が欲しいという場合は、JavaScriptをお勧めします。

関連するQ&A