- 在 Go 编程语言中,数据类型用于声明函数和变量。数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。Go 语言按类别有以下几种数据类型:序号类型和描述1布尔型布尔型的值只可以是常量 true 或者 false。一个简单的例子:var b bool = true。2数字类型整型 int 和浮点型 float32、float6... 在 Go 编程语言中,数据类型用于声明函数和变量。数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。Go 语言按类别有以下几种数据类型:序号类型和描述1布尔型布尔型的值只可以是常量 true 或者 false。一个简单的例子:var b bool = true。2数字类型整型 int 和浮点型 float32、float6...
- Go 标记Go 程序可以由多个标记组成,可以是关键字,标识符,常量,字符串,符号。如以下 GO 语句由 6 个标记组成:fmt.Println("Hello, World!")6 个标记是(每行一个):1. fmt2. .3. Println4. (5. "Hello, World!"6. )行分隔符在 Go 程序中,一行代表一个语句结束。每个语句不需要像 C 家族中的其它语言一样以分号 ;... Go 标记Go 程序可以由多个标记组成,可以是关键字,标识符,常量,字符串,符号。如以下 GO 语句由 6 个标记组成:fmt.Println("Hello, World!")6 个标记是(每行一个):1. fmt2. .3. Println4. (5. "Hello, World!"6. )行分隔符在 Go 程序中,一行代表一个语句结束。每个语句不需要像 C 家族中的其它语言一样以分号 ;...
- Go 1.26.0 在语言、工具链、运行时、编译器以及标准库方面都有不少改进,并带来了 new 内置函数增强、泛型约束放宽、go fix 重构以及 Green Tea GC 默认启用等重要变化。 此次更新不仅进一步提升了语言表达能力和工具链体验,也在运行时性能方面继续优化,例如降低 GC 开销、减少 cgo 调用成本,并让切片底层存储在更多场景下可以分配到栈上。 Go 1.26.0 在语言、工具链、运行时、编译器以及标准库方面都有不少改进,并带来了 new 内置函数增强、泛型约束放宽、go fix 重构以及 Green Tea GC 默认启用等重要变化。 此次更新不仅进一步提升了语言表达能力和工具链体验,也在运行时性能方面继续优化,例如降低 GC 开销、减少 cgo 调用成本,并让切片底层存储在更多场景下可以分配到栈上。
- 在 Go 语言中,for range 遍历通道是一个极其常见的模式。然而,正是这个看似无害的语法糖,在生产环境中埋下了一种隐晦的 goroutine 泄漏陷阱。最近,我在调试一个自研的工具时,就再次掉进了这个“经典的坑”。for range 遍历通道看起来非常优雅,但它隐藏着一个很容易踩的坑:如果通道没有关闭,for range 会永远阻塞,导致 goroutine 泄漏。下面我用一个你能立... 在 Go 语言中,for range 遍历通道是一个极其常见的模式。然而,正是这个看似无害的语法糖,在生产环境中埋下了一种隐晦的 goroutine 泄漏陷阱。最近,我在调试一个自研的工具时,就再次掉进了这个“经典的坑”。for range 遍历通道看起来非常优雅,但它隐藏着一个很容易踩的坑:如果通道没有关闭,for range 会永远阻塞,导致 goroutine 泄漏。下面我用一个你能立...
- 簡單寫下cli的使用先下載:MetaMessage 改個名,方便使用:mv mm_0.1.8_darwin_arm64 mm一個簡單的jsonc:cat input.jsonc { "a":2,}序列化:./mm -e -i input.jsonc -o output.mmEncoding Mode, Input: input.jsonc, Output: output.mm看下大小:... 簡單寫下cli的使用先下載:MetaMessage 改個名,方便使用:mv mm_0.1.8_darwin_arm64 mm一個簡單的jsonc:cat input.jsonc { "a":2,}序列化:./mm -e -i input.jsonc -o output.mmEncoding Mode, Input: input.jsonc, Output: output.mm看下大小:...
- 第一次在 Zed 里给 Go 代码打断点,我习惯性按了 F9,然后……什么都没发生。不是报错,不是弹窗,就是纯粹的"空气安静"。那一刻我意识到:这个快得像闪电的编辑器,在调试这件事上,还像个刚学会走路的婴儿。直到我发现了这个叫 zed-go-debug 的zed 插件。简单说,它给 Zed 装上了"调试大脑"——不是简单调用 dlv,而是把 GoLand 那套丝滑的调试体验,用 Rust 重... 第一次在 Zed 里给 Go 代码打断点,我习惯性按了 F9,然后……什么都没发生。不是报错,不是弹窗,就是纯粹的"空气安静"。那一刻我意识到:这个快得像闪电的编辑器,在调试这件事上,还像个刚学会走路的婴儿。直到我发现了这个叫 zed-go-debug 的zed 插件。简单说,它给 Zed 装上了"调试大脑"——不是简单调用 dlv,而是把 GoLand 那套丝滑的调试体验,用 Rust 重...
- MetaMessage(mm)是一個結構化數據交換協議。自描述、自約束、自示例,實現了無損數據交換,是一種原生適配 AI + 人類 + 機器的下一代通用協議。 在golang中,使用mm非常簡單。 MetaMessage(mm)是一個結構化數據交換協議。自描述、自約束、自示例,實現了無損數據交換,是一種原生適配 AI + 人類 + 機器的下一代通用協議。 在golang中,使用mm非常簡單。
- 深夜三点,我又在 go.mod 里敲下 github.com/google/uuid,突然愣住:这包我用了八百个项目了,咋还没进标准库?没错,那个被 11 万+ Go 项目偷偷依赖的 UUID 包,终于要"转正"了。Issue #62026 从 2023 年吵到 2026 年,提案组终于拍板:Go 1.27 将原生支持 uuid 包。 新包长啥样?简洁到让你怀疑人生package uuidi... 深夜三点,我又在 go.mod 里敲下 github.com/google/uuid,突然愣住:这包我用了八百个项目了,咋还没进标准库?没错,那个被 11 万+ Go 项目偷偷依赖的 UUID 包,终于要"转正"了。Issue #62026 从 2023 年吵到 2026 年,提案组终于拍板:Go 1.27 将原生支持 uuid 包。 新包长啥样?简洁到让你怀疑人生package uuidi...
- 📌 一句话剧透:parser=encoding.TextUnmarshaler 让 Gin 的绑定功能终于"开窍"了! 🎬 痛点小剧场以前用 Gin 绑定自定义类型,是不是这样写的?👇// ❌ 老写法:手动解析 + 重复造轮子type Birthday stringfunc (b *Birthday) FromString(s string) error { // 自己写解析逻辑... 📌 一句话剧透:parser=encoding.TextUnmarshaler 让 Gin 的绑定功能终于"开窍"了! 🎬 痛点小剧场以前用 Gin 绑定自定义类型,是不是这样写的?👇// ❌ 老写法:手动解析 + 重复造轮子type Birthday stringfunc (b *Birthday) FromString(s string) error { // 自己写解析逻辑...
- 写Go还在手动NewXXX(db, logger, config)?NVIDIA悄悄开源了这个零依赖的DI容器,看完直呼:早该这样了! 🔍 gontainer 是什么?一句话:用函数签名自动注入依赖的轻量级容器,零外部依赖、零代码生成,纯靠 Go 泛型 + 反射实现。// 以前:手动组装,写到怀疑人生svc := NewUserService( NewDatabase(NewConf... 写Go还在手动NewXXX(db, logger, config)?NVIDIA悄悄开源了这个零依赖的DI容器,看完直呼:早该这样了! 🔍 gontainer 是什么?一句话:用函数签名自动注入依赖的轻量级容器,零外部依赖、零代码生成,纯靠 Go 泛型 + 反射实现。// 以前:手动组装,写到怀疑人生svc := NewUserService( NewDatabase(NewConf...
- 你有没有遇到过这种情况:代码逻辑看起来天衣无缝,跑起来却像个谜语人?在 Go 里,这很可能拜 变量阴影(Variable Shadowing) 所赐。 🎭 什么是 Shadowing?简单说就是「同名覆盖」func lookupSum() (int, error) { result1, err := lookup1() // 外层 err if err != nil { ... 你有没有遇到过这种情况:代码逻辑看起来天衣无缝,跑起来却像个谜语人?在 Go 里,这很可能拜 变量阴影(Variable Shadowing) 所赐。 🎭 什么是 Shadowing?简单说就是「同名覆盖」func lookupSum() (int, error) { result1, err := lookup1() // 外层 err if err != nil { ...
- 📝 一个"偷懒型"开发者的效率秘籍 | ⏱️ 阅读 4 分钟 | ✨ 文档即测试成就解锁 🎬 起因:我又被文档坑了上周写了一个"字符串工具包",想给同事用。打开 pkg.go.dev 一看文档…结果:❌ 示例代码是半年前的;❌ 注释说"返回大写",实际返回小写;❌ 同事照着抄,线上 panic 了。🤦♂️ 那一刻我悟了:文档不跑测试,等于没写。于是我翻出了 Go 的"隐藏技能":可执... 📝 一个"偷懒型"开发者的效率秘籍 | ⏱️ 阅读 4 分钟 | ✨ 文档即测试成就解锁 🎬 起因:我又被文档坑了上周写了一个"字符串工具包",想给同事用。打开 pkg.go.dev 一看文档…结果:❌ 示例代码是半年前的;❌ 注释说"返回大写",实际返回小写;❌ 同事照着抄,线上 panic 了。🤦♂️ 那一刻我悟了:文档不跑测试,等于没写。于是我翻出了 Go 的"隐藏技能":可执...
- 📖 故事开场:凌晨3点,运维群里突然炸锅:“数据库连接池爆了!” 小红揉着惺忪的睡眼打开日志,发现是昨天上线的"小优化"——给每个请求加了个go——正在疯狂创建goroutine。她默默关掉报警,在笔记本上写下:“并发不是魔法,是责任”。 🎯 第一部分:并发避坑指南(经验法则篇) 🚫 法则1:能不用并发,就别用很多新手(包括曾经的我)总觉得:加个go就能变快!但生产环境会教你做人://... 📖 故事开场:凌晨3点,运维群里突然炸锅:“数据库连接池爆了!” 小红揉着惺忪的睡眼打开日志,发现是昨天上线的"小优化"——给每个请求加了个go——正在疯狂创建goroutine。她默默关掉报警,在笔记本上写下:“并发不是魔法,是责任”。 🎯 第一部分:并发避坑指南(经验法则篇) 🚫 法则1:能不用并发,就别用很多新手(包括曾经的我)总觉得:加个go就能变快!但生产环境会教你做人://...
- 💡 一句话总结:匿名结构体 = 临时数据打包神器,用完即走,不占编制! 啥是匿名结构体?普通结构体像"正式员工",得先注册类型:type Car struct { Make string Model string Year int}camry := Car{Make: "Toyota", Model: "Camry", Year: 2020}匿名结构体?直接"外包上岗... 💡 一句话总结:匿名结构体 = 临时数据打包神器,用完即走,不占编制! 啥是匿名结构体?普通结构体像"正式员工",得先注册类型:type Car struct { Make string Model string Year int}camry := Car{Make: "Toyota", Model: "Camry", Year: 2020}匿名结构体?直接"外包上岗...
- “指针不是洪水猛兽,用好了它就是性能神器!” 💡 为什么你要关心结构体指针?说实话,很多Go新手看到指针就头大:“这不就是C语言那套吗?太底层了吧!”错!大错特错!在Go的世界里,结构体指针是你写出高性能代码的秘密武器。今天我们就来扒一扒这个"看似高冷,实则贴心"的特性。 📚 基础篇:结构体指针到底是啥? 简单说,就是"地址本"想象一下,你有个Person结构体:type Person ... “指针不是洪水猛兽,用好了它就是性能神器!” 💡 为什么你要关心结构体指针?说实话,很多Go新手看到指针就头大:“这不就是C语言那套吗?太底层了吧!”错!大错特错!在Go的世界里,结构体指针是你写出高性能代码的秘密武器。今天我们就来扒一扒这个"看似高冷,实则贴心"的特性。 📚 基础篇:结构体指针到底是啥? 简单说,就是"地址本"想象一下,你有个Person结构体:type Person ...
上滑加载中
推荐直播
-
华为云码道Skill实战与极速交付,智能开发全链路实战2026/07/22 周三 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;姜浩-华为云HCDG核心组成员
直播深度解读华为云码道6月产品新特性,从Skill市场安装专家技能,带你零距离体验从需求,开发,审查,重构全链路闭环的开发过程。从零构建并交付一个完整项目,让您体验从代码提交到服务上线的“极速”之旅。
回顾中 -
聚开发者之力,创具身新未来2026/07/23 周四 15:00-17:00
张豪杰/程文/王军/刘新春/黄钦开 /张晓天
本次华为云具身智能开发平台CloudRobo培训面向具身智能开发者,带您全流程体验机器人本体R2C小时级接入、环境重建与轨迹生成仿真数据生产、PB级数据管理、数据评测、模型训推、强化学习和Benchmark一键评测等功能,并体验业界主流具身模型应用。
回顾中 -
用码道,让你的AI作品三步上朋友圈2026/08/04 周二 19:00-20:00
林华鼎-华为云AI开发者运营负责人
从入门 · 到做AI应用 · 到企业级开发。不教编程,只教用AI · 零代码、有产出、能带走、可炫耀 · 每课人人动手实操
回顾中
热门标签