golang
已收录文章:1068篇
-
在Go中,指针的零值为nil,使用前需通过ifptr!=nil判断避免解引用导致panic。未初始化的指针默认为nil,函数返回的指针、结构体指针字段等均需先检查有效性再访问,如result!=nil或user!=nil后才可安全使用*ptr或user.Name。手动检查是必要步骤,能有效防止空指针异常。368 收藏
-
结构体值类型保存副本,指针类型保存地址;函数传参为值传递,值接收者操作副本,指针接收者可修改原数据;大结构体或需修改时应使用指针。368 收藏
-
使用sync.Pool复用对象、预分配切片容量、减少小对象混合分配并调整GOGC参数,可有效降低Go程序内存碎片。368 收藏
-
使用gomodtidy可自动清理未引用的依赖,结合unimport和unused等工具精准识别局部无用包,注意处理间接依赖、测试依赖等特殊情况,建议定期在CI和开发流程中执行清理以维护项目健康。368 收藏
-
通过反向代理实现负载均衡,部署多实例并优化Go服务性能,结合缓存与异步处理,提升系统吞吐量和稳定性。367 收藏
-
中介者模式通过引入协调者集中管理对象交互,降低耦合度。在Go中,定义Mediator接口和参与者User,由ChatRoom实现消息转发,使用户间通信解耦,新增用户无需修改现有逻辑,符合开闭原则,适用于复杂交互场景。367 收藏