年度归档: 2024 年

  • 失掉网站后

    自从服务器切换到阿里云之后,个人网站就荒废了。有主观,有客观。主观,太忙啦,客观,之前是香港主机不用备案,londit挂掉后,就迁移到了阿里云,阿里云规定必须要备案才能访问,在之前出差长春的途中做了各种备案,将近三次,然后断断续续,一步一坑的修改备案申请。。发现以前的文章里面的图片都丢失掉了,今年2024终于备案成功了,可喜可贺。然后现在更新简历,发现,“呀,我啥都没有,啥都不会”做了深刻又虚假的自我批判。

    被前司IBM裁员后,既慌乱又窃喜,慌乱的是我失业了,大龄了,买房了,还总被HR问有没有结婚,技术啥都不会,debuffer重重,天昏地暗。窃喜的是这是唯一一家裁的我,还给了大礼包,真是不错。然后疯狂刷boss直聘,发现时光不再来,我已加不动班了。刷刷B站失业UP主,焦虑满满。只能边走着找工作,边刷博物馆

    最近刷了军事博物馆、国家博物馆、华侨历史博物馆、鲁迅博物馆、奥运博物馆。大家都不容易啊,继续奋往向前啊!

    历史就像是一条河流,那么绵绵不断的奔流,我也在其中,看华侨历史博物馆,感觉未来和中国关系好的国家可能为泰国、菲律宾、马来西亚和新加坡吧。中越的关系估计长期不会变好,已经被记载在历史博物馆了,因为越南20世纪70年代末的排华超过150万华人华侨难民进行二次移民,超过20万人死了。不上图了,华侨历史博物馆值得一看。

    发现看了不记录下来就好像时光流逝刷的一下,毫无记忆,一片空白过去了。

    最近找工作也碰到了骗子,在脉脉上让你下载teams,在招聘上遇到让你去马尼拉的什么工作的,需要谨慎对待。

     

  • 世界,您好!

    欢迎使用 WordPress。这是您的第一篇文章。编辑或删除它,然后开始写作吧!

  • vue.js设计与实现(1)

    之前工作中做项目用到了VUE,实现了几个项目的完整开发。基本是后台管理系统,有一些涉及到人员管理树tree、table、search等组件的构建和表单页面的校验,审批流程页面组件的建立等,项目的webpack的打包发布等。后来发现一些原理性东西并没有十分的清晰,把一些东西杂糅在了一起。看到霍春阳的这本书评分很好,特意借来拜读和实践,梳理一遍自己对于vue的认知。

    首先把所有内容做了一个脑图,是按照书中的提示做的。

    文字版本

    vue.js设计与实现

    第一篇框架设计概览

    第1章讨论命令式和声明式,虚拟DOM的性能状况。vvue.js 3.0是一个运行时+编译时的框架。

    第2章主要从用户的开发体验、控制框架代码的体积、Tree- Shaking的工作机制、框架产物、特性开关、错误处理、typescript支持等方面出发,讨论了框架设计者再设计框架应该考虑的内容。

    第3章从全局介绍vue.js 3.0的设计思路,以及各个模块之间如何协作。

    第二篇响应系统

    第4章从宏观介绍vue.js3.0的响应系统的实现机制。从副作用函数开始,逐步实现一个完善的响应系统,还讲述了计算属性和watch的实现原理,同时讨论了在实现相应系统的过程中所遇到的问题,以及相应的解决方案。

    第5章从ECMAScript规范入手,从最基本的proxy、reflect以及js对象的工作原理开始,逐步讨论了使用proxy代理js对象的方式。

    第6章主要讨论了ref的概念,并基于ref实现原始值的响应式方案,还讨论了如何使用ref解决响应丢失的问题。

    第三篇渲染器

    第7章主要讨论了渲染器与响应系统的关系,讲述了两者如何配合完成页面更新。渲染器的一些基本名词和概念,以及自定义渲染器的实现与应用。

    第8章渲染器的挂载与更新的实现原理,其中包括子节点的处理、属性的处理和事件的处理。当挂载或更新组件类型的虚拟节点时,还要考虑组件生命周期函数的处理等。

    第9章主要讨论了简单Diff算法的工作原理。

    第10章主要讨论了双端Diff算法的工作原理。

    第11章主要讨论了快速Diff的工作原理。

    第四篇组件化

    第12章主要讨论了组件的实现原理,介绍了组件自身状态的初始化,以及由自身状态变化引起的组件自更新,还介绍了组件的外部状态props、由外部状态变化引起的被动更新,以及组件事件和插槽的实现原理。

    第13章异步组件和函数式组件的工作机制和实现原理。对于异步组件,我们还讨论了超时与错误处理、延迟展示loading组件、加载重试等内容。

    第14章vuejs内建的三个组件的实现原理,即keepalive teleport和transition的组件。

    第五篇编译器

    第15章讨论vuejs模板编译器的工作流程,接着讨论了parser的实现原理与状态机,以及AST的转换与插件化架构,最后讨论了生成渲染函数代码的具体实现。

    第16章主要讨论了如何实现一个符合whatwg组织的HTML解析规范的解析器,内容涵盖解析器的文本模式、文本模式对解析器的影响,以及如何使用递归下降算法构造模板AST。在解析文本内容时,我们还讨论了如何根据规范解码字符引用。

    第17章模板编译优化的相关内容。具体包括block树的更新机制、动态节点的收集、静态提升、预字符串、缓存内联事件处理函数、v-once等优化机制。

    第六篇服务器端

    主要讨论了同构渲染的原理,探讨了CSR、SSR以及同构渲染等方案的各自优缺点,然后探讨了vuejs进行服务端和客户端即获得原理,最后总结了编写同构代码时的注意事项。

    图片版本