今天忽然被唤醒了,像是武学菜鸟的顿悟。咱们所讨厌某些框架,讨厌作某些事情,也许是由于重复。css
细细想来,让重复的事情变得简单,不是颇有意思吗。vue
今天看了下 vue-cli 中 build 的一段代码(来源于 基于webpack3 的 vue-cli)webpack
// generate loader string to be used with extract text plugin function generateLoaders (loader, loaderOptions) { const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader] if (loader) { // loader = stylus/less/sass // loaderOptions = 咱们本身作的一些其余配置 // 这里的最底层都用了 css-loader,至关于咱们本身不用重复写这些东西 // loaders.push({ loader: loader + '-loader', options: Object.assign({}, loaderOptions, { sourceMap: options.sourceMap }) }) } // Extract CSS when that option is specified // (which is the case during production build) if (options.extract) { return ExtractTextPlugin.extract({ use: loaders, fallback: 'vue-style-loader' }) } else { return ['vue-style-loader'].concat(loaders) } }
它呢,能够让咱们简单地配置 stylus-loader/less-loader,我想,这样一段代码,简化了 webpack 的配置,也许,它就是 parcel 和 webpack4 的一些思想,它就是简化的思想。web
重复的事情让机器来作,回想起在万科的科技部门实习的时候,部门 Leader 说过的一句话。vue-cli
Gulp的做用主要是打包的自动化,重复的事情,压缩代码,用机器来作,提高了生产力。express
app.route('/book') .get(function (req, res) { res.send('Get a random book') }) .post(function (req, res) { res.send('Add a book') }) .put(function (req, res) { res.send('Update the book') })
上面是 Express 官网示范的一些 API 接口,而我记得我曾经写的时候却将之一个个拆分,这其中多余的部分彻底能够用这种结构写的。sass
工做效率,代码的优雅,也许都靠这一些些简化。app
complete.框架