2013/02/23

[html]インデントしなくてよい?

ちゃんと取り組んでHTML5を勉強するつもりなので、午後に本を買いに行こう。
それまで、ちょっと下調べをする。


まずは書いてみよう、と思い、サイトを探した。

HTML5入門

そもそも、私にしてみると「HTML5」以前に「HTML」の入門がいるのかもしれんが・・・・。
まあ、あまり深く考えずにサンプルをまねして書いてみた。

> まずは書いてみよう

こちらのページを、そのまま書いて動かした。
ふむふむ、divは知っていたけど、articleとかnavとかいろいろあるんですな。

と、そこまではよかったのだが、サンプルのzipをダウンロードして見てみて、ふと疑問がよぎった。

「HTMLの書き方って、どうやるんだろう?」


私はいつもの習慣で、こういう書き方をした。

<!DOCTYPE html>
<html lang="ja">
    <head>
        <meta charset="UTF-8" />
        <title>喉が痛い</title>
        <link rel="stylesheet" type="text/css" media="screen" href="style.css" />
    </head>
    <body>
        <div id="wrap">
            <header id="head"><h1>エスタック</h1></header>
            
            <nav id="navi"><ul><li><a href="./">HOME</a></li></ul></nav>
            
            <article class="post">
                <h2>記事のタイトル</h2>
                <p>HTML5の構造化タグを使おう</p>
            </article>
            
            <article class="post">
                <h2>記事のタイトル2</h2>
                <p>ふーん</p>
            </article>
            
            <footer id="foot"><a href="./">マーカス</a></footer>
        </div>
    </body>
</html>

サンプルでダウンロードしたファイルを見ると、インデントがないのだ。
HTMLだけでなく、CSSも然り。

気になったので、http://www.yahoo.co.jp/https://www.google.co.jp/も見てみた。
Yahoo! JAPANは、すこーしだけインデントがあるところもあったが、ほとんど平たい。
Googleにいたっては、改行があるんだかないんだかすらわからなかった。。。

3つくらいしか見ずに結論を出すのもよくないのだろうが、一般的にHTMLはインデントしないものなのかね?


私の想像だが、HTMLみたいなテキストは、しょせんブラウザが読むためのテキスト。
人間の読みやすさよりも、ファイルサイズを小さくして、速く読み込み終わるようにしたいのではなかろうか。
そういう意図からすると、インデントは無駄なスペースにしかならないし、改行だってそうだ。

C/C++やJavaのようなコンパイルするソースファイルは、コンパイラが読み込むためのものとはいえ、コンパイルしたオブジェクトが結果として残る。
コンパイラにとってもインデントなんかは不要なのだけど、そこの読み込みに多少時間がかかったからと言って、最終的にできあがるオブジェクトの品質に違いがあるわけではない。
だから、人間がメンテナンスしやすいようインデントなどを付けているのだ。

 

そういえば、Javaなんかはメソッド名や変数名がオブジェクトサイズに影響を与えるから、短く変換するツールなんかがあったよなあ。
HTMLも、最初はインデントなどをつけて読みやすくしておいて、最終的な出力はブラウザが速く読み込めるように変換しているのかもしれない。


さて、たったこれだけのHTMLを手で打ち込んでみたのだが、普段使わないキーを多用するため、腕が疲れた。。。

「<」と「>」と「/」と「”」、とくに「<>」はよく使うので、右手の薬指を動かす筋肉が疲れる。
私はJIS配列のキーボードを使っているのだが、「()」のキーと入れ替えた方がいいんじゃないか、とすら思うくらいだ。

きっと、eclipseとかだと括弧が自動補完されて楽なんだろう。
あるいは、もっとすごい機能がついているのかもしれん。
まだまだ知らないことがたくさんあることだよ。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。