プログラミング言語とは
プログラミング言語は、コンピュータプログラムを記述するための言語です。
プログラミング言語は、人間がわかるように書いたソースコードを、機械の言葉に変換すること(コンパイル)でコンピュータに命令を実行させます。
プログラミング言語は、人間がコンピュータに命令を指示するために作られており、コンピュータが曖昧さなく解析できるように設計されています。
多くの場合構文上の間違いは許されず、人間はプログラミング言語の文法に厳密にしたがった文を入力しなければなりません。
プログラミング言語の特徴
プログラミング言語には沢山の種類がありますがが、どの言語であっても、その構造は大きく以下の3つの特徴を持っています。
- 順次処理
- 分岐処理
- 繰り返し処理
順次処理とは
上から順番に処理を進めていく事です。
「朝起きる」→「顔を洗う」→「服を着替える」→「会社に行く」
といった流れです。
プログラミング言語も、基本的には記述した順番通りに、上から順次処理を行います。
分岐処理
条件に従って枝分かれする処理です。
順次処理の途中「会社に行く」所で「もしも風邪気味なら会社を休む」ケースが考えられます。
この「もしも風邪気味なら」の部分が条件で
「会社を休む」または
「会社に行く」
が分岐する処理になります。
繰り返し処理
同じ処理を繰り返す事です。
「決められた回数繰り返す」もの
「ある条件が整うまで繰り返す」もの
「無限に繰り返す」もの
など、いくつかの種類があります。
例えば、会社員の場合、「朝起きる→会社に行く→疲れて帰る→寝る→朝起きる・・・」という処理を月曜から金曜まで5回繰り返すことになります。
これは「決められた回数繰り返す」例になります。
プログラミング言語の種類
インタープリタ
インタプリタとは、プログラミング言語で書かれたソースコードないし、中間表現を逐次解釈しながら実行するプログラムのことです。
コンパイラ型言語に比べて、実行までの処理の手間がかからないという特徴を持っています。
JavaScriptやPHP、Perl、Pythonなどのスクリプト言語はインタープリタです。
バイトコード
バイトコード (bytecode) は、仮想マシンによる実行のために設計された、実行可能なプログラムのバイナリ表現です。
バイトコードと仮想マシンの代表例としては、
- JavaとJavaの実行環境(JRE、Java Runtime Environment)
- C#と Microsoft .NET Framework
があります。
コンパイラ
コンパイラ(英:compiler)とは、コンピュータ・プログラミング言語の処理系(言語処理系)の一種で、高水準言語によるソースコードから、機械語に(あるいは、元のプログラムよりも低い水準のコードに)変換するプログラムのことです。
また、言語そのものを指すこともあり、ここでは言語そのものを意味しています。
ソースファイルを、機械語にコンパイルしてからライブラリ群をリンクすることをビルドといいます。
また、リンクには静的リンク(static link)と動的リンク(dynamic link)の2つがあります。
コメント