Zong
脱离业务

8 月,正式脱离公司业务团队,参与可视化团队项目,为公司赋能。
可以说,脱离业务团队后,工作变得比以前更忙了,更充实了。(会议也变多了)
整个 8 月甚至 9 月被工作安排的满满当当的

📔 日本語学習計画

截至目前《新版 中日交流标准日本语 初级上、下》完成第 8 单元学习,由于第 7 单元的进度在上个月未完成,所以本月已加快进度学习。

「日本語のコーナー」学习停滞。当然了,还是非常王様给我带来了那么多的帮助,所以在恢复之前我还是会继续前行,继续加油(虽然恢复也是未知的)。

在此计划加快完成单元学习进度,学习语法基础,加油!

📚 建立自己的前端知识体系

1. 计算机图形学

截止目前学习进度至:「材质与外观」

计划尽快完成学习进度,实战前端可视化领域。

希望本次计算机图形学可以让我更好的理解可视化领域。

2. 脱离业务
1. 解释器开发

负责内部可视化平台蓝图编辑器 JavaScript 解释器开发工作,解释器实现对流程节点的触发、传递,执行、抛出功能,同时配套支持节点快照、错误捕获功能。

整个解释器内部基于 RxJS 的 Subject 主题订阅实现,利用其多播的特性实现“一点触发、多点抛出”的传播特性,即一个观察者实例可以被多个观察者进行订阅。

解释器内的执行即执行用户输入的低代码内容,利用节点池进行数据的传递并在规定条件下抛出。

起初编写代码使用 switch 进行编写,但是随着节点类型的增加,代码随之变得逐渐臃肿,逻辑复杂可读性差,为了避免更深化此问题,在紧迫的开发时间内挤出时间对解释器进行彻底重构。

重构采用依赖注入的设计模式,将各个节点的环节逻辑进行抽象、剥离。

重构后,很明显可以看到解释器的核心代码逻辑更为清晰,也让核心变得更为稳定;节点自身的逻辑也与外界互不干扰,并且也很容易支持新的节点注入。

设计模式的重要性就此体现了!

并且使用依赖注入的设计模式更好的支持了单元测试,让解释器核心逻辑和节点更易测试、和排错。

关于节点快照和错误捕获功能,快照则基于队列实现,配合边(节点连接边)控制,在需要抛出时展示整个节点流向及快照,错误捕获也一同抛出。

2. 栈存取工具库开发

同时负责基于 IndexedDB 实现的栈存取工具库的开发工作,很不错的是目前公司的 TypeScript 仓库也非常多。考虑到发包的情况,直接就上 TypeScript 了,即实现一个完整的栈功能(回退方案支持 localStorage ),配套编写单元测试(测试覆盖率 100% )。

后续:和兄弟部门同事讨论关于 IndexedDB 存取性能问题、存储空间问题。可能会调整工具库的内部逻辑,不过需求暂时待审核。

3. 文章推荐

🏇 锻炼身体

没坚持住……感觉整个 8 月都没锻炼……没法搞没法搞啊。