从零开始认识自动化构建

我们日常开发自动化构建伴随着我们从开发到上线,那么自动化构建到底是个什么东西?
自动化构建使开发者尽可能脱离运行环境兼容所带来的问题,在开发阶段使用提高效率的语法、规范和标准
通俗一点说,比如我们日常开发中可能会使用scss/sass等,他们无法被浏览器所识别,而我们自动化构建就可以让其编译成为兼容多端浏览器的可识别的css语句

自动化构建初体验

  • mkdir build-automation & cd build-automation

  • yarn init

  • 写一个最简单的代码结构


    image.png
  • yarn add sass --dev

  • 使用npm scriptpackage.json内加入"scripts": { "build": "sass scss/index.scss css/style.css" }

  • 运行yarn build,会发现根目录会生成一个css的文件夹,里面有着编译过后的css文件

  • 下一步 让代码在本地起一个测试服务器,运行起来

  • yarn add browser-sync --dev

  • package.json script内增加"serve": "browser-sync ."

  • 执行 yarn serve 会发现代码运行起来并且打开了浏览器
    我们还可以利用npm-run-all生成一个更加完善的自动化构建工作流

{
  "name": "start",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "scripts": {
    "build": "sass scss/index.scss css/style.css --watch",
    "serve": "browser-sync . --files \"css/*.css\"",
    "start": "run-p build serve"
  },
  "devDependencies": {
    "sass": "^1.32.8"
  },
  "dependencies": {
    "browser-sync": "^2.26.14",
    "npm-run-all": "^4.1.5"
  }
}

之后执行 yarn start,会先执行build,后执行serve, 并且会watch scss文件的变化编程到css文件中,serve的服务也会监听css文件的变化渲染到页面上。

常用的自动化构建工具

  • grunt
    如果对某种文件执行多种构建手段,会多次读写文件,导致构建时间很长。比如sass文件编译、增加私有前缀(data-xxx)、压缩等,都需要多次读写临时文件。
  • gulp。解决了 grunt构建慢的情况, 执行的各个阶段是在内存中处理的,并且可以并行执行任务。
  • fis。 fis是百度前端团队推出的, 集成了多种项目中遇到的情况的解决方案。

而webpack 不是纯正的自动化构建工具,属于模块打包工具,我们将在以后的文章中介绍

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 自动化构建 一切重复的工作都应该被自动化自动化构建是前端工程化过程中一个重要的组成部分自动化构建工作流可以使我们在...
    彪悍de文艺青年阅读 369评论 0 0
  • 简介 自动化构建是前端工程化的一个重要组成部分,将源代码转换为生成代码;这样就可以在开发过程中使用提高效率的语法、...
    翔子丶阅读 436评论 0 0
  • 自动化构建就是用机器代替手工,把开发的源代码转换为生产环境可运行的代码。这个流程叫自动化工作流。让我们可以脱离运行...
    lowpoint阅读 656评论 0 2
  • 工程化概述 前端工程化事指遵循一定的标准和规范,通过工具去提高效率、降低成本和质量保证的一种手段 前端开发中遇到的...
    油菜又矮吹阅读 687评论 0 0
  • 什么是自动化构建 通过机器代替手工完成一些工作,目的是能使用提高效率的语法,规范和标准。 比如一些es6+,sas...
    洲行阅读 406评论 0 0