コンパイラ言語とスクリプト言語【違いを解説】

※この記事は「2021年3月3日」に更新しました。

コンパイラ言語とスクリプト言語について。

プログラミングを学習したことがある方なら、一度は聞いたことがあるキーワードではないでしょうか。

今回は、それぞれの違いを解説していきます。

コンパイラ言語とスクリプト言語

コンパイラ言語とスクリプト言語

コンパイラ言語とスクリプト言語について。

まずは、それぞれの特徴を紹介していきます。



コンパイラ言語とは

コンパイラ言語とは、コンパイルという機械語に翻訳する作業が必要なプログラミング言語です。

人間が書いたプログラミング言語をコンパイルして機械語に翻訳して、リンクという作業が終わると実行ファイルが作成されます。

プログラミング言語の中では、歴史があり、基礎的な言語とされています。

以下のような言語が有名です。

  • C言語
  • Java
  • C++
  • C#

コンパイラ言語には、以下のような特徴があります。

  • 処理速度が早い
  • 修正がむずかしい
  • 手軽に開発ができない

順番に解説していきます。

処理速度が早い

コンパイラ言語は、スクリプト言語と比較して処理速度が早いです。

元々、スクリプト言語は、ちいさなプログラムという意味もあります。

最近は、スクリプト言語もかなり進化していますが、それでも処理速度はコンパイラ言語の方が早いです。

なぜなら、予め機械語に翻訳されているものを実行するからです。

負荷のかかる計算で比較してみると違いが理解できます。

修正がむずかしい

コンパイラ言語は、コンパイルとリンクが終わって、実行ファイルが作成されます。

文法ミスがあるとコンパイルエラーになり、実行することはできません。

スクリプト言語のように、動かしながら修正するといったことができない言語です。

手軽に開発ができない

コンパイラ言語は、スクリプト言語よりも開発環境を整えるのがむずかしいものが多いです。

開発したいものがあるとなると必要な環境を構築する段階で手間がかかることも珍しくありません。

スクリプト言語とは

スクリプト言語とは、人間が習得しやすいように工夫されたプログラミング言語です。

開発環境を構築するのが簡単なものが多く、初心者にもやさしい言語です。

以下のような言語が有名です。

  • JavaScript
  • PHP
  • Python
  • Ruby

スクリプト言語には、以下のような特徴があります。

  • 処理速度が遅い
  • 修正が簡単
  • 初心者にやさしい

実行速度が遅い

スクリプト言語は、コンパイラ言語と比較して実行速度が遅いです。

なぜなら、実行するときに翻訳を行っているので、その分時間がかかるわけです。

修正が簡単

スクリプト言語は、コンパイラ言語と比較して修正が簡単です。

意図した動作をするかはともかく、簡単にトライアンドエラーを繰り返すことができます。

初心者にやさしい

スクリプト言語は、開発環境を構築するのが簡単な場合がほとんどです。

すぐに開発することができるので、初心者にやさしい言語です。

違いは機械向けか人間向けか

コンパイラ言語とスクリプト言語の違いは、機械向けか人間向けかということです。

コンパイラ言語は、機械にやさしい言語です。

予め機械に最適化された実行ファイルを扱うからです。

コンピュータは、機械語しか理解できません。

ソースファイルを解釈しながら実行するスクリプト言語はコンピュータにとっては、負荷がかかります。

しかし、スクリプト言語は、人間にやさしい言語です。

簡単な文法で構成されていて、人間にとってはわかりやすく、習得もコンパイラ言語よりもやさしいものが多いです。

最近は、プログラミングを学習する方も多く、スクリプト言語から始めるという方が多いです。

最後に【コンパイラ言語とスクリプト言語の違い】

いかがでしょうか。

コンパイラ言語とスクリプト言語の違いを解説しました。

どちらの方が優れているという話ではなく、それぞれ一長一短があります。

例えば、フレームワークやライブラリが充実していて、開発効率が良いということでスクリプト言語を選ぶこともあるでしょう。

しかし、主要な処理はどうしても負荷がかかるため、実行速度が必要になるとなれば、コンパイラ言語を選ぶこともあるでしょう。

色々な言語を触れて、違いを理解した上で、最適な言語を選ぶのが、今後求められているプログラマーだと思います。