66

プログレッシブ エンハンスメントグレースフル デグラデーションの違いについて、私は混乱しています。私には、それらは同じもののように見えます。

この 2 つの違いと、どちらを使用するかについて説明していただけますか?

4

7 に答える 7

88

それらほとんど同じものですが、コンテキストが異なります。

「Aグレードブラウザ」と呼ばれるブラウザのクラスがあります。これらは、(おそらく)訪問者の大部分を占める典型的なオーディエンスメンバーです。これらのユーザーのベースラインから始めます。これを現代のベストプラクティスと呼んでください。

Firefox3.6やSafari4、または他のwhizbang開発者が毎晩WebKitを使用している人のエクスペリエンスを向上させたい場合は、次のような素晴らしいことをしたいと思うでしょう。

  • CSSによる丸みを帯びた角
  • 影付きのテキスト(ただし、あまり多くはありません)
  • ドロップシャドウ(上記の括弧を参照)

これらはあなたのサイトをひどい見た目にしますが、それを壊すことはありません。これはプログレッシブエンハンスメントです。ベストプラクティスの観点から未来を受け入れる。

一方、あなたのニッチな任天堂のサイトは、かなりの数のInternetExplorer5ユーザーを引き付けています。かわいそうですが、彼らが戻ってくることを確認したいのです。外部ファイルにAjaxスクリプトを含めることで、Ajaxの動作に代わるものを提供できます。また、JavaScriptがオンになっていない場合は、リンクによってページ全体が更新される可能性があります。現代のベストプラクティスの観点から、特定の歴史的市場が機能的なサイトのいくつかの類似性によって提供されていることを確認しています。これは優雅な劣化です。

それらはほとんど同じですが、多くの開発チームの優先順位の点で異なります。時間がある場合はプログレッシブエンハンスメントは非常に便利ですが、多くの場合、適切な劣化が必要です。

于 2010-03-31T04:17:43.133 に答える
36

サイトがすべてのブラウザで同じように表示されても、特定のブラウザがダンスポニーをサポートしているためにダンスポニーを取得する場合、それはプログレッシブエンハンスメントです。これはすべてのブラウザーで機能しますが、特定のブラウザーには特別な機能があります。通常、この用語は、「生のHTML」を超えて使いやすさを向上させる可能性のある特定のJavaScript機能に適用されます。

たとえば、CSS 3を完全にサポートするブラウザーでサイトが意図したとおりに見えるだけで、Internet Explorer 8が同じページを表示し、たとえば角が丸くない場合、それは優雅な劣化です。このサイトは本当に最先端のブラウザを対象としていますが、それでも古いブラウザで使用できます。

結局、それらは実際には同じものであり、2つの異なる視点から見たものです。

于 2010-03-31T04:14:26.653 に答える
24

コンセプトごとに選択したベースラインからの方向は異なります。

グレースフルデグラデーションは、理想的なユーザーエクスペリエンスレベルから始まり、ユーザーエージェントの機能に応じて最小レベルまで低下し、ベースラインで使用される特定の機能をサポートしないエージェントに対応します。

プログレッシブエンハンスメントは、幅広い最小限のユーザーエクスペリエンスから始まり、ユーザーエージェントの機能に応じて、より機能的なレベルまで増加し、ベースラインよりも高度な機能をサポートするエージェントに対応します。

時間と予算が許せば、両方のコンセプトを採用できると思います。そうでない場合は、優雅な劣化が優先されます。

于 2010-03-31T09:56:39.747 に答える
11

ある意味では Alex Mcp と deceze の両方に同意しますが、「グレースフル デグラデーション」と「プログレッシブ エンハンスメント」という用語は、私の立場とは少し異なる意味を持っています。

多くの場合 (私の意見では)グレースフル デグラデーションは、私の経験では、そもそもアプリケーションがうまく構築されていない場合、アプリケーションを打ち負かして提出するのが難しいようです。ある人が巨大な JavaScript オブジェクトを構築して、ユーザーに本当にクールな何かを提供するように、マネージャーがやって来てそれをテストし、アプリケーションが機能しないことに気付くと、誰もが悲鳴を上げて腕を振り回すまで走り回るのと同じです。ブラウザの 35% で。「誰かがこれに対するフォールバックを提供するほうがよいでしょう。」

ただし、プログレッシブ エンハンスメント(と言うのはとてもいい言葉です) は、ユーザーが使用できるすべての機能を提供するために、利用可能な最も基本的な方法を使用して、エントリ レベルでどこでも機能するものを構築することに関するものだと私には思えます。ニーズ。これは、目立たないヘルパー、スタイリングなどを追加して、問題のアプリケーションをほとんど使用できないようにするのではなく、実際にユーザー エクスペリエンスを向上させることができます。「それはいいですね。Internet Explorer 6で動作しますか? ああ、そうです。動作します。」

ここで上位2つの回答の両方の用語の例としてスタイルを与えることは、プログレッシブエンハンスメントがその性質によって解決することが多い実際の根底にあるユーザビリティの問題を見落としていると思います

うそつき...

于 2011-05-09T19:18:14.760 に答える
0

私はそれが態度的である傾向があると思います-あなたは「オーケー、私のサイトはLynxで動作します、ユーザーは私が彼らにできるようにしたいことをすべて行うことができます、今度はいくつかの万能薬を追加しましょう」と言っていますか、それとも「オーケー、私のサイトは動作しますFirefoxで、それを使用したくない人やJavaScriptをオフにする人などのために修正してみましょう。」

于 2010-03-31T04:20:29.170 に答える