少し前に書いた失われたウェブ制作のベスト・プラクティスという記事の公開後、やはりある程度まとまった形の文書が必要なのではないかという気分になった。そこでHTMLはどのようなことに気を付けて書くと安定したものになるのかという視点で、悪い例と良い例を併記したHTML Best Practicesという文書を作成した。
それぞれにそれぞれの理由はあるが、その解説は簡単ではない。歴史的な背景を始めとした様々な点からの落とし所であり、それら前提となる物事について書くとなると膨大な量になりうる。そのためコード例で悪いものと良いものを併記するだけに留めておいた。
こうなっていると、「なぜ」がわからないという面もあるが、「これをこう書けるのか」というような面もある。啓蒙的な意味合いが強い文書にも関わらずカジュアルに読めるため、悪くはないのではないかと思う。
現時点でほとんどの要素の書き方についてはひと通り触れることができた。多くは僕の知識に基づくものなので、それなりに「今」を反映できているはずだ。他も仕様のコード例をアレンジしたもののため、正しく、シンプルなものにできていることと思う。
このような安定性を意識した書き方に沿って、シンプルにHTMLを書いていけば、保守しやすく拡張しやすいウェブサイトを制作できることだろう。
しかし、この文書にはこういったベスト・プラクティスと呼ばれるものに欠かすことのできない系統のものがまったく出てこない。それはパフォーマンスについてのベスト・プラクティスだ。
パフォーマンス向上を目指したHTMLの書き方とは、つまりHTTPリクエストが効率的に行われるような書き方だ。例えばscript
要素を動的に追加することによる非同期なJavaScriptの実行が挙げられる。しかしこれには有害だという大家からの意見が既にある。またCSSをJavaScriptより先に読み込むというセオリーも崩れ始めている(speculative parsing (投機的パース)による)。そしてHTTP/2も控えている。
こういったHTTPリクエストの効率化を目指すための書き方は、数年前ならともかく、激変しつつある今は刹那的なテクニックにしか成りえなそうだ。ベスト・プラクティスと呼べるようなものは減りつつあるのではないか。とは言うものの、そのようなテクニックについて追加してくれれば、取り込むことはやぶさかではない。
他、もちろん提案はどんなものでも大歓迎なので、悪い例と良い例を作るくらいで是非気軽に提案して欲しい。例さえあればあとはタイトルを英語で考えるだけなので、日本語で提案してくれてもまったく構わない。既に載せたものに関してもベスト・プラクティスとは思えないというような意見も、むしろこちらをお願いしたい。