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

news058.jpg

Z世代が旅に求める「令和的非日常」とは?
JTBコミュニケーションデザインと伊藤忠ファッションシステムが、Z世代の旅に関する意識...

news094.jpg

電通が「AI×クリエイティブ」の強みを生かしたビジネスコンサルティングサービスを提供開始
電通は「AI×クリエイティブ」で企業の事業やサービスの開発を支援する新サービス「AIQQQ...

news053.jpg

「docomo Ad Network」 高LTVユーザーのみに広告配信ができる顧客セグメントを追加
D2Cは顧客生涯価値が高くなることが見込まれるセグメントを抽出し、新たなセグメント情報...