4章サーバー側での描画を超えて
Maxime Najim
アプリケーションの形態や規模はさまざまです。ここまでの章では導入として、サーバー側でも描画が可能なSPAについて取り扱ってきました。最初のページをサーバーが描画することによって、読み込みの体感速度が向上し、SEO対策も可能になります。しかしここでの議論は、古典的なアプリケーションのアーキテクチャーに基づいたものです。クライアントからのRESTの呼び出しは、状態を持たないバックエンドのサーバーの1つへとルーティングされます。サーバーはデータベースに問い合わせを行い、データをクライアントに返します。以上の手順をまとめたのが図4-1です。
このアプローチは、古典的なeコマースのWebアプリケーションではとてもうまく機能します。しかし、世の中にはまったく異なる種類のアプリケーションもあります。それはリアルタイムアプリケーションとも呼ばれます。アイソモーフィックJavaScriptアプリケーションを分類する基準として、サーバー側で描画可能なSPAか、もしくはアイソモーフィックなコードをリアルタイムやオフラインやデータの同期などに利用するアプリケーションかという分け方もできます。
アプリケーションアーキテクチャーの多様な歴史の中で、リアルタイムアプリケーションは必然的な進化の1形態であるとMatt Debergalisは述べています。彼によると、アプリケーションアーキテクチャーに変革をもたらしたのは安価なCPUとインターネットそしてモバイルの出現だとされています。これらがきっかけとなって、新しいアプリケーションアーキテクチャーの開発が進むことになりました。しかし、動的に更新される複雑な共同作業型のリアルタイムアプリケーションが現れてきた一方で、多くのアプリケーションは依然としてSPAであり、サーバー側での描画が効果を発揮しています。いずれにせよ、リアルタイムアプリケーションはアプリケーションアーキテクチャーの未来にとって重要なことに変わりはありません。本書でのアイソモーフィックJavaScriptに関する議論にとっても、リアルタイムアプリケーションに触れることは意義があると考えます。 ... |
Get アイソモーフィックJavaScript now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.