HTMLが「プログラミング言語」になれない“端的な理由”:HTMLは何者か【第1回】
「HTML」はプログラミング言語ではない――。その根拠は何なのか。「Java」「Python」などのプログラミング言語とは何が違うのか。こうした疑問に答える。
「HTML」はプログラミング言語なのか――。結論を言えば「HTMLはプログラミング言語ではない」。こう言うと、自分が構築したWebサイトに誇りを持っているWebエンジニアやグラフィックデザイナーの中には、怒りを覚える人がいるだろう。だとしても、HTMLはプログラミング言語ではない。
HTMLがプログラミング言語ではない理由
HTMLがプログラミング言語ではない理由は3つある。それは
- 変数を使用できない
- 条件分岐ができない
- ループ(繰り返し)処理ができない
の3つだ。
併せて読みたいお薦め記事
学ぶべきプログラミング言語
- PythonでもRubyでもない「最初に学ぶプログラミング言語」の“王者”はこれだ
- JavaScriptはなぜ大人気なのか? 他の追随を許さない理由
- 初めてのプログラミングには「Python」を選ぶべき“セキュリティ的な理由”
プログラミング言語かどうかを議論するには、プログラミング言語の定義を確立しなければならない。そのためにはコンピュータが何をするのか、具体的にはCPUが何をするのかを考える必要がある。最も基本的な観点で言うと、CPUは以下の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.