スクリプト言語とは?インタプリタ型言語との違いは?
プログラミング言語の特徴を表す言葉として、
- 静的型付け-動的型付け
- コンパイラ型-インタプリタ型
- 手続き型-オブジェクト指向-関数型
などいろいろな言葉がありますが、今回はその中でも「スクリプト言語」という言葉について解説します。
私は、いろんなサイトで「スクリプト言語」と「インタプリタ型言語」が同義で使われいることに疑問を持ったのでこの記事を書こうと思いました。
- スクリプト言語とはどんな意味?
- インタプリタ型言語とは何が違う?
- メリットやいいところは?
これらの疑問についてわかりやすく解説していきたいと思います。
スクリプト言語(Script language)とは?
いろいろなWebサイトで違った解釈をされているようですが、こちらでは根本の定義と解釈について書いていきます。
根本的なスクリプト言語の定義
スクリプト(Script)とは日本語だと「台本」や「原稿」を意味します。
一般的に、スクリプト言語(Script language)とは台本や原稿のようにプログラムを記述できるようなプログラミング言語を指します。
それが転じて、スクリプト言語とは、英語のような感覚で読みやすいプログラミング言語、さらには比較的簡単にプログラムを記述できるプログラミング言語の総称という意味でとらえられるようになりました。
しかし、厳密な定義はありません。
とても抽象的な定義だからこそ気を付けてほしい
比較的簡単にというのは、スクリプト言語でないほかのプログラミング言語に比べて、ソースコードの構文や修正・実行などが簡単という意味です。
しかし、厳密な定義は存在せず、非常に抽象的な定義です。
そのため誤解や拡大解釈があるのでしょう。
安易に解釈してしまえば、スクリプト言語とは簡単なプログラミング言語全般ということもできます。
しかしこれだけだと何が簡単なのかわからないためあまりよろしくないですね。
プログラムを書くことや動作を確認することが簡単なのであって、誰でも簡単にプログラミングできちゃうのとは少しニュアンスが違います。
誤解されやすいインタプリタ型言語との定義の違い
よくインタプリタ型言語の意味でスクリプト言語という言葉が使われているのを目にします。
実際には同義ではありませんので違いを見てみましょう。
インタプリタ型言語
人間が理解しやすい言葉で書かれたプログラム(ソースコード)を、コンピュータが直接的に実行できるコード(機械語)に逐次翻訳しながらプログラムを実行していくプログラミング言語です。
よくコンパイラ型言語と比較されます。
こちらにインタプリタ型言語とコンパイラ型言語の詳しい解説がありますので是非お読みください。
スクリプト言語とインタプリタ型言語の違い
スクリプト言語とは台本や原稿のようにプログラムを記述できるようなプログラミング言語、転じて比較的簡単にプログラムを記述できるプログラミング言語の総称のことを言います。
スクリプト言語とインタプリタ型言語は全くの別の定義です。
スクリプト言語は言語の仕様全般の話であり、インタプリタ型言語は「プログラムの実行型」一点においての話です。
しかし、よく間違って使われるのには理由があります。
その理由は、スクリプト言語の大多数がインタプリタ型言語だからです。
インタプリタ型というのはソースコードを一行一行機械語に翻訳しながらプログラムを実行できるという、とても便利な言語仕様です。
そして、スクリプト言語はこのインタプリタ型をとっているものが大半なので、スクリプト言語=インタプリタ型言語と勘違いしてしまう方が多いのです。
いろんなサイトで同義として使われていますが、厳密には間違いです。
また、インタプリタ型言語はプログラムの実行方法からほとんど判断がつくものですが、スクリプト言語は何を基準にそう呼ぶかというのも非常に曖昧です。
スクリプト言語のメリットいいところ
基本的にインタプリタ方式をとっているので、インタプリタ型言語のメリットが大きいです。
また、第三者が見てもプログラムの記述がとてもわかりやすいという点が加えていいところでしょうか。
プログラムをただちに実行できる
スクリプト言語のほとんどはインタプリタ型の実行方法をとっているため、ソースコードを一行一行すぐに実行できます。これにより、プログラムが正しく実行できるかすぐに見ることができ、開発がスムーズになります。
可読性が高い
スクリプト言語は英語の台本のような書き方なので、非常に可読性が高いです。
可読性が高いとは、誰でも読みやすい、どんなプログラムをどうやって書いているのかわかりやすいということです。
これは、第三者もしくは後から見返した自分自身であっても、プログラムの確認・修正が行いやすいという大きなメリットを生みます。
スクリプト言語の代表例
人気のスクリプト言語と呼ばれているものにはなどがあげられます。
もちろんほかにもいろいろあります。
またこれらはすべてインタプリタ型言語でもあるので注意が必要です。
Python
世界的に大人気のAIに強い言語です。
JavaScript
HTML、CSSとともにWebサイト開発に欠かせないオブジェクト指向のスクリプト言語です。
投稿が見つかりません。PHP
HTMLやCSSと一緒によく使われる、人気の高いオープンソースの汎用スクリプト言語です。
投稿が見つかりません。最後に
スクリプト言語とは、よくインタプリタ型言語と間違いやすい単語です。
その理由がわかっていただけたでしょうか。
いまはほとんど混合して使っているように思うのですがどうなんでしょうか?
ただこれを覚えたからといって、プログラミングできなければ意味がないんですけどね。
この記事はこれからプログラミングを学ぼうとしている方、新しい言語に手を出そうとしている方に向けて、言語の特徴でよく使われる「スクリプト言語」というワードを解説するために書きました。
以下はこの記事を読んでくださった方におすすめの記事です。
以上「スクリプト言語とは?インタプリタ型言語との違いは?」でした。