关于前端build工具
第一、build工具的核心就是帮你安装和帮你做事。安装类工具:Npm、Bower、Yeoman等 做事类工具:Node、Grunt、gulp、Webpack等
安装类工具几乎什么东西都能装,它们可以用来安装前端库像Angular.js或是React.js;它们可以为你的开发环境安装服务器;它们可以安装测试库;它们甚至还可以帮你安装其他的前端开发工具。简而言之,就是任何你能想到的与代码有关的东西,它们都能安装。
做事类工具的目标则是,在web开发中帮你完成自动化。而每一些工具做的事情也不尽相同,一些工具,擅长处理那些你所指定的任务,例如Grunt和Gulp等工具;还有一些工具,只专注于做一件事情,例如Browserify和Require.js等工具。
第二、build工具的“祖宗”是Node和Npm。
Node和Npm负责安装和运行所有这些工具,基本在项目中都会有它们的身影。它们一个负责安装,一个负责帮你做事情。
npm可以安装Angular.js和React.js等库,它还可以安装服务器,让你的应用在开发阶段可以在本地运行。它还可以安装很多其他工具,帮你完成很多事情,例如简化代码。
而Node,则是帮你完成事情的,例如运行JavaScript文件,以及服务器等。
第三、build其实就是production-ready版本的应用。
开发时习惯把JavaScript和CSS拆分成独立的文件。
独立文件的好处,可以专注于编写针对性较强的代码,让每一部分代码只针对一个问题。但是当应用准备好被推向市场的时候,项目内存在多个JavaScript或是CSS文件并不是一个好主意。当用户访问你的网站的时候,每一个文件都需要独立的HTTP请求,这会让站点加载速度下降。解决方法就是,给项目创建“build”,它要将所有CSS文件合并成一个文件,然后再合并JavaScript文件。这样就可以将文件完成最小化。要想创建这个build,你需要使用build工具。
第四、“安装”和“做事”之间的界限有时会模糊 。
所有工具都是“安装”和“做事”的结合体。但是一般来说,一个工具会有自己的强项,或是强于安装,或是强于做事。有的时候,一个安装类工具也能运行文件。npm就是这样,它也能运行命令和脚本,不仅仅是安装文件。
第七、所有build工具目标都一样:通过对大量低技术含量任务完成自动化,让你的工作变得更轻。
使用build工具最大的好处之一,就是在保存了一个文件之后,你就能创建一个新的build,并且将其发送到你的浏览器中。它能够显著的提升前端开发流程的速度。
那么我们应该在配置和调试build工具的时候,应该付出多少精力?很简单,如果你对当前工具的效果感到满意,那就可以停止配置了。
关于前端build工具的更多相关文章
- 看完这篇让你对各种前端build工具不再懵逼!
本文原标题为:我终于弄懂了各种前端build工具 译者:@Christian 译文:https://www.sdk.cn/news/5412 原文:https://medium.freecodecam ...
- 前端构建工具之gulp_常用插件
gulp常用插件的使用 今天来看看一下gulp的常用插件的使用 就像gruntjs需要一个Gruntfile.js文件一样,gulp也需要一个文件作为它的主文件,在gulp中这个文件叫做gulpfil ...
- 前端构建工具gulpjs的使用介绍及技巧
gulpjs是一个前端构建工具,与gruntjs相比,gulpjs无需写一大堆繁杂的配置参数,API也非常简单,学习起来很容易,而且gulpjs使用的是nodejs中stream来读取和操作数据,其速 ...
- 前端模块化工具-webpack
详解前端模块化工具-webpack webpack是一个module bundler,抛开博大精深的汉字问题,我们暂且管他叫'模块管理工具'.随着js能做的事情越来越多,浏览器.服务器,js似乎无处不 ...
- Web前端开发工具总结
前端开发工具: web前端开发乃及其它的相关开发, 推荐sublime text, webstorm(jetbrains公司系列产品)这两个的原因在于,有个技术叫emmet, http://docs. ...
- 前端构建工具gulp介绍
2016年3月3日 10:46:08 晴 前端构建工具gulpjs的使用介绍及技巧 gulpjs是一个前端构建工具,与gruntjs相比,gulpjs无需写一大堆繁杂的配置参数,API也非常简 ...
- 前端见微知著工具篇:Grunt实现自动化
转载说明 本篇文章为转载文章,来源为[前端福利]用grunt搭建自动化的web前端开发环境-完整教程,之所以转载,是因为本文写的太详细了,我很想自己来写,但是发现跳不出这篇文章的圈子,因为写的详尽,所 ...
- Gulp.js----比Grunt更易用的前端构建工具
Gulp.js----比Grunt更易用的前端构建工具 Grunt一直是前端构建工具,然而他也不是毫无缺陷的,gulp的作者 Eric Schoffstall 在他介绍 gulp.js 的 prese ...
- 前端自动化工具 -- grunt 使用简介
grunt作为一个前端构建工具,有资源压缩,代码检查,文件合并等功能. 下面就简单了解grunt的使用. 一.环境配置 grunt是基于nodejs的,所以需要一个 nodejs 环境,未了解的可以 ...
随机推荐
- 优化定时器NSTimer-runloop使用
参考文档:http://www.cnblogs.com/junhuawang/p/4647559.html - (void)viewDidLoad { [super viewDidLoad]; ...
- php 对象中连贯执行方法
连贯操作的重点是返回当前对象,以便可以继续执行 class Ceshi{ public $str = ''; public function f1($a){ $this->str .= $a; ...
- 关于Android 打开新的Activity 虚拟键盘的弹出与不弹出
关于Android 打开新的Activity 虚拟键盘的弹出与不弹出 打开Activity 时 在相应的情况 弹出虚拟键盘 或者 隐藏虚拟键盘 会给用户非常好的用户体验 , 实现起来也比较简单 只需 ...
- java class的property的get和set方法生成规则
package rh.intellicareAppServer.dao; public class test { String aA; String aa; public String getaA() ...
- C++11实现生产者消费者问题
生产者消费者问题是多线程并发中一个非常经典的问题.我在这里实现了一个基于C++11的,单生产者单消费者的版本,供大家参考. #include <windows.h> #include &l ...
- CSS第二章
1. 文本与字体属性: text-decoration:文本修饰线 none(去除修饰线).underline(下划线).overline(上划线).line-through(删除线) color: ...
- 安卓通用shell大全
一.[什么是shell] Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口.它是命令语言.命令解释程序及程序设计语言的统称.shell是用户和Linux内核之间的接口程序,如 ...
- Ping出现TTL expired in transit的原因
今天上班检查服务器时发现出现TTL expired in transit的提示,这种提示还是第一次见,如图: ping 和 tracert 的结果 用tracert来看路由状况,原来是出现路由环路导致 ...
- 二模12day1解题报告
T1.笨笨与电影票(ticket) 有n个1和m个0,求每个数前1的个数都大于等于0的个数的排列数. 非常坑的一道题,推导过程很烦.首先求出所有排列数是 C(n+m,m),然后算不合法的个数. 假设存 ...
- leetcode-【中等题】2. Add Two Numbers
题目 You are given two linked lists representing two non-negative numbers. The digits are stored in re ...