Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Zig 语言圣经:简单、快速地学习 Zig, Zig Chinese tutorial, learn zig simply and quickly

License

Notifications You must be signed in to change notification settings

zigcc/zig-course

Repository files navigation

Zig 语言圣经

autocorrect build check deploy pdf

Zig is a general-purpose programming language and toolchain for maintaining robust, optimal and reusable software.

Zig 是一种通用的编程语言和工具链,用于维护健壮、最优和可重用的软件

Cover Image

Zig 语言圣经 是一份开源的 Zig 语言综合教程,旨在为中文 Zig 爱好者提供一份高质量的学习资源,内容涵盖从基础语法到高级特性的方方面面。

📖 在线阅读

✨ 内容特色

本教程覆盖了 Zig 学习和实践中的多个重要领域:

  • 环境配置: 指导如何安装和配置 Zig 开发环境,支持多种编辑器配置
  • 基础入门: 包括变量、类型、流程控制、错误处理等基础知识
  • 高级主题: 深入探讨 comptime、异步、内存管理、C 语言交互等高级特性
  • 工程实践: 涵盖构建系统、包管理、单元测试和代码风格指南
  • 版本兼容: 提供与 Zig 0.11-0.15 版本相对应的代码示例
  • 实战案例: 包含 TCP 服务器等实际项目示例

📁 项目结构

zig-course/
├── .github/ # GitHub Actions 工作流
│ ├── workflows/ # CI/CD 配置
│ └── dependabot.yml # 依赖更新配置
├── build/ # 不同 Zig 版本的构建脚本
│ ├── 0.11.zig # Zig 0.11 构建配置
│ ├── 0.12.zig # Zig 0.12 构建配置
│ └── ... # 其他版本
├── course/ # 教程主要内容
│ ├── .vitepress/ # VitePress 配置
│ │ ├── config.mts # 站点配置
│ │ ├── theme/ # 主题定制
│ │ └── ...
│ ├── basic/ # 基础教程
│ │ ├── basic_type/ # 基本类型
│ │ ├── advanced_type/ # 高级类型
│ │ ├── process_control/ # 流程控制
│ │ └── ...
│ ├── advanced/ # 高级教程
│ │ ├── comptime.md # 编译期计算
│ │ ├── async.md # 异步编程
│ │ ├── memory_manage.md # 内存管理
│ │ └── ...
│ ├── engineering/ # 工程实践
│ │ ├── build-system.md # 构建系统
│ │ ├── package_management.md # 包管理
│ │ └── ...
│ ├── environment/ # 环境配置
│ ├── examples/ # 示例项目
│ ├── code/ # 代码示例(按版本分类)
│ │ ├── 11/ # Zig 0.11 示例
│ │ ├── 12/ # Zig 0.12 示例
│ │ └── ...
│ ├── picture/ # 图片资源
│ ├── public/ # 静态资源
│ └── update/ # 版本更新说明
├── draw/ # 绘图源文件
├── build.zig # 主构建文件
├── package.json # Node.js 依赖配置
├── CONTRIBUTING.md # 贡献指南
├── CODE_OF_CONDUCT.md # 行为准则
└── README.md # 项目说明

🚀 本地开发

环境要求

  • Node.js: 推荐使用 Bun 作为包管理器
  • Zig: 支持 0.11-0.15 版本
  • autocorrect: 用于中英文排版优化(可选)

快速开始

# 克隆仓库
git clone https://github.com/zigcc/zig-course.git
cd zig-course
# 安装依赖
bun install
# 启动开发服务器
bun dev
# 在浏览器中访问 http://localhost:5173

可用命令

bun dev # 启动开发服务器(热重载)
bun run build # 构建生产版本
bun preview # 预览构建结果
bun format # 格式化代码(prettier + zig fmt + autocorrect)
bun check # 检查代码格式
bun export-pdf # 导出 PDF 版本

🤝 参与贡献

我们热烈欢迎各位"道友"参与贡献,一起壮大 Zig 中文社区!

贡献方式

  1. 内容贡献

    • 修正错误和改进现有内容
    • 添加新的章节或示例
    • 翻译和本地化改进
    • 添加代码示例和实战案例
  2. 技术贡献

    • 改进网站功能和用户体验
    • 优化构建流程和 CI/CD
    • 修复 bug 和性能问题
  3. 社区贡献

    • 参与讨论和问题解答
    • 推广和分享项目
    • 提供反馈和建议

贡献流程

  1. Fork 仓库

    # 在 GitHub 上 Fork 本仓库
    git clone https://github.com/YOUR_USERNAME/zig-course.git
    cd zig-course
  2. 创建功能分支

    git checkout -b feature/your-feature-name
    #
    git checkout -b fix/your-fix-name
  3. 进行修改

    • 遵循现有的代码风格和文档格式
    • 确保所有代码示例都能正常运行
    • 运行 bun format 格式化代码
  4. 测试修改

    bun dev # 本地测试
    bun build # 确保构建成功
  5. 提交更改

    git add .
    git commit -m "feat: 添加新功能描述"
    #
    git commit -m "fix: 修复问题描述"
  6. 推送并创建 PR

    git push origin feature/your-feature-name
    # 在 GitHub 上创建 Pull Request

贡献规范

  • 提交信息: 使用 约定式提交 格式
  • 代码风格: 运行 bun format 确保代码格式一致
  • 文档规范:
    • 中英文之间添加空格
    • 使用中文标点符号
    • 代码块指定语言类型
  • 分支命名:
    • 功能:feature/功能描述
    • 修复:fix/问题描述
    • 文档:docs/文档更新

内容编写指南

  1. Markdown 格式

    • 使用标准 Markdown 语法
    • 代码块指定语言 zig
    • 适当使用表格和列表
  2. 代码示例

    • 确保代码能在对应 Zig 版本下运行
    • 添加必要的注释说明
    • 提供完整的可运行示例
  3. 图片和资源

    • 图片放在 course/picture/ 目录下
    • 使用相对路径引用
    • 提供 alt 文本描述

版本兼容性

本项目支持多个 Zig 版本,在贡献代码时请注意:

  • course/code/ 目录下按版本分类存放示例代码
  • 确保代码示例在对应版本下能正常编译运行
  • 如有版本差异,请在文档中明确说明

📋 开发注意事项

  • 包管理器: 本项目使用 Bun,请勿提交其他包管理器的配置文件
  • 依赖更新: 更新依赖前请参考 Bun Lockfile 文档
  • 格式化: 提交前务必运行 bun format 进行代码格式化
  • 构建测试: 确保 bun build 能成功构建

📄 许可证

本项目采用 MIT 许可证,欢迎自由使用和分发。

🙏 致谢

感谢所有为本项目做出贡献的开发者和 Zig 中文社区的支持!

📞 联系我们


如果这个项目对你有帮助,请给我们一个 ⭐️ Star!

About

Zig 语言圣经:简单、快速地学习 Zig, Zig Chinese tutorial, learn zig simply and quickly

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Contributors 37

AltStyle によって変換されたページ (->オリジナル) /