蒲东平的博客
写了 6 年 Go ,我终于领悟到了泛型的真正威力! 写了 6 年 Go ,我终于领悟到了泛型的真正威力!
哈喽,各位小伙伴们!今天来聊一聊 Go 语言中的泛型~哈哈,当然这篇文章的标题的确有点儿夸张哈,这篇文章旨在详细介绍一下 Go 语言中的泛型以及让没有用过 Go 语言泛型的童鞋们快速掌握如何使用泛型。 好了,废话不多说,直接开聊~ 在使用
2026-07-10
还在用字符串返回错误提示?Go语言优雅错误处理的正确姿势! 还在用字符串返回错误提示?Go语言优雅错误处理的正确姿势!
在日常的Go语言开发中,我们经常会遇到这样一个场景:在一个业务方法(比如校验短信验证码)中,我们需要处理多种情况。 业务校验失败(如验证码过期、验证码不完整) 系统级异常(如Redis反序列化失败、数据库宕机) 校验通过 很多初学者或者
2026-07-09
从失真到绝对精准:Go语言中如何进行高精度计算? 从失真到绝对精准:Go语言中如何进行高精度计算?
在电商、金融、支付等核心微服务开发中,数据计算的精确度是系统安全的生命线。然而,许多刚接触 Go 语言的开发者,甚至是有一定经验的后端工程师,依然会习惯性地使用 float64 来处理金额、汇率等敏感数据。直到某一天,财务对账时发现订单金额
2026-07-09
Go 程序员进阶必读:这 24 个经典的 Golang 错误,连老手都会栽跟头! Go 程序员进阶必读:这 24 个经典的 Golang 错误,连老手都会栽跟头!
在 Go 语言(Golang)的开发中,简洁的语法和强大的并发机制让无数程序员爱不释手。然而,正如所有编程语言一样,Go 也有它的“脾气”。尤其是当你从 Java、Python 或 C++ 转过来时,很容易掉进一些特定的语法陷阱(Gotch
2026-07-06
Kafka 太重?试试 NSQ:一个优雅到极致的消息队列 Kafka 太重?试试 NSQ:一个优雅到极致的消息队列
今天想和大家聊一个既老牌又实用的开源项目——NSQ。如果你是做后端开发,特别是跟 Go 语言打交道比较多的话,对这个名字应该不会陌生。即使你没用过,在消息队列这个技术选型里,NSQ 也绝对是个值得了解的存在。 本文会详细介绍 NSQ 的核心
2026-07-02
RabbitMQ 太重,Kafka 太复杂?Go 开发者:Asynq分布式任务队列就刚刚好 RabbitMQ 太重,Kafka 太复杂?Go 开发者:Asynq分布式任务队列就刚刚好
在后端服务中,我们经常需要异步执行耗时任务 —— 比如发送邮件、生成缩略图、导出报表、调用外部 API 等。让请求等待这些操作完成,会浪费用户体验,也浪费服务器资源。 这时异步任务队列就派上用场了。 而在 Go 语言中,asynq 是一个非
2026-07-02
Go 语言里判断字符串为空,90% 的人都写错了! Go 语言里判断字符串为空,90% 的人都写错了!
在 Go 语言中,字符串 len == 0 和字符串等于空字符串 "",到底该用哪个? 在日常开发中,这个问题几乎每个 Go 开发者都会遇到: if len(s) == 0 { // ... } 和 if s == "" {
2026-07-01
Go 进阶必修:90% 的人都没用对的“表驱动法” Go 进阶必修:90% 的人都没用对的“表驱动法”
作为一名开发者,在日常工作中,我们最常面对的可能不是复杂的算法,而是复杂多变的业务逻辑。 是不是经常遇到这种场景:产品经理跑过来说,“我们要接一个新的支付渠道”,或者“针对 VIP 用户加一个新的折扣逻辑”。你打开代码一看,好家伙,原来的代
2026-07-01
你知道 Go 结构体和结构体指针调用的区别吗?一文带你彻底搞懂! 你知道 Go 结构体和结构体指针调用的区别吗?一文带你彻底搞懂!
前几天在技术群里看到有小伙伴问了一个经典问题:**”Go 结构体方法调用时,什么时候用值接收器,什么时候用指针接收器?”** 虽然这是个老生常谈的话题,但是,我发现很多同学(包括工作几年的)对此还是一知半解。正好最近在梳理 Go 基础知识,
2026-06-29
你真的懂 close(chan) 吗?90% 的 Go 开发者都掉过这个坑! 你真的懂 close(chan) 吗?90% 的 Go 开发者都掉过这个坑!
在日常 Go 并发编程中,我们可能会看到类似以下这样的代码: // 初始化一个空的 channel,然后在某个位置直接关闭它 // 接收方可以无阻塞地读取到 "完成" 信号 done := make(chan struct{}) clos
2025-08-08
用 Go 写桌面应用?试试 Wails 吧! 用 Go 写桌面应用?试试 Wails 吧!
在前端开发中,提起桌面应用,很多人第一反应是 Electron。虽然它很流行,但不可否认也“很重” —— 内存占用高、打包体积大。 有没有更轻量的选择呢?当然有!今天我们来聊一聊一个非常有意思的项目 —— Wails。 Wails 是一个用
2025-08-07
Conc,一个神奇的Go语言并发利器! Conc,一个神奇的Go语言并发利器!
在 Go 语言中,goroutine 和通道是并发编程的核心,但随着项目复杂度的增加,管理成百上千个 goroutine 并确保它们正确协作变得极具挑战性。sourcegraph/conc 扩展包为我们提供了一套结构化并发工具,帮助我们更安
2025-08-07
1 / 6