1. 什么是zig
先列出一段官方的介绍:
Zig is a general-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
大概意思就是说: Zig是一种通用编程语言和工具链,用于维护健壮、最佳和可重用的软件。
官方的介绍有一点笼统,并不能体现出Zig真正的特点。截止目前,Zig在github上已经拥有了26k的Star, 版本更新至0.11.0,在外网已经拥有了不少的开发者。
Zig是由Andrew Kelley等人发起的一个开源编程语言项目,江湖上流传最广的便是C的plus版本,与C一样,Zig同属于较低层的编程语言,需要手动去管理内存。
和C++不同的是,它的初衷并不是为业务而生,所以在语法层面,不具有C++的复杂度。作为新生代的编程语言,难免不被拿来和Rust、Go等进行对比,关于这三者的对比文章,网上比比皆是,有兴趣的小伙伴可以搜寻一下,但大部分结论我可以说一下,选适合你的。
关于工作岗位方面,2023年的一个编程收入统计排行榜,Zig占据第一。但这个没有什么说服力,看个热闹就好。国内呢,截止2023年10月,没有一个岗位,所以说学习Zig为了工作,那就趁早跑路,作为兴趣、好奇还是可以的。未来呢,也不清楚,以国内目前这个发展局势,反正别指望着吃饭。
2. Hello World
万事开头难,编程不同,别管是啥,开局Hello World就完事了。至于是要逗号还是空格,大写还是小写,是否加感叹号,那就纯属个人爱好了。
const std = @import("std");
pub fn main() !void {
const stdout = std.io.getStdOut().writer();
try stdout.print("Hello, {s}!\n", .{"World"});
// std.debug.print("Hello, {s}!\n", .{"World"});
}
总结一下,zig的语法给我一种Rust+C+JavaScript混合的感觉,感觉不是很好。