Go

首页 标签 Go
# Go #
关注
24120内容
|
1天前
| |
来自: 云原生
GoLand 2025.3 正式发布:Claude Agent 深度集成!
GoLand 2025.3 正式发布!新增实时资源泄漏检测、开箱即用Terraform支持、Junie×Claude双AI Agent协同、K8s全流程集成、无项目模式秒开.go文件、golangci-lint fmt深度整合,并启用护眼Islands默认主题,全面升级云原生开发体验。(239字)
|
1天前
| |
来自: 云原生
Go 里没有 override,但有更清爽的替代方案!
小明学Java后转Go,发现Husky嵌入Dog却无法“重写”bark方法?别急!Go不支持继承式override,但用**接口定义行为 + 结构体嵌入复用 + Functional Options动态定制**,三步轻松实现更灵活、低耦合的“伪override”。清爽、显式、真Go风!
|
1天前
| |
来自: 云原生
Go线上事故复盘:一个 (bool, error) 引发的误判,差点让脏数据入库
Go中「碎裂失败」陷阱:用`bool, error`双返回值表达成败,导致4种歧义状态(如`false, nil`含义模糊),违背“非法状态不可表示”原则。正解是统一由`error`判定成败,并通过哨兵错误或自定义类型封装失败原因——一块表,才知准点。
|
1天前
| |
来自: 云原生
Go 的 nil 接口:你眼中的 `nil`,Go 眼里的“带户口的空房间”
Go接口非空之谜:`nil`指针赋值给接口后,因接口含“类型+数据”双字段,仅数据为`nil`而类型已注册,故接口整体不为`nil`!三招避坑:①返回裸`nil`;②类型断言后判空;③用`reflect`通用检测。真相:接口是带户口本的空房,有户即“有人”。
|
1天前
| |
来自: 云原生
Go 语言三大进阶函数技巧
Go函数进阶指南:3个必学技巧——①变长参数(...T)灵活处理任意数量参数;②函数作为一等公民,支持回调与策略模式;③闭包捕获变量,实现状态记忆与配置化。提升代码复用性、安全性和专业度!
|
1天前
| |
来自: 云原生
Rust 和 Go 的内存管理:一个像管家,一个像房东
本文用“租房”比喻生动对比Go与Rust内存管理:Go靠GC自动回收(房东定期打扫),开发快但偶有停顿;Rust靠所有权系统在编译期确保安全(管家严控借还),零开销却学习陡峭。选Go求效率,选Rust要极致稳定与性能。(239字)
|
1天前
| |
来自: 云原生
Redis 模式匹配:KEYS vs SCAN 及 Go 实战示例
Redis支持通配符匹配(*、?、[])查找key,但`KEYS`命令会阻塞服务,严禁用于生产;推荐使用非阻塞的`SCAN`命令分批遍历,配合规范命名(如`user:1001:profile`)和合理COUNT值,确保线上稳定。
|
1天前
| |
来自: 云原生
Redis Pipeline 实战指南:提升 Go 后端性能的利器
Redis Pipeline 是一种批量命令优化机制,通过一次网络往返执行多条命令,显著降低RTT开销、提升吞吐(实测快50倍)。它非事务,无原子性保证,适用于批量写入、排行榜更新等场景;强一致性需求应选MULTI/EXEC或Lua脚本。(239字)
|
1天前
| |
来自: 云原生
Go1.26新提案:errors.AsType —— 更安全、更简洁的错误类型检查方案
Go 1.26 新增 `errors.AsType[E error](err error) (E, bool)`,以泛型替代反射实现错误类型匹配。相比传统 `errors.As`,它无需预声明变量、避免指针误用、杜绝运行时 panic,支持 `if x, ok := AsType[T](err); ok` 短声明,作用域更安全,性能更高,代码更简洁清晰。(239字)
|
1天前
| |
来自: 云原生
Go 16岁了:官方年度总结和未来路线图
Go 16 周年:严谨如约(虽迟但到)、硬核升级——synctest 实现毫秒级并发测试、Green Tea GC 降低延迟62%、os.Root 筑牢安全防线;更深度赋能 AI,成智能体“原生钢筋”。稳、快、安,仍是它的少年答案。
免费试用