コンテンツにスキップ

プログラム言語

コンピュータは、人間が話す日本語や英語をそのまま理解することはできません。コンピュータに処理の手順を伝えるには、コンピュータが解釈できる特別な言語で命令を記述する必要があります。このコンピュータに命令を伝えるために設計された言語プログラム言語(プログラミング言語)と呼びます。

プログラム言語で書かれた命令の集まりがプログラムであり、プログラムを作成する作業がプログラミングです。世の中にはさまざまなプログラム言語が存在し、それぞれ得意な分野や特徴が異なります。

プログラム言語は、いくつかの観点で分類できます。ここでは、試験で問われやすい代表的な分類を紹介します。

プログラム言語で書かれたプログラム(ソースコード)は、最終的にコンピュータが理解できる機械語に変換される必要があります。この変換方式の違いによって、大きく2つに分かれます。

分類仕組み特徴
コンパイラ型プログラム全体をまとめて機械語に変換(コンパイル)してから実行する実行速度が速い。事前に変換が必要
インタプリタ型プログラムを1行ずつ翻訳しながら実行する手軽に実行できる。実行速度はやや遅い

たとえば、CJava はコンパイラ型、PythonJavaScript はインタプリタ型に分類されます。

プログラミングスタイルによる分類

Section titled “プログラミングスタイルによる分類”

プログラムの書き方(考え方)の違いによっても分類できます。

  • 手続き型言語: 処理の手順を上から順番に記述していくスタイルです。「まずAをして、次にBをして…」と、手順書のようにプログラムを書きます。CFortran が代表例です。
  • オブジェクト指向言語: データとそのデータに関する処理を「オブジェクト」というまとまりで管理するスタイルです。大規模なプログラムを整理しやすく、部品の再利用がしやすいという利点があります。JavaC++ が代表例です。
  • スクリプト言語: 比較的簡単な文法で、手軽にプログラムを書けるように設計された言語です。Webページの動きを制御したり、データ処理を自動化したりする場面でよく使われます。JavaScriptPython が代表例です。

これらの分類は排他的ではなく、1つの言語が複数の特徴を持つこともあります。たとえば Python はスクリプト言語であり、オブジェクト指向の書き方もできます。

ITパスポート試験のシラバスでは、以下の7つの言語が用語例として挙げられています。それぞれの特徴と用途を押さえておきましょう。

Cは、1972年に開発された歴史のある言語です。コンピュータのハードウェアに近いレベルの操作ができるため、OS(オペレーティングシステム)の開発や、家電製品・自動車などに組み込まれるソフトウェア(組込みシステム)の開発に広く使われています。処理速度が非常に速いのが特徴ですが、その分プログラミングの難易度はやや高めです。

Fortran(フォートラン)は、1957年に登場した最も古い高水準言語の一つです。名前は「FORmula TRANslation(数式の翻訳)」に由来します。科学技術計算に特化しており、天気予報のシミュレーションやロケットの軌道計算など、大量の数値計算が必要な分野で長年使われてきました。

Javaは、1990年代に登場したオブジェクト指向言語です。最大の特徴はプラットフォーム非依存であることです。Javaで書いたプログラムは、JVM(Java Virtual Machine:Java仮想マシン)という仕組みの上で動作するため、Windows、Mac、Linuxなど異なるOSでも同じプログラムを動かすことができます。企業の業務システムやAndroidアプリの開発など、幅広い分野で利用されています。

C++(シープラスプラス)は、C言語にオブジェクト指向の機能を追加した言語です。C言語の高速性を活かしながら、大規模なプログラムを整理しやすくなっています。ゲーム開発や高性能が求められるアプリケーションの開発に使われています。

Python(パイソン)は、文法がシンプルで読みやすいことが特徴のスクリプト言語です。少ないコード量で処理を記述でき、初心者にも学びやすい言語として人気があります。近年はAI(人工知能)・機械学習・データ分析の分野で特に広く利用されており、科学計算やWeb開発にも使われています。

JavaScriptは、主にWebブラウザ上で動作するスクリプト言語です。Webページにボタンを押したときの反応やアニメーションなどの動的な振る舞いを加えるために使われます。現在のほぼすべてのWebサイトでJavaScriptが使われており、Web開発に欠かせない言語です。

試験で出るポイント

JavaとJavaScriptはまったく別の言語です。 名前は似ていますが、開発された経緯も用途も異なります。Javaは業務システムやアプリ開発に使われるオブジェクト指向言語、JavaScriptはWebブラウザ上で動的なページを実現するスクリプト言語です。試験では「JavaScriptの説明として正しいものはどれか」といった形で出題されることがあります(2024年 問88)。

R(アール)は、統計解析やデータ分析に特化したプログラム言語です。データの集計、グラフの作成、統計的な検定などを手軽に行うことができ、データサイエンスの分野で広く利用されています。

代表的な言語の特徴を表にまとめます。

言語翻訳方式スタイル主な用途
Cコンパイラ型手続き型OS開発、組込みシステム
Fortranコンパイラ型手続き型科学技術計算
Javaコンパイラ型オブジェクト指向業務システム、Androidアプリ
C++コンパイラ型オブジェクト指向ゲーム開発、高性能アプリ
Pythonインタプリタ型スクリプト言語AI・データ分析、Web開発
JavaScriptインタプリタ型スクリプト言語Webページの動的処理
Rインタプリタ型スクリプト言語統計解析・データ分析

試験で出るポイント

各言語の「名前と主な用途の組み合わせ」を問う問題が出題されます。すべての言語を深く理解する必要はありませんが、「Pythonといえば AI・データ分析」「JavaScriptといえばWebブラウザ」「Fortranといえば科学技術計算」のように、言語名と用途をセットで覚えておきましょう。

アプリで問題を解こう!