240 发简信
IP属地:广东
  • 120
    使用 dpdm 定位 JavaScript/TypeScript 中的循环依赖

    在写大型项目的时候, 一不小心就会踩到直接循环依赖的坑里面, 所谓直接循环依赖, 是指在模块工厂函数中, 对其它依赖于自己的模块的成员有直接调用的情况. 比如: 假设有两个模...

  • 120
    使用 ink + react 制作一个命令行在线五子棋游戏客户端

    背景 Ink 是 React 在命令行中渲染系统的一个实现, 在 GitHub 上已经有 1w+ Star. 看着蛮好玩, 因此尝试着写了一个五子棋游戏, 经过若干天的划水,...

  • AST解析基础: 如何写一个简单的html语法分析库

    前言 虚拟语法树(Abstract Syntax Tree, AST)是解释器/编译器进行语法分析的基础, 也是众多前端编译工具的基础工具, 比如webpack, postc...

  • 一个基于TCP/WebSockets的超级精简的长连接消息协议

    背景 现在写客户端或者网页的时候, 越来越多的需要与长连接打交道, 尤其是在这个老板动不动就要搞一个聊天系统的时代, 后端大哥们于是分分钟就能造一个基于TCP或者WebSoc...

  • 组合理论和状态机应该是交集而不是子集关系吧:smile:

    有限状态机FSM的原理与GO的实现

    有限状态机(Finite-state machine, 简写FSM)又可以称作有限状态自动机。它必须是可以附着在某种事物上的,且该事物的状态是有限的,通过某些触发事件,会让其...

  • 120
    徒手写一个JSON解析器(Golang)

    前一阵子看到了一个Golang的JSON库go-simplejson,用来封装与解析匿名的JSON,说白了就是用map或者slice等来解析JSON,觉得挺好玩,后来有个项目...

  • Python爬虫实践:如何优雅地删除豆瓣小组的帖子

    前言 文章起源于自己的一个需求:想要删除掉自己的若干个小号在豆瓣小组上的发帖及回复记录。这是一件看似简单的事情,但是一遍一遍的重复操作实在让我感到非常绝望,特别是删除自己的回...