Zig备忘
资料
学习
- ZigLings, Learn the Zig programming language by fixing tiny broken programs.
- Zig by Example, zig-by-example.github.io🗒️learn Zig, by example
- ZigLearn, for https://ziglearn.org/
参考项目
- ithewei/libhv: 🔥 比libevent/libuv/asio更易用的网络库。A c/c++ network library for developing TCP/UDP/SSL/HTTP/WebSocket/MQTT client/server. (github.com)
- mitchellh/libxev: libxev is a cross-platform, high-performance event loop that provides abstractions for non-blocking IO, timers, events, and more and works on Linux (io_uring or epoll), macOS (kqueue), and Wasm + WASI. Available as both a Zig and C API. (github.com), zig实现的事件库
交流
2023-12-09 线上会议总结
| 项目 | 参与人员 | 目标 | 仓库 | |
|---|---|---|---|---|
| Zig 写 OS 教程 | 柠檬、西瓜 | 体现 Zig low level 的优势 | zigcc/how-to-write-os-in-zig | |
| Zig 入门教程 | 金中甲 | 让没有编程背景的人可以有体系的学习 Zig | learnzig/learnzig | |
| Zig 教学视频 | Onion、Lambert | 同上 | ||
| Zig cookbook | 夜白、冯文轩 | 演示如何用 Zig 做某个功能 | zigcc/zig-cookbook | |
| Zig 构建系统教程 | 贺鹏、陈瑞 | 体验 Zig 编译系统的能力与优势、与其他构建系统的对比 | zigcc 网站系列文章 | |
| Zig 惯用法 | 全体 | 收集 Zig 编程技巧 | zigcc/zig-idioms |
Build
- ufbycd/zdec:, 参考本地项目依赖的做法
- Build system tricks - Docs - Ziggit, zig0.12 build system参考
- zig build explained - part 2 - Zig NEWS
测试
响应测试
└─ / 根目录
├─ build.zig
├─ src
│ ├─ root.zig
│ ├─ base
│ │ └─ time.zig
root.zig中加上这句,zig build test才会响应time.zig文件中的测试用例
comptime {
_ = @import("base/time.zig");
}