【ぷろぐらみんぐげんご】

プログラミング言語 とは?

最終更新:
💡 処理を、決まったルールで書き表す言葉

プログラムの処理を、決まった文法と意味で表す言語。PythonやJavaScriptを例に、言語と実行環境、コンパイルとインタープリターの関係、学ぶ言語の選び方を解説します。

📌 このページのポイント
プログラミング言語:処理を書くルール言語:文法と意味のルール言語の仕様と、実行環境は別書いたコードPythonの例print('こんにちは')環境・道具コンパイル・解釈組み合わせる実装も環境で処理が動く:例「こんにちは」OS・ライブラリ・使える機能も関係
Pythonの表示処理を例に、コードを実行する関係を示します。全言語が同じ変換段階を通る図ではなく、作りたいもの・利用環境・学習資料に合わせて選びます。
ひよこ ひよこ
プログラミング言語は、全部覚える必要がある?
ペンギン先生 ペンギン先生
全部覚える必要はないよ。作りたいものに合わせて1つを選び、値を扱う、条件で処理を分ける、繰り返す、機能をまとめるといった基本を学ぶとよい。ほかの言語にも共通する考え方があるけれど、文法や仕組みは違うので確認が必要だ。
ひよこ ひよこ
PythonやJavaScriptは、何に使う?
ペンギン先生 ペンギン先生
Pythonは自動化、データの処理、Webサービスなどに使える汎用言語だよ。JavaScriptはブラウザーでページに動きを付けるほか、Node.jsなどの環境ではサーバー側にも使える。言語ごとに用途が一つだけ決まっているわけではないんだ。
ひよこ ひよこ
同じコードは、どこでもそのまま動く?
ペンギン先生 ペンギン先生
言語だけでなく、実行環境の版、使うライブラリ、OS、利用できる機能なども関係するよ。たとえばブラウザーにある画面操作の機能と、Node.jsで使う機能は同一ではない。同じJavaScriptでも、環境の違いを確認しよう。
ひよこ ひよこ
インタープリターは、文字を1行ずつ直接実行するの?
ペンギン先生 ペンギン先生
それだけでは説明しきれないよ。たとえばCPythonはコードをバイトコードにコンパイルして実行する。コンパイルと解釈は、実装の中で組み合わせられることもある。言語を二つの箱に完全に分けるより、使う実装がどう動くかを確かめよう。
ひよこ ひよこ
最初の言語は、速さの順位で選べばよい?
ペンギン先生 ペンギン先生
作りたいものに使えるか、動かせる環境があるか、学習資料や相談できる人がいるかを合わせて考えよう。速さは処理の書き方やライブラリ、実行環境にも左右される。一つのランキングだけで、学ぶ言語を決める必要はないよ。
もっと詳しく知りたい人へ

JavaとJavaScriptは、同じ言語の別名?

別の言語です。名前は似ていますが、仕様や型の扱い、実行環境などが異なります。JavaScriptの言語仕様はECMAScriptとして標準化され、ブラウザーの画面操作などの機能は言語仕様そのものとは区別されます。

ライブラリやフレームワークも、言語の一部?

通常は言語そのものと区別します。言語で処理を書き、必要な機能をライブラリから呼び出したり、フレームワークの構成に沿って組み立てたりします。学習するときも、基本の文法、使う道具、実行する環境を分けて整理すると理解しやすくなります。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「プログラミング言語」って出てきたら「処理を一定のルールで書き表す言語」と思えばだいたいOK!
📖 おまけ:英語の意味
「Programming Language」 = プログラムを記述する言語
💬 人が書く処理を、文法と意味のルールで表すものです。自然な会話と同じように、曖昧な表現をどんな場合にも自動で理解する、という意味ではありません。

参考資料

← 用語集にもどる