15章ColonyのNode.jsを使わないアイソモーフィックアプリケーション
Patrick Kunka, Richard Davis, Andrew Barker
Colonyはグローバルな映画のストリーミングプラットフォームです。限定の特典コンテンツを介して、コンテンツのオーナーと熱心なファンを結びつけることをめざしています。競争は激しく、ワールドクラスのプロダクトやユーザーエクスペリエンスを提供することがきわめて重要です。また、オンラインでの映画の観覧スタイルを再定義できればとも考えています。
15.1 課題
Colonyでのビデオオンデマンドのビジネスモデルと、Netflixなどの競合サービスとの間には大きな違いがあります。Colonyのコンテンツは公開されており、見たいものを選んで作品ごとに視聴や購入が可能です。サブスクリプションという壁の中にコンテンツを隠しておくようなモデルではありません。こうすると、Googleのクローラーがすべてのコンテンツをインデックス化してくれます。また、我々のユーザーインタフェースは内部状態の変化を反映して動的に変化します。例えばユーザーの状態(サインインしているかどうか)や、コンテンツのバンドルあるいはその一部の視聴期限の有無などに応じてページ上の要素は変更されます。ASP.NET MVCをそのまま利用して初期のプロトタイプを作成した際に、フロントエンドをSPAにすることのメリットを実感できました。まず、上のような要件に対応しやすくなります。また、アプリケーションスタックが分離されるため、バックエンドとフロントエンドのチームが独立して作業を進められるようになります。
ここで、サーバーが描画しインデックス化されている従来のWebサイトを、どうやってSPAと組み合わせるかというジレンマに直面しました。2014年の時点でもMeteorなどのアイソモーフィックなフレームワークが公開されており、簡単に利用できました。しかし、バックエンドとしてNode.jsが必要でした。AngularやEmberといったSPAのフレームワークも広く普及していましたが、SEOの問題が未解決だったため採用しませんでした。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access