CodeZine(コードジン)

特集ページ一覧

サーバサイドHTMLテンプレートからの脱却のススメ

Web開発者の悩みを軽減! クライアントサイドでのHTMLテンプレート管理 第1回

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2016/09/16 14:00

目次

フロントエンドエンジニアが抱える問題

 簡単なHTMLであれば、多少面倒であってもサーバサイドエンジニアが修正を行うことはできました。

 しかし、フロントエンドエンジニアがプロジェクトに参加するようになると、少々事情が代わり、また新たな問題も生じます。

 フロントエンドエンジニアがプロジェクトに参加する場合には、UI/UXもこれまで以上に重視されるプロジェクトであるはずです。

 UI/UXを確認する上では、HTMLやJavaScriptなどを作成しながら実際のブラウザを使って確認していきます。そして、サーバサイドHTMLテンプレートを使う場合には、問題なく動作ができるようになったところで、サーバ側の機能をそのHTMLに組み込んでいくなど、図4のような作業工程を経る必要があります。

図4 HTMLを完成させるまでの作業工程
図4 HTMLを完成させるまでの作業工程

 すでにHTMLそのものを作ってしまっているので、テンプレート機能が持つさまざまなメリットが、逆にデメリットになってしまっています。このため、HTMLを修正する時に2つの大きな課題が発生します。

  1. HTMLからHTMLテンプレートへの変換能力
  2. サーバ側でデバッグする能力

 これら2つは、どちらも本来は必要なものではなく、作業ルールによって生まれてしまった作業とスキルということです。これらは簡単な修正であれば、それほど難しくないかもしれません。しかし、複雑なUI/UXの修正まで行うとすると、テンプレートの記述ミスにより想定したHTMLではない結果になる、または、サーバ側で動作する制御文の間違いによるサーバ側での処理エラーなど、考慮しなければいけないことはより多くなります。

 また、HTMLテンプレートへの変換をサーバサイドエンジニアが担当すると、サーバサイドエンジニアがフロントでの動作を確認する必要が生じてしまうなど、どちらか一方を立てると、もう一方には大きな負担が生まれてしまうという問題が発生します。

フロントエンドエンジニアが抱えるもう一つの問題

 まだ、あまり声として上がっているところは少ないですが、フロントエンジニアはもう一つ大きな問題を抱えています。ここまでの記述を読んでいれば、気がついている方もいるかもしれません。

 それは、複数のプロジェクトに参加する場合には、複数のHTMLテンプレートの使い方を覚える必要があるということです。

 図5のように、HTMLを生成するためのHTMLテンプレート言語は非常にたくさんの種類が存在します。

図5 HTMLを生成するためのさまざまなHTMLテンプレートエンジン
図5 HTMLを生成するためのさまざまなHTMLテンプレートエンジン

 サーバサイドテクノロジーは、言語やフレームワークによって、できることとできないことがあり、また、たとえできても得意、不得意があります。そのため、プロジェクトによって、言語やフレームワークの選択が変わってしまうこともよくあるケースです。

 その結果、HTMLテンプレートも変えなければならないことがあります。

 HTMLテンプレートを言語やフレームワークなどから分離させ、どの言語、どのフレームワークなどでも使える共通のHTMLテンプレート言語があればと思う方もいるでしょう。

 しかし、HTMLテンプレートは、その言語、そのフレームワークを使うエンジニアにとって効率的であり、利便性が高いように進化した経緯があります。そのため、そのようなHTMLテンプレートが存在することは難しいのです。もちろん、非常に似た形式のものはありますが、言語が異なれば全く同じようにはいきません。

 このように同じようなことをするために、多少異なるということを覚える必要があり、そして、そのスキルはあまり市場で評価されるものではありません。そのため、フロントエンドエンジニアがサーバサイドのHTMLテンプレートを覚えるというモチベーションはどうしても低くなってしまうのです。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

バックナンバー

連載:Web開発者の悩みを軽減! クライアントサイドでのHTMLテンプレート管理

著者プロフィール

  • WINGSプロジェクト 小林 昌弘(コバヤシ マサヒロ)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。個人紹介主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応...

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XM...

あなたにオススメ

All contents copyright © 2005-2022 Shoeisha Co., Ltd. All rights reserved. ver.1.5