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

#go

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

你可能不知道 Go 语言的 plugin 机制?

技术圈

在Go语言的世界里,“静态编译”一直是其标志性优势之一,将所有依赖打包成单一可执行文件,部署简单、运行可靠。但在某些场景下,我们需要程序具备动态扩展能力:比如无...

700

Go语言map并发读写,用sync.Map还是Mutex+map?

技术圈

在日常开发中,我们经常需要在多个goroutine之间安全地共享数据。面对这种需求,Go语言提供了多种解决方案,其中最常见的就是sync.Map和Mutex+m...

400

Go语言冷知识:为什么nil也能调用函数?

技术圈

用过Go语言的同学大概率遇到过这样的场景:声明了一个指针变量没初始化(默认是nil),却能直接调用它的方法,程序不仅不崩溃,还能正常输出结果。

100

Go语言中的os.CopyFS让目录复制简单又高效

技术圈

在日常开发中,目录和文件复制是一个常见需求。在 Go 1.23 之前,开发者通常需要借助第三方库来实现这一功能。在 Go 1.23 中,标准库引入了 os.Co...

100

Go语言中何时该用container/list而非切片?

技术圈

在日常开发中,我们常常需要处理动态数据集合。Go语言提供了多种数据结构,其中container/list包实现的双向链表和内置的切片(slice)是最常用的两种...

600

你是否在Go项目中使用过gob做序列化?

技术圈

在日常开发中,我们经常需要将数据序列化成二进制格式进行存储或传输。Go语言自带了一个名为gob的序列化工具,但很多人可能更熟悉JSON或Protobuf,甚至有...

100

Go 语言中的 channel 到底需不需要关闭?

技术圈

“channel到底需不需要主动关闭?”这是很多Go开发者心中的疑问。根据我的多年开发的经验和理解,这篇文章和大家分享一下。

300

化繁为简:Go 语言 strings.Cut 的优雅实践

技术圈

在Go语言中,字符串处理是我们日常开发中最常见的操作之一。这篇文章就来深入介绍一个在Go 1.18 中引入的非常实用但容易被忽视的函数:strings.Cut,...

100

【技术专栏】深度对决:Java 21 虚拟线程 (Loom) 终结 Go 并发神话?

用户11987541

长期以来,Java 开发者在面对高并发场景时,总有一种“英雄气短”的感觉。看着隔壁 Go 语言凭借轻量级的 goroutine 在云原生领域混得风生水起,我们只...

6610

2026年1月TIOBE编程语言排行榜,Go语言排名第16,Rust语言排名13。C# 当选 2025 年度编程语言。

福大大架构师每日一题

在三年内第二次,C# 被 TIOBE 指数评为“年度编程语言”。C# 之所以获得这一称号,是因为其排名较上一年上涨幅度最大。多年来,这门语言经历了根本性的变化。...

22640

别再 return err 了!Go 错误处理的正确姿势 🛠️

AI之路

“我的服务崩了,日志只有一行:open config.yaml: no such file or directory…… 可是……哪个模块?谁在读这个文件?...

7210

别再用 `ok` 了!Go 中这个“约定俗成”正在悄悄坑你

AI之路

看起来很整洁?社区都这么写? 但今天我要说一句大实话:ok 是个坏名字——尤其当你在一个函数里用它超过一次时。

8410

别再乱传 struct 了!Go 中的 DTO 正确打开方式 📦

AI之路

但如果你图省事,直接把数据库模型(比如 User)原样返回,那就像穿着睡衣去开董事会——功能是有了,但风险也来了!

7810

别 if/else 地狱!用 Go 状态模式写出“会思考”的代码

AI之路

“我写了个订单系统,结果 if/else 比订单还多……” —— 某位深夜加班的 Go 新手

7210

成为 Go 语言忍者:5 个你可能不知道的高级技巧 🥷

AI之路

“写 Go 不难,难的是写出像 Go 的 Go。” —— 某位深夜 debug 到怀疑人生的 Go 老兵

9010

别再用 `nil` 了!Go 里有个更优雅的“替身演员”叫 标记值(Marker Value)

AI之路

在 Go 世界里,nil 就像那个总在角落里默默站着、从不说话的朋友—— 你不知道它是“真的没有”,还是“还没来得及有”,还是“故意不想告诉你”。

5610

大数据量别再 for range 一把梭了!Go 的“懒人神器”——Iter.Seq 来了!

AI之路

一句话总结:想让数据流像溪水一样“按需流淌”?Iter.Seq 让你的 Go 代码既懒又高效!

7110

Go 1.26: 内存分配优化分析 将小对象的分配速度提升了 30%

萝卜要努力

Go 1.26 RC1 已经发布,这意味着它很快将会正式与大家见面。在 Go 1.26 的发布草案中,有一行小字特别引人注目:

13210

Go语言核心三剑客:数组、切片与结构体使用指南

stark张宇

数组是固定长度、同类型的元素序列,长度是数组类型的一部分,编译期确定,不可动态扩容。

8410

把一大串 Protocol Buffer 文本看懂,是怎样一种体验?

闫同学

做后端、做中台、做数据平台的同学,多少都被 Protocol Buffer“支配”过。

7210
领券