あいまいさと混乱を避けるために、シーンを適切に設定しようとしているだけです。
Web アプリケーションは、サーバー側ロジック用の単純なブラウザー ベースのインターフェイスから、サーバー側ロジックの必要性を最小限に抑えた完全なブラウザー ベースのアプリケーションへと成長しました。この進化は、Web アプリケーションの明確な世代を特定することで説明できます。
とりあえず、ajax の前と後の 2 世代だけを考えてみましょう。CSS のサポートや Access Control ヘッダーに関連するものなど、他にも要因は確かにありますが、簡単なことから始めましょう。
スタイルのない JavaScript のない単純なシステムから始めて、適切に機能を低下させる拡張機能のレイヤーを追加し、Ajax が満載の応答性の高い最新のアプリケーションに仕上げることは、挑戦的でエラーが発生しやすい作業です。決して簡単ではありません。
Web アプリケーションがどの世代に属しているように見えるかは、アプリケーションにアクセスする手段によって異なります。まったく同じ Web アプリケーションが、Lynx を介してアクセスした場合は第 1 世代のアプリのように見え、FireFox 3.1 を介してアクセスした場合は最新世代のアプリのように見えますが、アプリへのアクセスに使用されるユーザー エージェントに応じて、その間にいくつかのレベルが存在します。
現在のブラウザー機能を利用するために作成されたものが、おそらく 15 年前に Lynx に直面したときに作成されたものの機能に戻ってしまうという、ユーザー エージェントの機能に応じて適切に劣化する Web アプリケーションを作成するという問題は、非常に困難です。 .
デスクトップ アプリケーションが動作環境でこのような差異に直面することは想像できません。
Vista の機能を利用できる単一の実行可能ファイル (OS 固有のバリアントのセットとは対照的に) は、XP で実行され、特定の Vista 機能が欠けている場合に十分に対応できます。DOS などのコマンドラインのみの環境で実行する場合、Web アプリと同等の距離で劣化するためには、同じデスクトップ アプリケーションが機能する必要があります。
Lynx で実行します。これは第一世代の Web アプリです。同じことを FireFox 3.1 で実行すると、これはおしゃれで光沢のある現代的な Web アプリです。このような問題に直面した場合、それは挑戦的でトリッキーですが、実行可能だと考えるでしょう。
DOS で実行します。これはコマンドライン アプリです。Vista でも同じように実行できます。これは、洗練された光沢のある最新の Web アプリです。そのような問題に直面した場合、あなたはそれを正気ではないと考えるでしょう。それとも?
デスクトップ アプリケーションは、Web アプリケーションのように動作環境の多様性に直面したことがありますか?
この問題 (分散自体ではなく、分散の幅) は Web アプリケーションのドメインに固有のものですか、それともデスクトップ開発で見つけることができますか?