最初に用語について少し説明します。「従来のファット クライアント」と呼ばれるものは、おそらくデスクトップ ソフトウェアです。多くの場合、Web アプリケーションはシン クライアントとして作成されますが、ファット クライアントとして作成することもできます。ファット クライアント リッチ インターネット アプリケーションはクライアント中心です。つまり、多くの作業がクライアント (ブラウザー) で行われます。ファット クライアント RIA は、AJAX や Adobe Flash などのテクノロジを使用して作成できます。
デスクトップ ソフトウェアに対する Web ベース アプリケーションの利点を比較するには、次の手順に従います。
保守性: Web ベースのアプリケーションの利点の 1 つは、それらの保守性です。アプリケーションを 1 回インストールするだけで、すべてのユーザーが直接利用できるようになります。ソフトウェアの更新についても同様です。サーバー上のソフトウェアを更新するだけで、すべてのユーザーが最新バージョンのソフトウェアを使用していることを確認できます。これにより、ユーザーのコンピューターでアプリケーションの個々のインストールを更新する必要がなくなります。
セキュリティ: Web ベースのアプリケーションを使用することには、セキュリティに関する 2 つの肯定的な意味があります。前述のように、ソフトウェアを 1 か所で更新するだけで済みます。これは、ユーザーが常に最新バージョンのソフトウェアを使用していることを意味し、ユーザーが古いバージョンの脆弱なアプリケーションを使用するという問題を排除します。
さらに重要なことは、ファット クライアント アプリケーションは安全ではないということです。これらは、アプリケーション ロジックと、データベース資格情報などの機密データを公開します。ファット クライアントはリバース エンジニアリングが可能で、得られた情報に基づいて攻撃を仕掛けることができます。アプリケーションが真に安全であるためには、アプリケーション ロジックはサーバーにとどまり、クライアントはシンで、アプリケーションで処理される情報のプレゼンテーション レイヤーとしての唯一のサーバーである必要があります。アプリケーション ロジックの公開は、リッチ インターネット アプリケーションにも影響を与える可能性があることに注意してください。アプリケーションロジックを公開する方法でRIAを書くのは簡単です。したがって、アプリケーションの状態は常にサーバー上にとどまる必要があることを覚えておくことが重要です。前述のように、ブラウザーはデータを表示するための唯一の手段です。言い換えると、
プラットフォームに依存しない: Web ベースのアプリケーションはプラットフォームに依存しません (activex などのプラットフォーム固有の機能を使用するアプリケーションは例外です)。これは、ユーザーが mac、windows、または linux コンピューターからアプリケーションを使用できることを意味します。もちろん、残念ながら、Internet Explorer などの特定のブラウザーでしか動作しない、または動作する Web アプリケーションを簡単に作成できます。とはいえ、真にクロスプラットフォーム互換性を持つようにデスクトップ ソフトウェアを作成するよりも、Web アプリケーションをクロスブラウザ互換にする方がはるかに簡単です。
アクセシビリティ:インターネット/イントラネットに接続している場合は、アプリケーションにアクセスできます。友人のラップトップを借りた場合でも、デスクトップ コンピューターのそばに座っている場合でも、コンピューターに何もインストールする必要がないため、アプリケーションにアクセスできます。アプリケーションの URL を参照するだけです。