前端工程师总是喜欢超越极限,他们热衷于追逐各种最新、最优秀、最牛逼闪闪的用户界面框架及前端编程库。我们经常发现,他们一直试图缩小 Web 程序与原生程序之间的差距,而且,正是基于这个原因,他们已将用户界面的外观和行为变得越来越像一款原生程序。你可能会问,是哪一类应用程序?iPhone?Android?那个版本?这些问题都很好,只可惜和我们讨论的问题无关。与此同时,还有一类前端工程师,我们姑且称之为无聊的前端工程师。以下就是一首赞美他们的颂歌,如果你愿意的话,请简称他们为 BFED(boring front-end developer)。
BFED 认为,用户体验不可能完全相同。一个网站会被各种各样的浏览器访问,不管是微软最新研发的 gasp(微软为 Windows 10 设计的最新浏览器的暂定名),还是陈旧过时的 IE6,都有可能。应该尽量改进和提升应用程序的浏览器兼容性。BFED 觉得,放弃对一个或一类浏览器的支持,并不是什么英雄壮举。BFED 深知,忘记这些用户的存在,不仅会伤害他们的感情,而且会影响他们对公司或产品的认知。
当我们在判断是否有必要给现有的技术堆栈增加一个预处理器(如:LESS、SASS、CoffeeScript 等)的时候,BFED 认为,这是一个影响深远的选择,不只是“少写一点代码”的事情。对于一名刚加入团队的新手来说,这样做是否增加了额外的难度?代码调试是否变得更加困难?如果这些问题的答案是 “Yes” 的话,BFED 通常就会对预处理器说 “No”。
BFED 认为,用户的能力存在着不同程度的差异,即使是同样一台设备,无论是鼠标,还是键盘,或者其他什么东西,不同用户的使用习惯完全迥异。一个网站也是一样,它应该适应不同的访问者,这理应与他们使用设备的屏幕大小或者浏览器的能力无关。
BFED 愿意接受浏览器的各种限制和约束。他们认为,在一定程度上,适应性设计与用户环境探测的意义不大,因为这个世界本来就是可怕、荒唐且代价高昂的。
为了避免浪费时间,最好在设计用户体验过程的早期就让 BFED 加入团队。因为有些看似重要的复杂用户界面设计,实际上占用了大量时间,但是最终你将发现,简单的设计方案可能更为有效。
BFED 建议采用原生的表单控件,只有这样,才能得到浏览器的最大支持。这一点在移动端尤为关键,过度控制这些控件的外观,实际上对你的品牌和形象并没有太多好处。
BFED 还将建议,超链接应该看起来就像超链接,下划线必须保留,这样更方便用户识别。
BFED 在选择第三方代码时,决策依据是代码质量,而不是流行度。他们认为,代码质量比流行度更重要。
BFED 始终信奉以下格言:
“作为一名优秀的 JavaScript 工程师,我和我的团队将尽最大可能少写 JavaScript 代码。” - James Norton
更有甚之,BFED 认为, 单页应用程序容易引发一些严重的问题 ,应该极力避免这样的架构,可能的话,尽可能采用适当的服务器端技术,以便给用户提供更好的体验和呵护。
BFED 开发一个程序时,会根据问题的所在环境和实际情况,选择适宜的解决方案。他们不会为了方便他们找寻下一个工作岗位,而采用时髦的热门技术来提升自己的履历,从而达到最终提高自己的薪资待遇的目的。
你想要成为一名优秀的前端工程师吗?那就先变得无聊吧。
本文写作灵感来自 Cap Watkins 的文章 - 《无聊的设计师》 ,谢谢你。
作者: Adam Silver ,前端工程师,生活在英国伦敦。
原文: The boring front-end developer
感谢:Qingniu 帮助审阅并完成校对。