プログラミング言語とマークアップ言語(HTML・CSS)の違い
ウェブサイトを製作するのに最低限必要なのがHTMLとCSSです。 この2つをマスターすれば、とりあえずウェブプログラマーとして働くことができます。
でも実はこの2つ、プログラミング言語ではないんですよ…
プログラミング言語とは?
プログラミング言語とは、コンピュータに命令をプログラムするための言語です。 メジャーどころを挙げると「C」「C#」「Java」「PHP」などでしょうか。 国家資格の基本情報技術者試験では「C」「COBOL」「Java」「アセンブラ」からの選択になっていますね。
マイナーな所まで含めるとその数は数百種以上にも及び、本職でも「こんな言語見たことない、聞いたことすらない」というのが沢山あります。 ならHTMLやCSSがその中に入っていても…と思うかもしれませんが、この2つは根本的にプログラミング言語ではないのです。
プログラミング言語の要件として、何かしらデータを処理できることが挙げられます。 例えば「商品の価格を元に消費税を計算する」「クラスのテストの点数データを元に平均点を算出する」などです。 「順次」「選択」「繰り返し」といった基本制御構造と呼ばれる処理を組み合わせ、効率よくデータを処理できるのがプログラミング言語なのです。
対してHTMLやCSSはデータを表現するためのマークアップ言語と呼ばれる言語です。 HTMLでは「ここは見出し、ここは段落、ここは画像」といった「文書構造」を定義します。 CSSでは「見出しは太字、背景は青色、画像の大きさは横幅の10%」といった「文書構造の表現」を定義します。 この2つの言語ではデータを計算したり処理したりはできないので、プログラミング言語ではないという訳です。
プログラミング言語でプログラムを書くことを「プログラミング」とか「コーディング」とか言います。 それに対してHTMLやCSSを書くことは「コーディング」とは言ってもプログラミングとは言いません。 ややこしいですね。
HTMLやCSSがなぜウェブプログラマーの領分になっているのかと言えば、ウェブプログラマーは「PHP」「Perl」「JavaScript」といったウェブ系のプログラミング言語も使います。そしてウェブプログラミング言語はHTMLやCSSと密接に関わりあっているので、ウェブプログラマーにとっても必須の知識なのです。
ウェブ制作においてウェブ系のプログラミング言語をHTML・CSSの知識なしで使うのは難しいです。まずはHTMLやCSSを分かっていないと話にならないので、最初はHTMLとCSSから学びます。だからHTMLとCSSしか分からなくてもウェブプログラマーだったりするのです。
とはいってもHTMLやCSSはプログラマーの専売特許ではありません。 前述の通りプログラミング言語ではありませんし内容も簡単です。センスがいい方なら何も知らない状態から1週間もあればサイトを作れるようになるでしょう。(※きっちりしたサイトを作る場合は深い知識が必要だったりしますけどね)
プログラミング言語は本職でもなければ殆ど使う機会はありませんが、HTMLやCSSはサイト制作やFacebookページの装飾などにも使えるので、覚えておくとウェブの世界が広がりますよ。