随笔分类 -  Golang

摘要:使用Golang编程时,一般只有在写最终的main函数时我们才有机会调用某个函数进行测试,在大型项目中如果只负责编写某个非main模块时应当如何测试函数的可用性? Golang提供了Testing模块,这个模块可以让我们随时随地进行函数功能验证。 testing - The Go Programmi 阅读全文
posted @ 2022-11-25 16:43 realcp1018 阅读(152) 评论(0) 推荐(0) 编辑
摘要:本文参照如下官网链接: gRPC简介:https://grpc.io/docs/what-is-grpc/introduction/ proto语法:https://developers.google.com/protocol-buffers/docs/proto3 如何使用proroc工具和相关插 阅读全文
posted @ 2022-09-14 14:38 realcp1018 阅读(390) 评论(0) 推荐(0) 编辑
摘要:ent快速上手一文中介绍了如何在ent框架内使用ORM思想操作数据库,本文讲述下如何在ent框架下执行裸SQL语句。 ent通过引入sql/execquery的feature flag来支持裸SQL执行,这样可以绕过繁琐的relational mapping部分。 详见:https://entgo. 阅读全文
posted @ 2022-09-01 19:02 realcp1018 阅读(1506) 评论(0) 推荐(0) 编辑
摘要:https://entgo.io/docs/getting-started https://github.com/ent/ent ent是一款facebook开源的go语言ORM框架,类似于gorm等用于实现数据库对象映射和操作的框架。ent的不同之处在于他可以使用图模式来表达对象之间的关系,在需要 阅读全文
posted @ 2022-09-01 17:38 realcp1018 阅读(5658) 评论(0) 推荐(0) 编辑
摘要:https://go.dev/blog/intro-generics 在《Interface简介》一文中,我使用如下代码实现了简单的Contains函数: package main import ( "fmt" ) func main() { var s []interface{} s = appe 阅读全文
posted @ 2022-07-29 15:45 realcp1018 阅读(1540) 评论(0) 推荐(0) 编辑
摘要:GUN make文档: https://www.gnu.org/software/make/manual/make.html 以前使用make编译C++的项目是比较常见的场景,如今go也可以使用make啦。 为什么要引入make? 当我们写完一个go项目后,可以使用go build来将项目编译为可执 阅读全文
posted @ 2022-07-29 15:40 realcp1018 阅读(1206) 评论(0) 推荐(0) 编辑
摘要:What is the difference between Builder Design pattern and Factory Design pattern? - Stack Overflow A factory is simply a wrapper function around a con 阅读全文
posted @ 2022-02-10 12:35 realcp1018 阅读(456) 评论(0) 推荐(0) 编辑
摘要:项目地址:spf13/cobra: A Commander for modern Go CLI interactions (github.com) 文档地址:cobra/user_guide.md at master · spf13/cobra (github.com) Overview cobra 阅读全文
posted @ 2022-01-04 16:55 realcp1018 阅读(4780) 评论(0) 推荐(0) 编辑
摘要:go - Should I use panic or return error? - Stack Overflow 上述回答解释了panic与error的区别,一般来说panic用于会导致整个程序崩溃的错误(goroutine panic也会导致主程序panic),而error用于处理程序中可预见的 阅读全文
posted @ 2021-12-20 11:33 realcp1018 阅读(386) 评论(0) 推荐(0) 编辑
摘要:近日某公众号连推2篇关于context的文章,图文不符的错误多处,也不适合我理解,因此查看官方文档后总结一篇笔记。 context package - context - pkg.go.dev type Context interface { Deadline() (deadline time.Ti 阅读全文
posted @ 2021-12-16 21:47 realcp1018 阅读(914) 评论(0) 推荐(0) 编辑
摘要:在为某个项目添加了通过命令行获取指定配置的模块后,在一些模块内部跑test发生了如下错误: flag provided but not defined: -test.timeout 很显然,跑go test时涉及到了flag解析。 go test是以package为单位进行测试的(无论是否通过-ru 阅读全文
posted @ 2021-12-06 14:18 realcp1018 阅读(2712) 评论(0) 推荐(0) 编辑
摘要:time package - time - pkg.go.dev 本文就不对官方文档做详细解析了,只贴一些常用的示例。如需查看官网点击上述链接即可。 一、时间的加减以及格式化示例: func main() { s := time.Now().Add(time.Hour * -2) now := fm 阅读全文
posted @ 2021-12-02 17:12 realcp1018 阅读(448) 评论(0) 推荐(0) 编辑
摘要:log - The Go Programming Language (golang.org) import ( "log" ) func main() { log.Print("Logging in Go!") } log模块的Fatal与Panic开头的function都会直接终止程序运行(os. 阅读全文
posted @ 2021-09-03 11:18 realcp1018 阅读(320) 评论(0) 推荐(1) 编辑
摘要:yaml与toml是当前流行度较高的两种配置文件类型,其解析方式也非常类似,因此本文将他们合在一起讲。 go-yaml/yaml: YAML support for the Go language. (github.com) BurntSushi/toml: TOML parser for Gola 阅读全文
posted @ 2021-06-08 15:52 realcp1018 阅读(2874) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示