浅学 go 开发 | 青训营笔记

70 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 2 天。 今天看了一下赵征老师的视频课,主要是学习一下 go 进阶知识中的工程实践。主要是包括了项目中的依赖管理(主要是 go get/mod 两个指令,这个地方可以类比一下 Java 中的 maven),然后学习了一下单元测试,基准测试等等一些测试相关的基础知识。单元测试主要包括,输入,测试单元,输出,以及校对,单元的概念比较广,包括接口,函数,模块等;用最后的校对来保证代码的功能与我们的预期相符;单侧一方面可以保证质量,在整体覆盖率足够的情况下,一定程度上既保证了新功能本身的正确性,又未破坏原有代码的正确性。这是第一部分课成的一些基础知识。

然后第二部分学了一下 go 中的 gin 框架,太好用了,对比 Java 中的 SpringBoot 简直是又简洁又高性能。克隆了一下赵老师的演示项目,并对其中的重点代码加了点注释,这个过程又学了很多 gin 的知识不得不说 gin 中与前后端的交互实在是太方便了,在 Java 中需要配置好久的东西,gin 中几行就搞定了。

下面展示一下 gin 中几个常见的方法:

  • r := gin.Default() :创建一个服务
  • r.GET(url, func(c *gin.Context) {}) :用来处理处理 url 下的 GET 请求(参数中的 Context 就是上下文)
  • err := r.Run() :启动整个服务(Run对服务器进行一些设置,设置端口之类的)
  • data := handler.QueryPageInfo(topicId) :与后的服务层进行交互,获取前面的 QueryPageInfo 服务
  • c.JSON(200, data) :向前端返回数据

哦对了,今天还下载了一个安卓模拟器,在自己的电脑上运行了一下青训营大项目的客户端,一开始连接不上,后来把客户端的IP设置成了本机(下图是设置方法),就成功的跑起来了,不错!今天也是收获满满!

d203f27f-8bd2-490d-b37b-0fde732138ab.jpeg