最近,ember.js的创造者之一Tom Dale撰写的文章,重新点燃了酝酿已久的关于对渐进增强需求的争论:
不过,我了解到一些不好的消息说:“渐进增强已死,少年。它已经成为过去。最起码对大部分Web开发者来说是这样的。”
渐进增强是一种Web设计策略,它强调可访问性、语义化HTML标记、外部样式表和脚本技术。渐进增强以分层的方式运用Web技术,从而让使用任何 浏览器或互联网接入方式的任何人,都能够访问Web页面的基础内容和功能;同时也面向使用更高级浏览器软件或更大带宽的用户,提供页面的增强版本。 随着浏览器厂家不断尝试创新和差异化,Web应用的表现能力和用户体验得到了持续提升。作为提供这些响应式应用的平台,浏览器的普遍可用性是令人信服的。 在争论的另一端,是Nicholas Zakas等人——他的演讲解释了让应用如此依赖JavaScript需要付出的代价;除了常见问题,针对与现代“SPA”应用中JavaScript过“重”有关的问题,他也在演讲中提供了分析和洞察,而且还给出了一些关于如何提供优雅地回退选项的建议。 从另一个角度看待这场争论的话,实际上我们今天所了解的Web,已经因为特定的架构特性得到了扩展。Stefan Tilkov在QCon上的一场演讲中,探讨了对JavaScript的需求是如何不引人注目。他建议应用拥抱Web及其架构特性,并将这种架构当作面向资源的客户端架构来参考。
那些JavaScript优先的应用,将会打破我们所熟知的Web。Jake Archibald是 一位提倡Google Chrome的开发者,他认为主要改变的特性将涉及分享、链接和导航;就此而言,拥有一个可以被Google、Bing等搜索引擎搜索的Web站点,将依 赖应用的这些属性。不过,并非所有应用都满足这些要求,例如基于浏览器的游戏、视频播放器等等就是例外。但他坚持认为,渐进增强依旧重要。 Tom Dale承认,在现代JavaScript应用中使用多种技术,有可能实现这些特性;但这一切应该永远是被实用主义所推动的。
|