“プログラミング言語なんてどれも同じ”論者もうなずく「言語の違い一覧」ソフトウェア開発にまつわる10個の神話【第4回】

世の中には数々のプログラミング言語が存在する。それらに対して「どのプログラミング言語も同じだ」と主張する人がいるが、実際はそうではない。プログラミング言語は何が違うのかを分類に沿って解説する。

2023年06月02日 09時15分 公開
[Cameron McKenzieTechTarget]

 ソフトウェア開発にはさまざまな手法が存在し、その違いが議論の対象になることがある。議論を必要以上に複雑にしかねないのが、誤解に基づく“神話”の存在だ。ソフトウェア開発業界にある10個の神話のうち、7つ目を取り上げる。今回はエンジニアが日常的に使う、プログラミング言語に関する神話だ。

神話7「どのプログラミング言語も同じだ」

 全てのプログラミング言語は、

  • データを変数として管理する
  • 条件付き分岐(「if」文など)を実行する
  • ループ内で処理を反復的に実行する

といった3つの機能を備える。こうした基本的な部分は共通しているものの、プログラミング言語にはさまざまな種類がある。

 プログラミング言語は幾つかの観点で分類できる。主な分類は以下の通りだ。

  1. プログラミングパラダイム(プログラミングの考え方やスタイル)による分類
    • オブジェクト指向言語
      • データと処理(メソッド)をまとめた「オブジェクト」をプログラムの基本要素とする。
    • 関数型言語
      • 関数を値として扱う。
  2. 実行形式による分類
    • インタープリタ言語
      • ソースコードを逐次解釈する「インタープリタ」を使ってプログラムを実行する。
    • コンパイル言語
      • あらかじめソースコードをプログラムに変換(コンパイル)する。
  3. ソースコードの抽象度による分類
    • 高水準言語
      • ソースコードが人にとって理解しやすい。
    • 低水準言語
      • ソースコードが機械語に近い。
  4. 変数の型(数値や文字列といったデータの種類)の定義による分類
    • 動的型付け言語
      • プログラムが変数の型を自動で決定する。
    • 静的型付け言語
      • ソースコードに変数の型を明示する。

 エンジニアはソーシャルメディアで、どのプログラミング言語がベストなのか、なぜベストなのか、といった議論を常に交わしている。もし全てのプログラミング言語が同じであれば、このような論争はすぐに収まるはずだ。だがそうではない。「全てのプログラミング言語が同じだ」という神話に、彼らは激怒している。


 第5回は、8つ目の神話を紹介する。

変更履歴(2023年6月2日14時15分)

記事掲載当初、本文で高水準言語と低水準言語の説明が逆になっていました。おわびして訂正します。本文は修正済みです。


TechTarget発 エンジニア虎の巻

米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。

ITmedia マーケティング新着記事

news075.png

Z世代の告白手段は「直接」が大多数 理由は?
好きな人に思いを伝える手段として最も多く選ばれるのは「直接」。理由として多くの人は...

news100.jpg

日本はなぜ「世界の旅行者が再訪したい国・地域」のトップになったのか 5つの視点で理由を解き明かす
電通は独自調査で、日本が「観光目的で再訪したい国・地域」のトップとなった要因を「期...

news023.jpg

誰も見ていないテレビ番組にお金を払って露出する意味はあるのか?
無名のわが社でもお金を出せばテレビに出してもらえる? 今回は、広報担当者を惑わせる...