获得徽章 1
- #青训营 x 字节后端训练营# day6:
文章简单介绍了RPC框架的入门使用,使用brew生成代码,还给出了一个简单的随机负载均衡的用例,介绍了负载均衡的算法。该框架类似于springcloud的nacos,实现了负载均衡。评论点赞 - #青训营 x 字节后端训练营# day5:
go的单元测试实现的方式也是十分简洁。 例如 hallo_test.go 在项目文件后加 _test就能标记这是一个test文件。
go test的常用参数:
-bench regexp 执行相应的 benchmarks,例如:-bench=.
-cover 可以查看覆盖率
-run regexp 只运行 regexp 匹配的函数,例如:-run Array 那么就执行包含有 Array 开头的函数,该参数支持通配符 `*`,和部分正则表达式,例如 `^`、`$`
-v 显示测试的详细信息展开评论点赞 - #青训营 x 字节后端训练营# day4:
go mod 是go 新推出的包管理框架,一改从前go path的配置的繁琐。 使用 go mod init 初始化模块, 运行后也可以是直接使用 go run . 了
对于项目,需要在包的mod 文件夹内配置根路径的位置,以后的项目就以这个根路径为主了。展开评论点赞 - #青训营 x 字节后端训练营#
day3
这篇文章讲明白了goland的零值,空值与空结构。
简单总结就是
对于值类型:布尔类型为 false, 数值类型为 0,字符串为 "",数组和结构会递归初始化其元素或字段,即其初始值取决于元素或字段。
对于引用类型: 均为 nil,包括指针 pointer,函数 function,接口 interface,切片 slice,管道 channel,映射 map。
对于 := 初始化的结构体类型,会自动初始化变量,所以其零值不为nil。对于零值的nil,仍然可以调用其方法。
nil 是 Golang 中预先声明的标识符(非关键字保留字),其主要用来表示引用类型的零值(指针,接口,函数,映射,切片和通道),表示它们未初始化的值,它并不是一个变量,不能被初始化,nil != nil。因为一个变量的确定由(type,value)决定。但对于 var p int*这类可以被确定类型的nil, nil == nil展开评论点赞 - #青训营 x 字节后端训练营#
day2:
这篇文章讲述了go web开发的常见流程。从原生的web框架到gin框架,讲了go框架的Auth的实现,路由转发的方式(router) 运行方式,restful风格,gin框架的装饰器模式配置路由。阐述了gin注册路由的流程——以方法数组(get、post)为根,构建一颗路由的二叉树。从原生的web 慢慢的变成了我们熟悉的gin框架。
还讲述了gin框架的基本方法,
Param取url上的参数,
PostForm取得post方法的参数
Query取get方法的参数
QuaryArray取get的数组(Post也类似)
GetQueryArray多返回了是否存在(Post类似)
QueryMap返回map
defaultPostForm(Get类似)
FormFile 取文件
MultipartForm 取文件数组
*SaveUploadedFile 直接把文件保存到一个位置*
学到挺多。展开评论点赞