周记01

之前对于每周总结,自己也在笔记上有记录,不过总是寥寥数语,不够详细。

介于此,打算开始以博客的形式,把每周学到的东西、遇到的问题、解决的难题以及生活中的见闻感受记录下来。

持之以恒,往后回顾之时,也提醒自己,光阴并没虚度-。-

技术

1、
目前,前端单页项目最常用的自动化构建构建工具是 webpack,之前做 vue 开发或者 react 开发,基本上都是使用 vue-cli 或者 creat-react-app 脚手架自动生成项目目录结构,当然 webpack 也是配置好的,然后再根据项目,对 webpack 配置文件进行简单的修改调整。然而,最终并没有对 webpack 有一个整体的认识,所以详细整理了一篇文章,来加深对 webpack 的认识。

文章链接

如何对 vue-cli 和 creat-react-app 脚手架生成的 webpack 配置进行修改,以达到加快项目打包速度?文章中也有说明。另外对优化打包速度的解决方案也进行了列举。

2、
单页项目有个弊端,那就是最后打包生成的 HTML 文件,里面其实是没内容的,在浏览器运行,页面内容的展示都是基于打包生成的 JS 文件,这样造成的后果就是

  • 页面打开要加载体积很大的脚本,影响页面加载速度,用户体验不好
  • 由于网页内容是空的,对搜索引擎不友好,不利于 SEO

之前采用的优化方案是这样的:

  • 分离出项目中的第三方代码:每次基本就是修改业务代码,第三方的代码基本是不用更改的,因此利用浏览器缓存,可以提升页面加载速度
  • 使用异步组件加载,也就是懒加载:调整 webpack 组件引入为动态引入,这样会对每个组件分别打包。好处就是网页初次加载,只需加载需要的组件脚本,可以加快网页的加载速度。

SEO并没有解决-。-

另外,单页项目的路由有hash、history 两种模式,hash 会使网页路径带有 # 号,很丑陋。如果直接改成 history 模式,不刷新页面的话,页面跳转是正常的,当一刷新页面,页面就404了。这时实际上是向服务器对应路径去寻找资源,而服务器那边其实是没有的,因为我们此时的开发思想仍然是 hash 模式。

针对上述待解决的问题,其实单页框架其实已经提供了解决方案,那就是 SSR(服务端渲染),Vue、react 开发文档都已提供了详细教程。

针对服务端创建 webpack 配置文件,为服务端打包一份项目代码,每次获取页面都是从服务端生成,然后返回。

这里遗留个问题:服务端环境采用的是 node,其他的服务端环境还没做深入了解。

3、
平时做的每一类项目,总是有相似的目录结构和配置,每次都手动去创建和配置很浪费时间。

于是,就仿照 vue-cli 脚手架,写了个命令行工具,接着把平常使用频率高的工具函数,做成 npm 包,最后发布到 npm 官网。

这样,每次项目启动,一个命令行即可生成对应项目结构,配置好通用内容,接下来就只用专心写业务代码了。

啊!真好-。-

4、
node 项目部署,只需要做以下几件事即可:

  1. 购置域名(国内需备案)
  2. 购置服务器
  3. 解析域名到服务器 ip
  4. 服务器安装 node 、npm、nginx,然后编写 nginx 配置文件,为域名配置代理
  5. 安装 pm2(node 进程管理工具):npm i -g pm2
  6. 接着访问域名即可浏览网站

5、
之前开发小程序用的是 wepy 框架,然后在使用了 mpvue 后,发现还是很方便的,毕竟兼容 vue 大部分语法,对于日常做 vue 开发的 coder 很友好。

6、
对于框架学习的一点理解:

  • 框架被开发出来,肯定是去解决某个问题。因此,在学习一个框架之前,先问问自己,这个框架解决了什么问题,是不是自己需要的,然后再决定是否学习
    • 这个阶段就是要知道它是什么,为什么出现这么个玩意
  • 决定学习之后,找到官方文档,学习框架的核心功能、API,本地 demo 演示,最后总结
    • 这个阶段就是让自己可以熟练使用框架
  • 学习框架的编程思想,原理(浏览源码)
    • 这个阶段是最难的,我们通过读源码,来掌握框架的实现原理,设计思路
  • 最后,如果能够提出更好的实现方式,那么你就是技术专家了

7、
无论针对哪个知识领域,它都是有一套完整的、成型的知识体系和标准作为支撑的,例如数学、建筑、医学、机械等等,当然包括计算机编程,其中肯定包括前端开发。

有了完善的知识体系,再来面对大量的信息获取,你就知道每个信息所说的知识点是属于知识体系中的哪个部分。同时,你也会很清楚自己哪些部分掌握的好,哪些部分掌握的不好,甚至哪些部分自己压根都没听说过。

生活

1、
自从入了程序行业,肚子上的肉像年龄一样,只增不减,已然九九归一,实在看不下去了(想当年可是八块腹肌呢),开始锻炼。

2、
加了个女孩微信,发现自己竟然不怎么会和异性聊天了,这似乎是个危险的信号。

估计是单身太久,天天和机器打交道,好气。接下来打算好好补习下这方面的知识,俺可不想孤独终生-。-

好好打理自己,早睡早起,做个好孩子-_-!

3、
路上,遇到好几对情侣,小姐姐很好看,而男的就差点意思了,也不知道是不是家里有矿-。-

4、
这周天气渐渐凉了,政府也颁布了一些政策,更是增添了一丝寒意。

和申狗板也畅谈了很多社会现状,行业形势等问题,也渐渐对未来的路有了一些方向-。-

郭金超
于浙江杭州
2018-09-16

amenzai wechat
扫一扫上面二维码,获取更多内容。
欢迎各位老板打赏