プロが教えるわが家の防犯対策術!

「プログラミング言語」と「マークアップ言語」の違いがわからない

htmlはプログラミング言語ではなくマークアップ言語との事ですが違いがわかりません。

どちらも”コードを書いて、パソコンを動かすもの”と認識してますが、
こういう所が違うんだよ!って教えてもらえますか?

A 回答 (6件)

--------


マークアップ言語
語源
"markup"(マークアップ)という用語は、伝統的な出版の作業過程である原稿の "marking up" から派生した。"marking up" とは、原稿用紙の余白に印刷に関する指示の記号を書き加えることである。"markup men" や校正者と呼ばれる専門家が、文章の各部分にどんなスタイル、書体、サイズを適用すべきかなどを記して組版の担当者に原稿を渡すという作業が、何世紀にもわたって行われていた。
http://ja.wikipedia.org/wiki/%E3%83%9E%E3%83%BC% …
--------

ということで,マークアップ言語というのは,結果をいかに整形して人間に見せるか,をおこなうための記法です。

質問者には,このQ&Aのページはどのように見えているのでしょうか。
質問のタイトルは大きなフォントで,質問文は普通のフォントで,投稿日時は薄い灰色で,質問者・回答者のニックネームはマウスクリックでき,ページの周囲にはバナー広告が表示されている,等々。
これらのような表示ページの見栄えを記述しているのがマークアップ言語です。

それに対して。
プログラム言語というのは,質問者自身がおっしゃっているとおり“コードを書いてパソコンを動かすもの”と広くとらえることができます。つまり,コンピュータを動かした結果とは,すべて人間に表示されるものばかりとは限らないですよね,ということです。

例えば。
ATMを操作すれば自分の銀行口座からすぐ現金を引き下ろせたり,国内のどこにいようと相手の携帯電話を呼び出せたりするのは,その情報をコンピュータのデータベースで一元管理しているからです。これらの情報システムは膨大な行数のプログラムコードによって記述されていますが,人間に対して表示を整形しているわけではないのでマークアップ言語ではないです。

それから。
自動車,マイコン家電,ビル空調管理,ロボットなど,機器制御系の分野もそうです。コンピュータが動いた結果としての出力は,光だったり熱だったり動きだったり電気信号だったりする。これらもプログラム言語で記述されていますが,人間に対する見栄えよく提示しているわけではないのでマークアップ言語ではないです。
    • good
    • 11
この回答へのお礼

ありがとうございました。

お礼日時:2013/03/23 19:12

マークアップ言語は文書の記述方法ですので、マークアップ言語で作れるのは、文書のようなものです。


マークアップ自体は機能的な役割は持たず、構造を示すための印のようなものです。
プログラム言語は、言葉の通りプログラムですので、その記述によって動作が行われます。
    • good
    • 2

要約していってしまえば、マークアップ言語は文書の記述方法にすぎません。


つまり、マークアップ言語で作れるのは、文書です。
プログラム言語で作れるのは、言葉の通りプログラムです。
だからまったく違うものですね。

ご参考まで。
    • good
    • 2
この回答へのお礼

ありがとうございました。

お礼日時:2013/03/23 19:12

 マークアップ言語とは、文書をそれを構成する要素に分解して、それぞれが文書にとってどういう構成要素であるかを示すだけです。


 例えば見出し(heading)要素なら<h1>~<h6>でマークアップします。
★決して--断じて--それが大きく表示しろとか太字で表示しろとかの見栄えを指定しているわけではありません。★
 ちなみにLynxブラウザで見てもフォントの差はわかりません。スクリーンリーダーでは大きな声で読んでくれます。
 どのように表示するかは、それを利用するビューワー(ブラウザ)が自身が持っているスタイルシートを利用しているだけです。

>どちらも”コードを書いて、パソコンを動かすもの”と認識してますが、
 確かに、挙動の上では似ていますが、根本的に異なるのはマークアップ言語にはコンピューターに対する命令は一切ないのです。ブラウザは、マークアップされた文書を解析してその利用方法を自身で決定します。その処理方法を示すスタイルシートはマークアップ言語ではないCSSもあれば、マークアップ言語であるXSLなどもあります。

>違いは??
マークアップ言語にはコンピューターに対する命令は一切ない

 例えば、
・見出しは大きなフォントで
・段落は前後と少しスペースをとって改行
・引用文は字下げして
・序列リストには番号を振って
 なんてことは、マークアップ言語の機能ではないし、そのためにマークアップするのではありません。ここを間違う人がとっても多いです。それはスタイルシートの仕事ですし、スタイルシート--良く利用されるCSSはマークアップ言語ではありません。
 ⇒Standard Generalized Markup Language - Wikipedia( http://ja.wikipedia.org/wiki/SGML )
    • good
    • 2
この回答へのお礼

ありがとうございました。

お礼日時:2013/03/23 19:12

プログラミング言語は、コンピュータに計算や条件分岐や比較などをさせるが、マークアップ言語は指示された通り表示させるだけで、コンピュータが計算はしないと言うこと。



htmlは文字の大きさや色の指定、Webブラウザーで見たときの表示位置やファイルへのリンク(アンカー)が主であって、数字などを計算処理はしない。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2013/03/23 19:12

>どちらも”コードを書いて、パソコンを動かすもの”と認識してますが、



ちがいます。
マークアップ言語は、テキストの構造を記述するための言語です。

違いがわからないのであれば、無理に理解する必要は無いです。
それらを使ってプログラムなりテキストなりを書く人が理解していれば良いので、パソコンを使ったり、ブラウザでインターネットサイトを見るだけなら理解する必要はありません。

理解したいのならば、まずコンピュータが動く仕組みから勉強しましょう。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2013/03/23 19:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!