你产生少年以上的前端开发经验也?你会就此 Sass 和 Autoprefixer
等高等的CSS辅助技术也?你的 JavaScript 知识是否融汇贯通,你是否好使用
Gulp , npm 和 jQuery ?如果是这么,根据 Ashley Nolan
的前端问卷调查,你是一个典型的前端开发工程师。
01谎言,该生的鬼话,统计数字和查问卷
谎话,该大的弥天大谎,统计数字(英文:Lies, damned lies, and
statistics),是平句子著名的西方谚语。主要讲述数字之说服能力,特别是因此来讽刺一些采用统计数字支持、但毫无说服力的分析报告,以及众人倾向于贬低那些休支持其立场的统计结论。
维基百科
这般的调研有助于你意识新工具和而的学识短板。至本文撰写时,本次问卷调查收到了5,254客对,这是较大多数民意调查更具有样本价值。但是,调研结果是否代表真相要应该抱审慎态度。。。
全球性的统计结果
这次问卷调查是全球性的,但将重要根源英语国家。
在其他地方付出或行使的兴工具或吃忽视。
开发人员知识
本次问卷调查呼吁经验丰富的开发人员对调研问题发深刻理解并且发生日,有趣味去得本次调查。
83% 的受访者有零星年还是少于年以上的前端技术经历,只有 5%
的受访者不交均等年前端经验:
备比较逊色前端技能的开发人员不太可能完成此次问卷调查,因此结果也许会见相应偏离。
见跟偏见
接访给求判定自己之水准。有些人或者较谦虚,有些有选择困难综合症。有些人恐怕大估计了和睦的水准,因为她俩可能是如出一辙浩大新手程序员团队中绝无仅有前端开发人员。自我偏见的偏向可以叫平均,但未曾章程证明。
过去的表现未代表未来之方向
调查结果突显了开发人员已经下的家伙。这并无代表这些家伙是行得通的,可以节省时间或用于未来底路受到利用。
02CSS
63%之开发人员将她们协调的CSS知识评为高级或专家水平:
虽说 CSS 是一个看似简单的 属性 和 值 的键值对聚集,但是 CSS
是鲜明地难以掌握。
CSS3引入了同等文山会海初成效,并且愈来愈难以控制有的知。例如,我本着新的
CSS网格模块 知之甚少,还有当开发 Flexbox
布局时经常需要阅读手册(或自由尝试性的施用各种性能和价值)!
10%底受访者确认不至同年之开经历,却声称已经控制高级的CSS知识!我狐疑他们快便会意识及,懂的尤为多,意味着非掌握的吧尽管更多!
CSS 预处理器
超过 63% 的受访者使用 Sass – 无可争议的预处理器冠军。8%底受访者还利用
PostCSS,虽然她一般和另外预处理器结合使用以供行之有效之功能 –
如AutoPrefixer( 65% 的受访者采用)。
近 14% 的受访者未采取预处理器,而再爱好以原始 CSS
代码。当您以为它们是绝简易的(和极好之)开始前端开发的主意时,这个比例似乎发生硌没有。如果
86% 的开发人员使用 CSS
预处理器,我预测平均每个网站的CSS文件要应该低于7.2单。
近 70% 的受访者尝试了 Less ,19% 的受访者尝试了 Stylus 。80%
从未听说了 Rework。
CSS 命名方案
46% 的受访开发人员使用命名方案,但是对那些拿 CSS
水平自评价也高级或专家级别的口吧,这无异于百分比起及 57% 。
不过被欢迎的选择是 BEM ,占40%,其次是 CSS模块(CSS
Modules)(16%),OOCSS(15%)和 SMACSS(13%)。
其它CSS工具
当前 39% 的种蒙正在以 Modernizr
。这像让人惊讶,因为她的主要用途是匹配大部分业已让弃用的老本子IE。(Microsoft已为2016年1月终止支持IE10与以下版本。)
14% 的受访者使用 Stylelint
来检查CSS有效性。这不啻很没有,但最流行的IDE和编辑器有一些好像之 CSS
检查,所以可能没必要。
23% 的开发人员不使用其它CSS工具要命名方案。
03JavaScript
一经您当 CSS 的各种工具已经生混乱了,欢迎来到迷人的 JavaScript 世界!
JavaScript 开发人员比较谦虚,51% 的受访者认为好的JavaScript
知识及了高档或专家水平:
仓库和框架
尽管发生相关性的质疑,超过 99% 的开发人员在好几时段下 jQuery,并且 31%
的受访者认为针对群路以来 jQuery 是必备的。70%
的受访者在当下色被持续运用 jQuery ,这和 W3Techs 观察到之数貌似:
框架情况再度令人困惑:
-
业已出 38% 的依存项目采取了React。然而,只有 29%
的开发人员使用她感到舒畅,18%
的受访者觉得它们是少不了的。只有0.1%底网站于察觉在利用React,但要记住,调查结果是由前端开发人员采集的
– 而不是具备的Web开发人员。 -
产生 25% 的种类动 Angular 1,虽然独自发生8%的食指认为其是不行替代。Angular
2则相对受冷落,只比8%基本上或多或少。只发生3%之人以大部路遭到利用它。 -
Vue.js 已经为 10% 的路采取,但点滴 6%
的开发人员对框架感到舒适,3% 认为她是必要的。
对于过年底问卷调查,这个题材或有效:“你是不是放弃了一个框架或以类型受到切换框架?
尽管有大量之JavaScript专家,只有 21%
的丁觉着框架不是必须的,并甘当编写原生代码。这是一个虑的统计数据吗?30%
的开发人员认为她们的框架抽象技能集可以满足他们的整套需求?
职责执行器和模块打包工具
Gulp是最好要命之胜者,接近 44% 的开发人员在采取。然而,更简约的 npm scripts
脚论在2016年增加了 23% ,达到 26% 。
Grunt 已失去了优势,跌落至 12%。另外,9%
的受访者选择了未利用任务运行器。
那些使用模块打包工具在2016年增了 20%,达到 68% 。 Webpack
是最为流行,占 31% ,Browserify 也 11% ,RequireJS 为 8% 。
我死去活来奇异,“其他”模块打包工具占不顶
4%,当有几只任务运行器插件可以再简单的保管依赖关系,例如 gulp-deporder
。也许缘每个开发人员都于采取JavaScript 转译器…
ES6顶ES5的转译器 (transpilers)
62% 的开发人员正在使用像 Babel 之类的家伙,将精简的 ES6
代码转换为旧版浏览器支持之 ES5 代码。
31% 的人数听说过可能性,但从没下工具,和 7% 从未听说了是词。
这数字像相当强。Internet Explorer 和始终的应用程序不支持时的
JavaScript 语法,但是倘若您如果修 ES6 代码,为什么还要支撑她们吧?
一经您真要支持 IE11 及以下版本,编写 ES5 代码不是再次易吧?
其他JavaScript工具
41%的开发人员使用 ESLint , 19% 使用 JSLint 和 14% 使用 JSHint
来检查他们的代码的有用 – 例如缺乏括号,省略分号,格式缩进等。
23%之受访者未动代码检查工具 –
虽然,也时有发生或他们拄他们的文本编辑器或 IDE 来发现最重的语法错误。
动测试工具的用户在同样年吃增强了 12% ,达到了 52% 。
史及,JavaScript 测试一直是一个挑战。
比如测试驱动开发(TDD)等技巧可以捕获逻辑问题,但切莫克解决异步事件遇到的问题,例如当
UI 在特定浏览器中执某种意外操作时。
幸运的是,行为让开发(BDD)的可能性就冒出,以检查在真的浏览器中之移位,并要前端测试再次有着可行性。
最盛行的体系发生:
-
Mocha – TDD/BDD (23%)
-
Jasmine – BDD (17%)
-
QUnit – TDD (4%)
-
Jest – TDD/BDD (3%)
-
Ava – TDD/BDD (2%)
最终,有 94% 的受访者使用 npm – Node.js 的保证管理器。出乎意料,有 32%
曾经使用了 TypeScript 。
04卿在2017年应该利用啊?
有关 CSS,Sass 的学识,PostCSS 和 BEM
很明朗是必要的。也就是说,开发之多样性很宽泛。我建议乃研究一些预处理器和命名方案,以便了解每个工具得以兑现啊
– 即使是你选择无动她。
JavaScript 方面的家伙不顶好说。有一些鲜明的特色跟可行性:
-
Node.js 和 npm 将转移得要,因为你以的工具记得上且是 Node.js 和
npm 实现管理的。 -
Gulp 以及/或 Webpack 也值得尝试一下。
-
刺探ES6,即使你还是以通往后相当的 ES5 项目达成行事。
自身未曾羡慕那些尝也新品类选用类库或框架的丁。从调研结果来拘禁,jQuery是醒目是太被欢迎的。然而随着
IE 的消解,jQuery
的超常浏览器支持变得没有那要,并且多功能就同浏览器原生 API 和 CSS
重复。
你可以选一个框架,如 React,因为它们怪为欢迎 –
但这并无意味着她便适用于公的应用。即使 React
将最后给再度好,更可以之东西取代。
自之建议:从多框架中摘有一个前,先读书HTML,CSS,JavaScript
和浏览器开发的基础知识。无论 JavaScript
社区如何评价如何工具集,这些文化将毕生受用。也许有一致龙,你甚至会修出一个伟人上之家伙,也改为各种框架中之等同各。
【我发生一个前端学习交流QQ群:328058344
如果你当攻前端的经过被相遇什么问题,欢迎来我之QQ群提问,群里每天还见面更新一些学习资源。禁止闲聊,非喜不进。】