問題は、それがどのように重要である:ウェブアプリケーションのドメイン外の優雅な劣化?

StackOverflow https://stackoverflow.com/questions/569629

質問

長いイントロのための

の謝罪 - 。ただ適当にあいまいさと混乱を避けるためにシーンを設定する

しよう

のWebアプリケーションは、サーバーサイドロジックのダムブラウザベースのインターフェイスであることから、完全にサーバ側ロジックのための最小必要とブラウザベースのアプリケーションであることに成長しています。 Webアプリケーションの明確な世代を識別して、この進化を記述することが可能です。

前後のAJAX:

ちょうど、しばらくの間、ちょうど2つの世代を考えてみましょう。確かに、このようなCSSのサポートとアクセスコントロールのヘッダーに関連するものなどの他の要因は、ですが、のは、簡単な始めてみましょう。

優雅分解機能強化の層を追加するとAjax-パックで仕上げ、スタイルレスJavaScriptのレスシンプルなシステムから始めて、非常に応答性の現代的なアプリケーションは、困難とエラーが発生しやすい作業です。それは簡単されるものではない。

Webアプリケーションが属するように見えることがありどちらの世代には、アプリケーションのアクセスに使用される手段に依存します。 FireFoxの3.1を介してアクセスする場合に非常に同じWebアプリケーションは、インとの間のユーザエージェントに応じていくつかのレベルで、Lynxと最新世代のアプリケーションを介してアクセスする場合は、最初の世代のアプリケーションであると思われるアプリケーションにアクセスするために使用される。

優雅に何かが作成した何かの機能に戻すでしょう、現在のブラウザ機能を利用するために作成したユーザエージェントの能力に応じて低下したWebアプリケーションを作成するための問題の、おそらく15年前に、非常に困難です。

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

XPの下で実行した場合や、特定のVistaの機能を欠いているとき、

Vistaの機能を利用することのできる単一の実行可能ファイルは、(OS固有亜種のセットではなく)も適切に対処することがあります。あまり派手なファッションでいえDOSなどのコマンドラインのみの環境で実行すると、Webアプリケーションとして同程度の距離にわたって分解するために、同じデスクトップアプリケーションは、機能しなければなりません。

Lynxの下でそれを実行し、それは第一世代のWebアプリケーションです。 FireFoxの3.1で同じことを実行して、それが空想、光沢のある現代的なWebアプリケーションです。このような問題に直面した場合、あなたはそれは、挑戦的なトリッキーが、実現可能な検討したい。

DOSの下でそれを実行し、それは、コマンドラインアプリです。 Vistaで同じことを実行して、それが空想、光沢のある現代的なWebアプリケーションです。このような問題に直面した場合、あなたはそれが非常識検討したいです。それともでしょうか?

デスクトップアプリケーションは、これまでの動作環境での分散の、このような広さに直面しているそうであるように、Webアプリケーションできますか?

Webアプリケーションのドメインに固有の(分散の広さではなく、分散自体)は、この問題であり、あるいはそれはデスクトップ開発で見つけることができますか?

役に立ちましたか?

解決

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

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

他のヒント

  

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

デスクトップ・アプリケーションでは、単に異なる種類の、分散に対処する必要があります。ゲームのグラフィックカードはその良い例です:あなたは、基本的な顧客のためのまともなサポートをしたいが、ピカピカの新しいグラフィックカードを使用して、ハイエンドの顧客は彼らのお金のために実行をお勧めします。あなたは上のGPU処理やオンカードのメモリ管理のレルムを入力するときは、操作環境での分散を罵倒するのに十分な理由があるでしょう。

また、一般的にウェブアプリよりも多くのプロセッサとメモリ集約型のソフトウェアを扱うので、あなたにも考慮に入れているを取る必要があります。そして、私も(多くのデスクトップソフトウェアは非常に優雅に扱う)OS間の操作性の話ではない。

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

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

のアプリケーションは、この問題は、Javaの世界で、より少ない程度に、他の全てのいわゆるスクリプトは、マルチOS上でその仕事をlangages見始める別の場所ます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top