“プログラミング言語なんてどれも同じ”論者もうなずく「言語の違い一覧」ソフトウェア開発にまつわる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 マーケティング新着記事

news047.jpg

SASのCMOが語る マーケティング部門が社内の生成AI活用のけん引役に適している理由
データとアナリティクスの世界で半世紀近くにわたり知見を培ってきたSAS。同社のCMOに、...

news159.jpg

SALES ROBOTICSが「カスタマーサクセス支援サービス」を提供
SALES ROBOTICSは、カスタマーサクセスを実現する新サービスの提供を開始した。

news139.jpg

「Fortnite」を活用  朝日広告社がメタバース空間制作サービスとマーケティング支援を開始
朝日広告社は、人気ゲーム「Fortnite」に新たなゲームメタバース空間を公開した。また、...