it-swarm.cn

渐进增强和优雅降级之间有什么区别?

什么是渐进增强?我无法理解这个概念。它的工作方式,以及与优雅降级相比,模型如何/更好(?)?

7
pramodc84

Motolix的答案非常广泛,因此让我添加特定于Web开发的答案。

渐进增强是指创建一个所有人都可以使用的网站,然后在各层中添加高级功能以改善可以访问该网站的用户的体验。例如,可以将基本文本网站升级为包括设计(样式表),交互功能(javascript)和视频(Flash)。但是,该网站继续仅充当基于文本的网站。在 维基百科的渐进增强定义 上了解更多信息。

正常降级容错系统 的一个方面,即使设计中的某些点可以做到,您的设计仍继续起作用。工作。维基百科文章列出了HTML就是一个很好的例子:HTML5在所有浏览器中都可以使用,因为如果存在无法识别的标签,HTML解析器本身不会中断。但是,由于较旧的浏览器无法识别这些标记,因此它们也无法提供与它们关联的功能(例如各种新的输入类型,例如范围,数字,日期,时间,颜色等)。另一个示例是在CSS中一起设置颜色和背景颜色,但可能会用图像覆盖颜色。如果未加载图像,则希望文本仍然清晰可见,但如果不确保背景颜色是允许文本清晰可见的背景颜色,则情况可能并非如此。

两者之间的区别是从哪里开始。渐进式增强包括从坚实的基础开始并从此基础进行改进,同时在不支持改进的情况下确保持续运行。正常降级涉及从高级应用程序开始,但要确保如果不支持某些元素,它将继续工作。显然,这意味着在某些时候这两个概念之间存在一个交叉点。

9
Rahul

渐进增强是从坚实的基础产品开始并从那里扩展的过程。例如,您从一个非常好的视频播放器开始,然后添加播放列表,然后添加视频转换器。基本上,是从一个点开始,然后根据需要向外扩展(通常是通过用户反馈)

相反,“优雅降级”则相反,例如,您建立了一个功能太多的网站-您可以使用优雅降级的过程来慢慢剥离不必要的功能并增强重要的功能。编辑:把它想像成一个网...您开始想要尽可能多地捕获,然后围绕实际捕获的内容进行收缩。

我相信,对于大多数项目而言,渐进式增强通常是更好的“模型”-因为很容易陷入永无止境的想法或“特征蠕变”的过程中。通过遵循渐进模型,您可以通过直接响应用户反馈并根据需要扩展来避免这种情况。但是,它确实需要一种更灵活的方法,因为很难了解最终目标……(但是很多时候,两个模型最终都在同一个地方,所以我认为从小处着手比较好)。

希望对您有所帮助,抱歉。

2
Motolix