HTML ってプログラミング言語ですよね?
HTML はプログラミング言語か?
以前から時折見かける「HTML はプログラミング言語か?」という議論について…少し興味深い記事(英文)を見つけましたので、紹介がてら 個人的な見解を書いてみたいと思います。
個人的見解
個人的見解ですが…僕の性格上、基本的には「どちらでも良い」のですが、強いて言うならプログラミング言語ではないという感覚があります。
理由としては、「コンピュータ」というものはそもそも「電子計算機」であって、計算する要素を持つものが「プログラミング言語」と言う感覚があります。
僕が初めてコンピュータを手にしたのは、中学一年生の時、CASIO PB-100 というポケットコンピュータを購入し プログラミングに触れ初めた訳ですが、その頃から趣味としてプログラミングを楽しみ、社会人になって第二種情報処理技術者試験を受け…そういった乏しい経験と知識の中では…「プログラミング」というと、まず「変数」を定義し(数学で言うところの「y = 2x」のような)「関数」を使って演算処理するもの…そんなイメージがあります。
ところが HTML という言語に関して言うと「変数」の定義が出てこず(「y = 2x」のような)「関数」を定義したりすることも 演算処理することもなく…完成してしまうものですから、少々例外的な「言語」なのかな、、と感じています。
※「CSS」に関連する言語「SCSS」「SASS」などでは「変数」使用することもできるようですが…それはまた別の機会に。
HTML の意味
HTML は Hyper Text Markup Language という英語の頭文字をとった省略語であり、プログラミング言語かどうか?はおいておいて「言語」である事は間違いないようです。
プログラミング言語なのか?
ここで「Markup Language」という単語の持つ意味は?!と思い、それ対して「Programming Language」という単語があるのではないか?!と感じまして…早速ググってみました。
すると、こんな記事が…
What is the Difference Between Markup Language and Programming Language
The main difference between markup language and programming language is that a markup language defines a set of rules for encoding documents in a format that is both human-readable and machine-readable while a programming language provides a set of commands and syntax that can be used to write computer programs which are understood by the computer.
https://pediaa.com/what-is-the-difference-between-markup-language-and-programming-language/
簡単に言うと「主な違いは…」「markup language は 人間と機械 の双方に読み取れる形式…」であり、「programming language は コンピュータによって理解される…」と書いてありますね。
なるほど…確かに「プログラミング」という単語の中に「コンピュータに命令(command)する」というニュアンスが含まれているような感覚があります。
結論
日本語でもっとはっきり「HTML はプログラミング言語ではありません。」と書いてあるページも見つけましたが…正直なところ、それをどう分類するか…というよりも、エンジニアとして「markup language と programmingu language の違い」を「変数を定義して…」とか「関数がどうで…」とか「レンダリングエンジンが…」とか「コンパイラが…」とか「低級言語が…」などといった言葉を用いて 初心者の方にも説明して理解して頂けるような知識を身に着けておかなければいけないのかな?…と思い、ちょっと書いてみました。
SNS開発18年で2つのSNSを開発・運用中の当社が、あなたのアイデアを形にするお手伝いをします。