中国码农网

您现在的位置是:网站首页>Css

Css

2016年前端开发者深度调研

码农是干什么的2024-03-14Csscss页面
2016年前端开发者深度调研,css页面,css图片透明度,大概一个月之前,我启动了2016Front-EndToolingSurvey,截止到今天,共有15名开发者参与了该调查,这里要郑重感谢下所有参与的同志。与上一年的调查相似,本调查目的

2016年前端开发者深度调研

   大概一个月之前,我启动了2016 Front-End Tooling Survey,截止到今天,共有15名开发者参与了该调查,这里要郑重感谢下所有参与的同志。与上一年的调查相似,本调查目的为发现前端开发者们到底在他们的技术体系中使用怎样的技术,最终对于整个前端社区的潮流风向有一个总览体现。

   在上表中可以发现,大部分的参与者表示它们在前端之路上走了2~5年或者5~10年,换言之,超过%的开发者有2~10年的经验。另外,可以发现5年之内的开发者与5年之上的开发者各占一半,这一点表明本调查的对象分布较为平均。

   第二个问题是关于参与者们如何估算他们自己的CSS技能熟练度,这个问题还是挺主观的,不仅依赖于参与者本身所处的技术氛围,还受到自身谦虚程度的影响。原问题是:你如何给自己的CSS以及相关技能评分?结果如下:

   表中结果可以看出,大概.%(css背景透明)的参与则觉得他们对于CSS的掌握长度在中级及以上。这个结果可以从多个维度解析,一方面可以看出虽然不少开发者在前端上涉足时间不多,但是他们觉得对于CSS已经能够较好的掌握。另一方面这也反映了相较于Ja与HTML,CSS会更易于掌握一点。不过我觉得也很有可能不少的开发者尚不能真正理解CSS的纷繁复杂之处,或者受不能分清其语法与我们真实应用中的方法论之间存在的一定差异。

   本问题为你使用哪个CSS处理工具,我们在去年也问过这个问题,当时Sass是最的CSS处理工具,其在今年仍然独占鳌头,遥遥领先。而与之相对的,使用Less的开发者数量有了较大的回落。在今年的统计中我们加入了PostCSS,大概有8.%的开发者会使用PostCSS相关的技术,这个比我们预期的略低,不过估计是因为很多人将其与其他处理工具混合使用而忽略了它的存在。另外,在下面的结果中我们可以看出,不使用任何CSS处理工具的开发者数量也在逐年减少,说明掌握合适的CSS处理工具的用法已经日渐成为现代前端开发者的必备技能之一。

   本题是Q3的一个延伸,主要于开发者对于各种CSS处理工具的使用体验。

   该统计结果与Q3相去不大,Sass仍然拥有最多的使用者,并且获得了的使用满意度。

   下一个问题是有关于开发者对于CSS命名方案的使用情况,CSS本身的模块化与工程化程度不高,我在自己的项目中使用CSS命名方案也有数年之久,不过我也很好奇其他前端开发者是如何看待这件事的。Q5的原问题为你是否使用过某个譬如BEM或者SUIT这样的CSS命名方案?

   结果还是让我有点震惊的,使用过某种命名方案的与从未用过的差不多一半对一半,不过还是有超过%的开发者是听说过CSS命名方案及其相关概念的。不过如果我们与上面的统计结果结合起来看,在Advanced及以上级别的CSS开发者中使用CSS命名方案的开发者大概占了.%,而Intermediate及以下开发者中使用比只有27.%。我自己是觉得CSS命名方案会日益受到欢迎,我也会在未来的调查中跟踪该指数。

   Q6是关于CSS样式检查的,原问题为你是否使用过工具来检查过你的CSS代码样式风格,结果如下:

   与上一个问题类似,使用过样式检查工具的开发者与未使用过的差不多也是一半对一半,并且CSS技能等级越高的开发者越会选择使用某个Lint工具。CSS Linting在工具与使用上可能仍是个较新的概念,目前人们可能更习惯于Ja Linting。不过我还是比较看好像Stylelint这样的样式检查工具会日渐为开发者所使用。

   下面三个问题都是关于CSS工具与常见方法论的使用体验,本题的原题目为请指明你对于下述CSS工具的使用体验:

   从上表中可以看出,Autoprefixer以.%成为体验的CSS工具之一,不过当我们仅考虑某个工具在使用过的人群中的满意度时,Modernizr以.%的比例高居榜首,Autoprefixer以.%位居第二。而在上述的这些工具中,大概%的开发者尚不知道Stylelint与Susy。这一点也能看出无论是哪个等级的开发者,要想随时保持对所有工具的掌握也几乎是不可能的。

   下一个问题是开发者对于下列所有的CSS常见方法论与命名空间的使用体验:

   在上表可以看出,BEM算是目前,也是使用体验的CSS命名方案之一,基本上在线%的人表示很满意。不过令我震惊的是,对于OOCSS等常见的CSS方法论有所了解的开发者数量占比仅有不到30%,即使在那些Advanced或者Expert级别的开发者中,没有任何一项方法论的使用度超过了20%。

   这是关于CSS部分的最后一个问题了,它是关于开发者目前在其项目中使用过哪些CSS方法论或者工具:

   根据参与者的反馈信息,我们可以发现Autoprefixer、BEM以及Modernizr算是最为流行的CSS开发中的辅助工具。另外,尽管在上一个问题的调查中单个CSS方法论的使用度不高,但是总体来看有超过40%的开发者在他们的项目中使用了ACSS、OOCSS、Atomic Design、ITCSS或者CSS Modules中的一项。这里令我比较惊讶的是对于CSS模块化框架的使用度远高于其他类型的框架,结合以上几个关于CSS问题的答案,不难发现目前开发者对于CSS的写法还是很广泛的,并没有形成一套被社区广泛任何的统一方案。另外,我们也会发现有很大一部分自认为熟手的CSS开发者不满意于现在流行的CSS方法论与工具。

   最后,笔者还是想强调,尽管CSS时一个非常简单的语言,但是想要彻底的掌握与理解还是具有一定难度的,千万不能因为其易于上手就忽视其复杂度。

   本问卷第二部分是有关于参与者的Ja技能,css p个问题与CSS类似,就是你是如何给自己的Ja技能评级?

   开发者对于自己Ja技能评级的分布于CSS的评级类似,不过相较于CSS,更少的人认为自己达到了中等或以上水准。

   在上面的统计表中,可以看出Gulp以超过40%的使用率位居前端Task Runner首位。不过对比2015与2016,我们可以看出越来越多的开发者选择NPM作为其Task Runner工具,这反映了越来越多的开发则希望能够简化他们的编译任务,从而避免Gulp或者Grunt这样的工具带来的抽象漏洞。还有一个比较有趣的,不使用任何Task Runner的开发者数量也有了较大的回落,与前一年相比减少了8.%,这也表现了在项目中使用某个Task Runner已是前端开发者的主流选择之一。

   这算是笔者最关心的问题之一,也是2016年前端硝烟四起的主战场之一。在2015年的调查中,React相较于Angular还是新人一枚,而现在Angular 2.0的正式版也已发布,但是又会有多少人愿意迁移到Angular 2呢?结果如下:

   在今年与去年的调查中,jQuery都以较大优势领先,有接近%的开发者享受使用jQuery的开发过程,而接近%的开发者表示都曾经使用过jQuery。而Underscore与Loadash都有接近40%的开发者表示赞赏。当我们要选择2016年最令人震撼的框架,React社区的迅猛发展成为非常引人注目的变化。React不仅与Angular 1并驾齐驱,还超越了当年Angular 1的满意度。另一个有趣的小细节就是Angular 2版本推出的如此之慢,差不多20.19%的开发者表示听过Angular 2,但是只有5%左右的开发者表示觉得用起来很爽。虽然可能随着时间的推移Angular 2的使用者会逐渐增加,但是很难说它还能达到当年Angular 1的盛况。如果我们从整个MV框架的角度来看,今年有大概.23%的开发者会选择使用某个MV框架,与去年相比有12%的增长。就如我去年所述,掌握至少一个框架会是前端开发者的必备技能之一。

   笔者在2015:我的前端之路提及从以jQuery为主的命令式编程到MV*形式的声css类