6

あいまいさと混乱を避けるために、シーンを適切に設定しようとしているだけです。

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 アプリケーションのドメインに固有のものですか、それともデスクトップ開発で見つけることができますか?

4

3 に答える 3

1

デスクトップ アプリケーションには、この点で Web アプリケーションと同じ問題はありません。それらは通常、明確に定義された 1 つのプラットフォームで実行するように作られています。

これは将来変更される可能性があります。コンピューティングは、デスクトップから携帯電話や小型のラップトップに移行しています。デスクトップ アプリケーションは、将来的にはさまざまなプラットフォームで実行する必要があります。これは、デスクトップ アプリケーションの開発に使用するほとんどのフレームワークが、Web アプリケーションのフレームワークよりもさらに悪い処理を行うため、問題を引き起こす可能性があります。

于 2009-02-20T14:00:06.683 に答える
1

デスクトップ アプリケーションが動作環境でこのような差異に直面することは想像できません。

デスクトップ アプリケーションは、さまざまな種類の分散に対処する必要があります。ゲームのグラフィック カードはその好例です。基本的な顧客には適切なサポートが必要ですが、ピカピカの新しいグラフィック カードを使用するハイエンドの顧客は、お金を稼ぎたいと考えています。オン GPU 処理とオンカード メモリ管理の領域に入ると、動作環境の違いを呪うのに十分な理由が得られます。

また、一般的に、Web アプリよりもプロセッサとメモリを集中的に使用するソフトウェアを扱うため、それも考慮する必要があります。また、OS 間の操作性 (多くのデスクトップ ソフトウェアが非常に適切に処理している) についても話しているわけではありません。

もちろん、デスクトップ ソフトウェアの発行者が環境に厳しい基準を課すことを妨げるものは何もありません。それは単なるビジネスの問題です。しかし、非主流のブラウザーをサポートすることを強制するものは何もありません (そして、ほとんどの Web アプリケーションは本当に Lynx をサポートしていますか?!?)。

于 2009-02-20T14:24:24.767 に答える
0

アプリケーションとオペレーティング システム (OS) の領域では、通常、問題は逆になります。互換性を維持するためのすべての複雑さを処理するのは OS です。一方、アプリケーションは通常、最小OS バージョンを決定します。

アプリケーションがこの問題を認識し始めるもう 1 つの場所は、Java の世界であり、程度は低いものの、マルチ OS で動作する他のすべてのいわゆるスクリプト言語です。

于 2009-02-20T13:56:41.137 に答える