CSSだけでできる?の判断スキル向上など、失敗から得た5つの気づき

前回の記事では、ぼくらの自社サイトリニューアルがいったん失敗に終わり、ゼロから作り直す羽目になった顛末をお話しました。失敗はつらくて、恥ずかしい。今も、こうして記事を書いている中で、「できれば失敗せずに済ませたかったな」という複雑な思いが胸にこみ上げてきます。せめてその失敗を反省し、「繰り返すべき

白石 俊平

2012年6月6日 20:00

前回の記事では、ぼくらの自社サイトリニューアルがいったん失敗に終わり、ゼロから作り直す羽目になった顛末をお話しました。失敗はつらくて、恥ずかしい。今も、こうして記事を書いている中で、「できれば失敗せずに済ませたかったな」という複雑な思いが胸にこみ上げてきます。

せめてその失敗を反省し、「繰り返すべきでないこと」と「今後も継続すべきこと」をきちんと言語化しておくことで、失敗の経験を「成長」につなげたい。そういう思いから、こうして失敗談を記事にさせていただくことにしました。

今回の後編では、その失敗から得られた5つの気づきをお話ししたいと思います。もし、これらの気づきがみなさんを楽しませたり、お役に立てたりすれば幸いです。とは言えたった一度の経験から得られたものですので、まだまだ洞察が深まっていないところもあるかと思います。至らぬ点や誤りなどがあったら、@Shumpeiまでお気軽にご指摘ください。

1. jQuery Mobileは、使い所を見極めよう

jQuery Mobileには良い点がたくさんあります。まず何より簡単に扱えること、ネイティブアプリに近いUIを実現できること、単一ページ(DOM)からなるアーキテクチャにもかかわらず、ページごとに一意なURLを利用できるため、各ページがブックマーク可能で、SEOにも強いことなどが挙げられます。

しかし、どんな技術にもやはり、適材適所というものがあります。今回の案件に関しては、jQuery Mobileが「適材」ではなかったことに気づくのが遅れたことが、失敗の要因の一つだと言えます。

ぼくたちが今回最初に実現しようとしていたWebデザインは以下のようなものでした。このPCサイトとモバイルサイトを、レスポンシブWebデザインにより、1ソースで実現しようとしていました。

図1:PCサイトのデザイン。菱形をモチーフとし、菱形がインタラクティブに移動する

図2:モバイルサイトのデザイン(クリックで拡大)

見てお分かりの通り、PCサイトとモバイルサイトは、全体的な雰囲気は似通っているものの、デザインは大きく異なります。これらをレスポンシブWebデザインによって1ソースで実現する、しかも良くあるレスポンシブなサイトのように、Webブラウザのウィンドウサイズを変更すると自動的にレイアウトが変わるようにするのであれば、本来モバイルサイトの構築にしか必要のないjQuery Mobileを、PCサイトでも使用することになります。

しかし、PCサイトのデザインを見ていただければ分かる通り、jQuery Mobileを使う有り難みはあまりありません。jQuery Mobileは「フレームワーク」ですから、様々な枠組みに従ってマークアップを行わなければなりませんが、それもPCサイトにとっては不要な制限です。

しかもjQuery Mobileは、基本的にはJavaScriptファイルを読み込むだけで、HTML(DOM)を自動的に拡張(クラスを追加するなど)してしまいます。jQuery Mobileのサイトに対してカスタマイズを行う場合には、そうして「いじくられた」状態のDOMに対するスタイリングが必要になるため、今回のPCサイトデザインのように自由度の高いスタイリングを行いたい場合には、非常に「邪魔な」存在となってしまいます。

まとめると、そもそも「自由度の高い」デザインを行いたいと考えている場合、jQuery Mobileの採用には慎重になった方が良いでしょう。レスポンシブWebデザインを行うならなおさらです。

そもそも、レスポンシブWebデザインを採用する大きな理由の一つが「モバイルとデスクトップを1ソース、1URLで運用したい」というものでしょう。そしてこの要件は、サーバサイドのプログラミング言語(PHP、Perl、Node.jsなど)を効果的に使えば、実現はそれほど難しくないはずです。必ずしも、CSSメディアクエリの使用にこだわる必要もありません。

従って、「1ソース、1URL」かつ「モバイルサイトではjQuery Mobileを使いたい」という場合は、サーバサイドプログラミングも活用して、「PCブラウザからのアクセスでは、jQuery MobileのJavaScript/CSSをそもそも読み込まないように、出力するHTMLコードを調整する」といった方法を採るのがベストではないかと考えています。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30