为啥大学三四年培训几个月连份前端的实习都那

2018-03-08

  状态能够被不同组件之间共享。(早期的React中使用Props一层一层地传递或者通过公共父节点来传递。vue使用单向数据流的方式)

  oocss的特点是把样式分解为小的样式,通过小的样式之间的组合来渲染元素,这样样式的复用性很强,但是元素上写了太多的类名,也着实不美观

  传统的css,在没有css3新加特性的情况下,实现一些特殊的效果,是比较复杂的;而css3本身是很好的,但是由于各大浏览器厂商呀,又得使用hack来兼容多浏览器;

  css in js 目前还处于争议阶段,这个改变的就是我们的页面书写习惯了,原先是以html元素为主,后添加样式,而css in js 则正好相反,以带有样式的元素去构建页面,当然css in js 也有不同的实现方式,有style,也有inline-style等等

  Gulp:基于流的自动化构建工具,相对于百度的Fis,就类似于sublime和ide的区别吧,而对比Grunt,Grunt 运用配置的思想来写打包脚本,Gulp 是用代码方式来写打包脚本,并且代码采用流式的写法,即gulp.task(),对于项目开发还是推荐Gulp,轻量,灵活;随着模块化和SPA应用的项目越来越多,全新的webpack3(webpack2其实刚出世没多久)或许是更好的选择;

  CSS是一个页面的衣服,年代在变化,时尚在流行,从CSS,到CSS3,到Sass/Less/Stylus,到CSS Modules,再到PostCss, 以及CSS in JS,而你或许还光着大膀子,使用着css,为了兼容lowB浏览器,还不敢使用css3,好吧,如果你这样,看我眼神→_→

  CSS preprocessor技术,如sass,less,stylus等等预先处理css,编辑成我们想要的样式,同时在css中加入了部分js语法,更加方便书写css;

  这是属于jq的时代,直到后来我的膝盖中了一箭,没错,箭是Angularjs射出的,当然这之间还有一些历程,比如Backbone.js的出现再到Angularjs,从mvc模式到mvvm的过渡,不过这已经是很久之前的事了。

  布局由原先的Table(原始时代,庆幸没经历过)到Float + Position布局,之后是使用百分比和Rem实现的自适应布局,典型的有Bootstrap;之后是@media实现的响应式布局,到现在流行的Flex布局,以及Grid布局.

  ooscss通过继承来实现元素类名的减少化,当然实际开发中,也不会出来这么分离的类,因此ooscss对于组件化开发还是比较友好的

  ajax的出现可以说对前端是一次关键的转折,爱彩秒速赛车提出了一种新的开发方式;数据请求的发展也两年由于复杂业务的逻辑实现,使得传统的Ajax使用起来比较繁琐,比如callback hell;因此出现了Promise,可以通过链式调用的方式来实现callback,我以为这样的改进已经最好的了,直到我看见Es6的Generator/yield 和 async/awite,WTF,像写同步代码一样写异步请求,可以这么简洁,其实就是语法糖而已,但是这个糖比较甜(*^▽^*)

  随着前端从随意化到工程化的演变,其特征更加的表现为:视图组件化、功能模块化与状态管理,或许状态管理你并没有在使用,但是为了以后项目的扩展,还是预留一下接口;在项目比较小的时候,我们经常把一些数据放在localstorage中,其实这就是简单状态共享,而当项目复杂起来之后,再使用localstorage就显得不那么得心应手了,我们就需要引入一个专门管理状态的一个框架,首先这个框架的特点得有:

为啥大学三四年培训几个月连份前端的实习都那么难?找这里告诉你秒速赛车

  Webpack:Webpack 是一个打包工具,能将多个资源模块打包成一个或少数文件;而Gulp/Grunt自动化构建工具并不能把所有模块打包到一起,也不能构建不同模块之间的依赖图,Webpack通过loader 和 plugin可以做一部分 gulp/grunt 能做的事,但是插件还是不如 gulp/grunt 的插件丰富;Webpack最复杂的地方就是配置了,这个多踩几个坑,就好了啦。最近又看到了Parcel,零配置哦,对于新晋小将,抱着观望的态度,为何不去尝试一下呢

  oocss是把css看成一个单独的css样式,更宽泛的说,本身css就是oocss,因为每一个样式都可以独立出来,不过这样并没什么用,下面是一个按钮的例子:

为啥大学三四年培训几个月连份前端的实习都那么难?找这里告诉你秒速赛车

  postCss不是一个预处理器,而是一个平台,我们可以在上面直接添加我们想要对css文件处理的插件,就可以生成相应的css,ADC前端电路的五个设计步骤爱,比如有了 Autoprefixer,你不再需要担心前缀选择了,有了Stylelint 可以检测css中的错误,使用cssnano压缩css文件等等;

  清晰明了的结构,但是如果层级越深,类名就越长,当然我们也可以简写,或者只取父元素和祖父元素的类名,另一个问题,页面布局调整,就需要调整好多相关样式,而且复用性极差

  BEM是一种很好的规范,我们从名字上就能看出来这个类名的作用,但是也很容易被滥用,很容易会被写成B-E-E-M,类名太长,这样就不合适了

为啥大学三四年培训几个月连份前端的实习都那么难?找这里告诉你秒速赛车