golang专题下共有 14136 篇文章
-
- Golang错误处理,pkg/errorsWrap用法详解
- Wrap方法是pkg/errors包中用于包装错误并附加上下文信息的函数,其定义为Wrap(errerror,messagestring)error。它能在保留原始错误的同时添加描述,便于追踪错误来源。使用时应在每层调用中用Wrap封装下层错误并附上当前层的上下文,从而构建完整的错误链。查看完整错误信息可用%+v格式化输出或通过errors.Cause()获取根源错误。使用Wrap时应避免重复包装、确保传入非nil错误、正确记录日志,并注意兼容标准error接口。
- Golang· Go教程 | 7个月 | golang 错误处理 wrap 错误链 pkg/errors 488浏览 收藏
-
- Golang嵌入式SQLite配置教程
- 在Golang中配置嵌入式SQLite数据库的步骤如下:1.导入modernc.org/sqlite库,使用goget命令安装并导入到Go文件;2.使用sql.Open函数打开数据库连接并创建db对象;3.执行SQL语句进行表创建、数据插入等操作;4.使用Query或QueryRow方法查询数据并通过rows.Scan获取结果。为提升并发性能,可启用WAL模式或合并批量写操作。迁移可通过golang-migrate/migrate工具实现,包括创建迁移文件并执行up/down命令。单元测试时可使用:mem
- Golang· Go教程 | 7个月 | golang SQLite 嵌入式 modernc.org/sqlite 零依赖 387浏览 收藏
-
- Golang错误处理与内存分配关系解析
- Golang错误处理机制通过减少内存分配提升性能。频繁创建相同错误会增加内存负担,解决方案是预定义错误变量并重复使用。例如:var(ErrNotFound=errors.New("resourcenotfound")),在函数中直接返回该错误而非新建。其次,避免在错误信息中使用字符串拼接以减少内存分配。自定义错误类型可进一步优化性能,如定义结构体包含错误码和信息,便于类型断言而非反射比较。例如:typeMyErrorstruct{Codeint},使用类型断言判断错误类型。Golang
- Golang· Go教程 | 7个月 | golang 错误处理 内存分配 性能优化 预定义错误 345浏览 收藏
-
- Golang数据库错误处理:精准判断sql.ErrNoRows方法
- 在Golang中处理数据库错误时,应优先使用errors.Is判断特定错误类型。1.当查询应返回一行数据却无结果时,需检查err==sql.ErrNoRows或errors.Is(err,sql.ErrNoRows);2.推荐使用errors.Is因其可穿透errorwrapper;3.实际场景中可根据不同错误返回对应的HTTP状态码;4.避免通过err.Error()判断错误类型以防不稳定;5.批量查询时不触发sql.ErrNoRows应改用其他方式判断是否有数据。
- Golang· Go教程 | 7个月 | golang 数据库错误处理 errors.Is sql.ErrNoRows 错误判断 153浏览 收藏
-
- Golang清洁架构:依赖倒置提升可测试性
- 清洁架构通过依赖倒置提升代码可测试性、维护性和扩展性。其核心在于高层模块与底层模块均依赖抽象接口,而非具体实现,从而实现解耦。关键点包括:1.Entities定义稳定业务数据结构;2.UseCases封装业务逻辑并依赖接口;3.InterfaceAdapters转换数据格式;4.Frameworks&Drivers实现具体技术细节。例如,UserUseCase通过UserRepository接口与GormUserRepository解耦,便于替换实现或使用Mock测试。在大型项目中,该架构降低复杂度,提升
- Golang· Go教程 | 7个月 | golang 接口 可测试性 依赖倒置 清洁架构 214浏览 收藏
查看更多
课程推荐
-
- Golang深入理解GPM模型
- Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
- 474次学习
-
- Go语言课程Gin框架实战
- Gin是一个用Go(Golang)编写的HTTPweb框架。它是一个类似于 martini 但拥有更好性能的API框架,由于 httprouter,速度提高了近40倍。如果你需要极好的性能,使用Gin吧。
- 339次学习
-
- Golang云原生架构师课程
- Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
- 205次学习
-
- Go编程基础视频教程
- Go是一门并发支持、垃圾回收的编译型系统编程语言,旨在创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡点的一门编程语言。我们收集了这套《Go编程基础视频教程》,希望能够帮助大家更好的学习go语言。
- 168次学习
-
- Golang进阶实战编程
- 本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
- 129次学习

