Windows 下编译 libuv

在 Windows 下编译 libuv 需要先安装 Visual C++ Build ToolsCMake

在 libuv 源代码目录下运行命令:

powershellmkdir build
cd build
cmake .. -DBUILD_TESTING=ON
cd ..
cmake --build --config Release build

……

    Python 库资源收集

    收集了流行的 Python 库和资源。会不定期更新

    Nim 语言的动态分发机制

    Nim 是一款 Python 风格的静态类型语言。但事实上,除了缩进语法外,Nim 和 Python 并没有太多相似之处。相对于 Python,Nim 更多地吸收了 Ada 和 Lisp 等语言的特性。

    Nim 编译器通过生成 C 或 Obj-C 中间代码的方式来进行本地编译,所以需要依赖一套外部编译器。Nim 也可以生成 Javascript 代码。此外,还有以脚本方式运行的 NimScript

    OOP 的一个特性就是支持多态,而动态分发(Dynamic Dispatch)就是实现多态的基础。在讲解 Nim 的动态分发实现前,先讲一下其他语言是如何实现的。

    ……

    不要迷信卢曼卡片盒方法和双向链笔记

    卡片盒笔记方法是一种通过扁平化的链接来组织笔记的方法。事实上,卡片盒笔记也并非完全扁平化的,也存在结构化的索引表和枢纽笔记。

    双向链就是一种 trackback。简而言之,即A通过链接连接到B,那么B将自动生成对A的反向连接关系,当用户访问B时,也可以通过反向连接关系来回溯到A,从而让笔记系统形成一个可遍历的无向图。

    graph

    ……

      笔记软件 Cherrytree 试用体验

      Cherrytree 是一款支持多平台的笔记管理软件。软件支持树状分级和标签管理,数据以 XML 或 SQLite 格式保存。

      Cherrytree

      ……

        未绑定信用卡的海外苹果应用商店帐号如何支付

        假设你已经拥有了一个未绑定信用卡的海外区的苹果应用商店帐号,当你购买应用时,App Store 就会让你选择支付方式。然而海外区的 Apple Id 是无法绑定国内信用卡或虚拟信用卡的。如果你的帐号是美区的话,通常的做法是购买美区 Gift card 给帐号充值,这个方式需要用到支持外币的信用卡,最低充值金额是 25 美金。另外,据说现在购买美区的 Gift card 也需要用到美区的手机号了。其他地区的帐号可以选择代充服务,不过这种方式风险比较大,对方可能会使用被盗的信用卡来充值,最后导致你的帐号被封。

        ……

          从 APNIC 获取中国大陆地区的 IP 地址数据库

          全球互联网 IP 地址分配由互联网号码分配局(IANA)机构负责。IANA 将分配工作委托给五大区域互联网机构管理(RIR),其中亚太网络信息中心(APNIC)负责管理亚太地区的事务。我们可以在 APNIC 的网站上找到所有分配给亚太地区的 IPv4/IPv6 地址数据库。通过该数据库,可以准确地知道某个 IP 地被分配给了哪个国家或地区。

          打开 APNIC 网站首页,在导航菜单中选择「Insights -> Raw Data」,进入 ftp 数据下载站点。也可以通过 http 接口访问 ftp 目录。下载最新数据文件:delegated-apnic-latest

          ……

            Windows 常用软件清单

            个人日常使用的 Windows 软件清单。并非推荐,仅供参考

            创建支持 Kotlin 协程的 Vert.x 服务代理

            本文提供一个方法,可用于创建支持 Kotlin 协程的 Vert.x 服务代理

            Laravel 强制 api 路由组返回 JSON

            Laravel 的默认错误处理器通过 Illuminate\Http\RequestexpectsJson() 方法来决定是否将错误信息渲染成 JSON 格式输出。这要求将请求头的 Accept 字段设置为 application/json。本文提供一种方法,在尽可能减少代码的情况下,强制让 api 路由组中的所有错误响应变成 JSON 格式,而不依赖于请求的 Accept 头部