Booster 发布会

@CSS魔法

2016. 07. 01.

  “ 打造实用工具 · 改善开发体验 ”(第二波)

Booster

 下一代·前端开发环境

  • Booster 想解决什么问题?
  • Booster 如何解决这些问题?
  • 如何使用 Booster 改善开发体验?

(50 分钟)

Booster 想解决什么问题?

在开发阶段

  前端构建慢!

问题来了:为什么慢?

内网

本地

编辑器

浏览器

本地

文件

修改

自动上传

监听任务

(FEB)

请求静态资源

读取

返回

获得静态资源

开发者

  • 两条线
  • 两条线的时间差
  • 链条过长
  • 构建任务性能不高

(开发阶段)前端构建的现状:

“时间差”:

现状

Booster

修改并保存

刷新浏览器

保存 (≈0s)

上传 (2~5s)

构建 (2~10s)

监听触发构建 (0.5s)

保存 (≈0s)

t

如何做到?

Booster 如何解决这些问题?

内网

本地

编辑器

浏览器

本地

文件

修改

请求

返回

开发者

Booster

读取

编译

Booster 与现状的对比:

现状
两条线
两条线的时间差
链条过长
构建任务性能不高
Booster

两条线

没有时间差

链条短

按需构建

目前 Booster 能处理的静态资源:

通过 Stylus 编译的 CSS

通过 Script Bundle 打包的 JS

通过 ES6 模块打包的 JS

基本囊括手机站的所有开发场景!

(手机站)

(手机站)

(手机站)

如何使用 Booster

  改善开发体验?

  • 安装 Node.js
  • 本地仓库安装必要的 npm 依赖
  • 本地浏览器配置代理规则

准备工作:

$ npm install --production

本地仓库安装依赖:

(先进入本地仓库的 ■■■■■■/■■■■■■/ 目录)

浏览器配置代理规则:

(把对 s.***.baixing.cn 的请求打到 Booster 的服务)

浏览器配置代理规则:

(把对 s.***.■■■■■■.■■ 的请求打到 Booster 的服务)

安装 Booster:

$ npm install -g booster-cli

初始设置:

$ booster -u peter -r /path/to/project

(指定你在开发服务器的用户名和本地仓库目录)

常规使用:

$ booster

(启动 Booster 服务)

(Demo)

Yeah, it's Booster v1.

但是……

刷新浏览器

    其实一点儿也不优雅!

Booster v1 有个问题:

“ Live Reload ”

Booster v2 的解决方案:

  • 文件变更直接触发浏览器更新
  • 正确识别资源依赖关系

内网

本地

编辑器

浏览器

本地

文件

修改

推送

开发者

Booster

监听

编译

Booster 与现状的对比:

现状
两条线
两条线的时间差
链条过长
构建任务性能不高
Booster v1

两条线

没有时间差

链条短

按需构建

Booster 与现状的对比:

现状
两条线
两条线的时间差
链条过长
构建任务性能不高
Booster v2

一条线

没有时间差

链条短

按需构建

Live Reload 的支持范围:

基本囊括手机站的所有开发场景!

通过 Stylus 编译的 CSS

通过 Script Bundle 打包的 JS

通过 ES6 模块打包的 JS

(手机站)

(手机站)

(手机站)

(Demo)

  • 配置文件变动后自动重新读取
  • 编译出错时不会挂
  • ……

Booster 的其它优势:

Credits

  • 主程
  • 设计
  • NProxy
  • NProxy-Plus
  • Socket.io
  • ……

鸣谢以下开源项目:

FAQ

  • 公开测试:7 月中旬
  • 正式发布:今年秋天

“ 啥时候能用上?”

  • 公用配置文件
  • 编译工具版本同步

“ 如何保证构建结果的一致性?”

  • 产品级的可用性
  • 编译错误推送
  • 支持 TypeScript
  • 支持 Webpack + Babel 6 (?)

“ 接下来的开发计划?”

手机站全覆盖!

“ 为什么不支持 Web 站?”

说起来比较尴尬……

  • 成本太高
  • 接受 Pull Request

“ 开源吗?代码在哪里?”

公司内网 GitLab

■■■■■■.■■■■■■■.■■/booster/booster

Q & A

Thank You!

Booster 发布会

By CSS魔法

Booster 发布会

“打造实用工具 · 改善开发体验”(第二波)

  • 123