検索
特集/連載

HTMLが「プログラミング言語」になれない“端的な理由”HTMLは何者か【第1回】

「HTML」はプログラミング言語ではない――。その根拠は何なのか。「Java」「Python」などのプログラミング言語とは何が違うのか。こうした疑問に答える。

Share
Tweet
LINE
Hatena

 「HTML」はプログラミング言語なのか――。結論を言えば「HTMLはプログラミング言語ではない」。こう言うと、自分が構築したWebサイトに誇りを持っているWebエンジニアやグラフィックデザイナーの中には、怒りを覚える人がいるだろう。だとしても、HTMLはプログラミング言語ではない。

HTMLがプログラミング言語ではない理由

 HTMLがプログラミング言語ではない理由は3つある。それは

  1. 変数を使用できない
  2. 条件分岐ができない
  3. ループ(繰り返し)処理ができない

の3つだ。

 プログラミング言語かどうかを議論するには、プログラミング言語の定義を確立しなければならない。そのためにはコンピュータが何をするのか、具体的にはCPUが何をするのかを考える必要がある。最も基本的な観点で言うと、CPUは以下の3つを可能にする。

  1. メモリからデータを読み取る
  2. 読み取ったデータに対して条件に応じた処理を実行する
  3. 特定の処理を高速で繰り返し実行する

 プログラミング言語は、この3つをそれぞれ変数、条件分岐、ループ処理として実現する。HTMLはこれらをいずれも実現しないため、HTMLはプログラミング言語ではない。「HTMLはドキュメントを構造化するためのマークアップ言語だ」と、カナダのエドモントン公立図書館(Edmonton Public Library)でシニアWeb開発者を務めるJD・リエン氏は説明する。

 先述の定義を満たすプログラミング言語には、

  • Python
  • Rust
  • C
  • Java

などがある。これらのプログラミング言語は、変数を使ってデータを保管する。「if」などの条件文による分岐や、「for」「while」といった繰り返し文によるループ処理も実行できる。HTMLはこれらを実装しておらず、開発者がプログラムを通じてCPUを操作できない。そのためHTMLはプログラミング言語ではない。

TechTarget発 エンジニア虎の巻

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

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る