首页
学习
活动
专区
圈层
工具
发布

#go

静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言

2026 大厂 Go 后端通关手册:35 道高频面试题深度解析

jack.yang

defer 注册时机:每次执行 defer 语句时,Go 运行时会将该函数调用压入当前 goroutine 的 _defer 链表(栈结构)。

2010

助你 2026 拿下字节 / 腾讯 / 华为 / 阿里 offer 的Golang高频面试题 35 讲(速记版)

jack.yang

适用人群:1-3 年中初级工程师 校招冲刺 技术储备 核心版本:基于 Go 1.22+,涵盖 Go 1.23(range over func 转正)、G...

2320

Go 语言生产环境必备包清单

GoLang学习记

在 Go 生态中选择合适的第三方包是生产开发的关键挑战。根据 2025 Go 开发者调查,26% 的开发者认为"找到可靠的 Go 模块和包"是最大难题之一。本文...

6310

Go + Kafka实战指南!

GoLang学习记

Apache Kafka 是 LinkedIn 在 2011 年开发的分布式流处理平台。想象它是一个超高速的邮局系统:

10410

字节面试:str := “Go 测试“`,如果直接 `str[:3]` 会发生什么

GoLang学习记

面试官:str := "Go 测试",如果直接 str[:3] 会发生什么? 候选人:得到 "Go 测"? 面试官:❌ 错,是乱码。

6810

为什么 Go 字符串永远不会为 nil?

GoLang学习记

背后藏着 Go 语言三位创始人——Rob Pike、Ken Thompson、Robert Griesemer 对编程语言最核心的理解:

8610

Go语言中到底应不应该将0值作为有效值?

技术圈

在Go语言的世界里,零值(Zero Value)是一个基础而重要的概念。当我们声明一个变量但没有初始化时,Go会自动为其赋予零值:数值类型为0,布尔类型为fal...

9010

大公司有DBA,Go开发者小团队靠什么管理数据库变更?

技术圈

在项目开发中,你是否遇到过这样的困扰:团队成员各自修改数据库结构,导致本地与生产环境不一致?或因忘记执行某个SQL脚本,线上系统突然报错?数据库迁移工具正是为解...

11010

Go 语言被忽视的神器:go clean 能解决什么问题?

技术圈

你的 Go 项目是否也堆积了各种编译产物?构建缓存是否越来越大?每个 Go 开发者都熟悉 go build、go run、go test,但有一个命令却常常被我...

8610

Go 语言中条件编译的最佳实践

技术圈

在跨平台开发中,如何让同一套代码同时支持 Linux、Windows、macOS 等不同操作系统?Go 语言提供了一套简洁而强大的条件编译机制,让开发者能够优雅...

10310

Go map面试必看:日期格式化输错一个数字会怎样?

技术圈

在 Go 语言中,时间格式化只要输错一个数字,输出可能完全失控。今天我们来实测:当你在时间格式中传入错误的数字时,会发生什么?

8310

Go语言int类型那么多,到底该用int还是int64?

技术圈

在Go语言开发中,我们经常会遇到一个问题:整型类型那么多,int、int8、int16、int32、int64,还有对应的无符号版本,到底该怎么选?特别是int...

8710

Go map面试必看:访问不存在的key会怎样?

技术圈

需要注意的是,Go内置的map不是并发安全的。如果多个goroutine同时读写同一个map,程序会panic。在并发场景下,推荐使用sync.Map:

8410

Go语言中错误包装的最佳实践

技术圈

在Go语言的开发过程中,错误处理是一个无法回避的话题。传统的错误处理方式往往让我们在排查问题时感到困惑:错误信息不够清晰,无法追溯错误的根源。Go 1.13版本...

8110

Go代码格式化该用gofmt还是goimports?

技术圈

简单来说,goimports是gofmt的超集。gofmt负责格式化代码(缩进、括号位置等),会对同一个import块内的包按字母排序;而goimports在此...

8010

从 for i := 0 到 range n:Go 循环语法的进化指南

技术圈

在日常开发中,我们经常需要执行固定次数的循环操作。比如初始化一个切片、并发启动多个 goroutine、或者简单地重复某个操作 N 次。在 Go 1.22 之前...

3310

Go 代码的进化美学:wg.Go() 方法让你少写一个 BUG

技术圈

在 Go 语言的并发编程中,sync.WaitGroup 无疑是最常用的同步原语之一。从 Go 1.0 开始,它就陪伴着我们处理各种 goroutine 同步场...

9810

Go 三元运算符的替代者:cmp.Or 让你的代码更优雅

技术圈

在 Go 语言的日常开发中,我们经常需要处理这样一个场景:当某个值为零值(空字符串、0、nil 等)时,使用一个默认值来替代。传统的做法是使用三元运算符的 Go...

10010

Go 代码的进化美学:strings.Clone / bytes.Clone

技术圈

使用 Clone 会有轻微的内存分配开销,但在需要释放原内存的场景下,总体内存占用反而更低,GC 压力更小,长期运行性能更优。推荐在从大字符串/切片中提取小部分...

9610
领券