首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Golang
X_PENG
创建于2023-01-10
订阅专栏
Golang
暂无订阅
共29篇文章
创建于2023-01-10
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
【Golang】panic、fatal error、recover
在go程序中,发生panic时可用recover恢复,进程不会退出;但发生fatal error(致命错误)的话,是无法recover恢复的,此时进程会异常退出,常见的会发生fatal error场景
【Golang】泛型
推荐博客 Go 1.18 泛型全面讲解:一篇讲清泛型的全部 The Go Programming Language Specification Go 1.18官方文档 总结 为什么要用泛型?不用为不同
Go语言内嵌结构体(一)
简介 在Go语言中,可以通过「内嵌结构体」的方式「继承和扩展」已有的结构体,并且可以实现「代码的复用」。 内嵌后当前结构体会「自动获得」嵌入的结构体的所有字段和方法,就好像它们是直接定义在当前结构体中
Golang项目中error错误处理最佳实践
需求分析 在golang项目中,error处理是非常常见的,但golang本身提供的error接口比较简单,仅仅是返回错误信息。我们想要的是: 能给每个error一个唯一标识,然后在项目中定义一些常见
go rate使用令牌桶算法实现限流器(干货)
Go rate库 golang.org/x/time/rate 简要介绍:采用令牌桶算法实现限流。 令牌桶算法 描述: 有个固定大小的桶,系统会以恒定速率向桶中放入令牌,桶满则不放。请求到来时需要从桶
【Golang】Functional Options编程第二弹
前言 可以先看看【Golang】编程模式:Functional Options Functional Options编程demo第二弹 代码示例: 运行结果如下: 分析 【若不使用Functional
【Golang】将JOSN反序列化到map或结构体中,实际上是添加key-value或修改结构体成员
示例程序: 输出结果: 结论: 将JSON反序列化到map中,实际上是向已存在的map添加key-value。
【Golang】函数
学习目标 Golang中,函数是一等公民是啥意思 什么是匿名函数 什么是高阶函数 什么是闭包,闭包的用法、常见应用场景 函数是一等公民 关于一等公民(First-class citizen)看看维基百
【Golang】编程模式:Functional Options
前言 作为一个类库作者,迟早会面临接口变更问题,因此接口设计时需要考虑扩展性,保证接口的稳固性,避免接口升级导致旧版本代码不兼容 本篇文章会介绍如何使用Functional Options编程模式来设
【Golang】unsafe.Pointer和uintptr
学习目标 是什么 有什么用 如何用 常见应用场景 简介 unsafe.Pointer和uintptr从命名上看就知道和指针有关系。 unsafe.Pointer 是什么 是指针类型,是任意类型指针,可
Golang的错误处理error
error是什么 error是golang的错误处理机制,error接口定义如下: 创建error 创建方式有两种: errors.New() fmt.Errorf() errors.New 示例:
【golang】Wire依赖注入
依赖注入是啥 首先,程序启动时,一般都要初始化好一批对象:将对象需要的依赖都注入进去。 有这么个需求:程序启动,需要初始化对象A,而对象A依赖对象B 最简单的注入方式:自己手动创建对象B,然后手动注入
【golang】json的omitempty标签
omitempty标签的作用: omitempty作用是在json数据结构转换时,当该字段的值为该字段类型的零值时,忽略该字段。 输出结果: 可以看到string、int、float64、bool类型
Golang rxgo库
好文推荐 https://darjun.github.io/2020/10/11/godailylib/rxgo/ 关键总结 可以类比Java Stream流式编程,Observable就好比Stre
Golang基准测试实战—测试读写大JSON和小JSON数据的读写性能
go基准测试大JSON数据库读写性能go基准测试大JSON数据库读写性能go基准测试大JSON数据库读写性能go基准测试大JSON数据库读写性能go基准测试大JSON数据库读写性能
Golang基准测试
# 单元测试和基准测试的区别 - 单元测试:用于进行**功能测试** - 基准测试:用于进行**性能测试** # 单元测试示例 待测试函数如下: ```go // Fib 计算斐波那契数列中第n个数字
Golang fmt格式化源码分析
源码分析 buffer类型 fmt类型,把输出内容写到buffer中 pp类型的重要方法 doPrintf printArg printValue handleMethods,该方法会调用Format
Golang类型断言
对接口类型变量可以使用类型断言来判断变量是否是某类型,语法:val := i.(targetType)或val, ok := i.(targetType), 其中: i必须是接口类型变量; targe
Golang反射入门
反射是什么 反射允许程序在运行时访问和修改程序运行时信息,比如:获取变量的类型信息、值,修改变量的值,调用方法等等,反射的功能很强大,但反射是把双刃剑,代码可读性极差。 Go反射没有Java反射功能完
【golang指针笔记1】结构体变量存的不是结构体地址,而是结构体数据本身
输出: 结论: 和Java不一样,Java里给一个变量赋值结构体(对象),变量存的是对象的地址。 go里面,一个结构体变量存的就是结构体本身,后续修改结构体变量的值,其实是覆盖原来的结构体的值。所以,
下一页