- 包管理工具
- 所谓的包管理工具,其实就是把各种前端的库(类似于jquery、bootstrap这种的)打包存储在一个专门的服务器上,然后程序员开发时可以使用工具从服务器上下载这些包,放到自己的文件夹下。这样就不需要到处找各种框架的官方网站来下载了。
- 通常来说,包管理工具还允许你生成一个配置文件,配置文件记录了这个项目中用到了哪些包。有些时候,把这个配置文件共享给朋友,他就可以下载你所指定的那些第三方库了。这在共享项目时很常见。
- 常见的包管理工具
- NodeJs本身的npm工具。
- bower。(随着npm功能越来越强大,逐渐被淘汰中)
- 项目自动化工具
- 在开发过程中,我们经常会遇到移动文件、合并文件、对JavaScript文件进行压缩、把LESS翻译成CSS放到指定的位置上之类的工作。如果每次修改源代码都把这些工作重新做一遍的话,会非常的浪费时间。所以,就有了将这些工序自动化的工具。
- 常见的项目自动化工具
- gulp。
- grunt。(逐渐变得不流行,被gulp以及其他替代。)
- webpack。(webpack不仅仅是一个自动化工具,但它也有自动化的能力,最近最流行。)
- CSS预编译工具
- 解决一些CSS存在的问题,比如LESS。总之就是一种被强化过的CSS语言,提供一些新的语法来完成一些更方便的功能。
- 常见的CSS预编译语言:
- LESS
- SASS
- Stylus
- 还有一种工具,虽然不是预处理,但也是对CSS文件做处理的:
- postCSS(将CSS文件输入,然后输出被处理过的CSS文件。比如说,输入的CSS不带-webkit-之类的浏览器前缀,但是输出时却带上了)
- JavaScript预编译工具
- 类似于CSS预编译语言,JavaScript预编译语言也是用于解决JavaScript现有版本中存在的一些问题的。
- 常见的JavaScript预编译工具:
- babel。(把ES6代码编译成ES5或者ES3代码,虽然都是JavaScript,但是ES6在语法特性上要更加的强大,解决了先前版本的不少问题)
- Typescript。(类型化的JavaScript,如果有时间我们可以提一下。另外,AngularJs2就是使用Typescript做开发的。)
- coffeescript
- dart
- UI库
- bootstrap大法好。总之就是类似于bootstrap的各种UI框架,通常都会包括CSS部分和JS组件部分。
- 这类库太多太杂,就不多提了。
- 模块化与模块加载
- 模块化的问题在现阶段很难讲解,总的来说就是一套组织JavaScript代码结构的思路。举个小例子:我们想要封装一个类似于jquery的库,可以先封装一个模块叫做core,用于管理代码整体结构;然后再封装一个模块selector,里面写的全都是选择器的功能;然后在封装一个模块ajax,里面全都是XHR、jsonp之类的功能;然后整体的结构就是,当我们需要ajax时就用ajax,当我需要selector时就用selector,然后这两个模块都需要core,core就会被自动加载……
- 好吧,看不懂就算了。关于模块化的内容,在NodeJs阶段的课程中会用大概一整天的时间来讲。这已经算是一种开发的思维方式了,需要一定时间来体会的。
- 现在常见的模块化框架有requirejs、seajs、webpack、browserfy等等,其中后两者比前两者功能更多。
- 网页应用框架
- 专门研究当页面局部刷新越来越多,单一页面的功能越来越复杂时,如何更好的组织代码、更方便地改变页面显示状态的框架。
- 常见的有AngularJs,React,VueJs,Backbone,Ember,KnockOut,Avalon……
- 它们的思路大部分都是“当需要显示的数据和页面状态频繁变化时,如何更加方便的更新页面上的显示”
前端这些高大上的名字
最新推荐文章于 2023-07-26 18:06:54 发布