这是我参与「第五届青训营 」伴学笔记创作活动的第 6 天
今天我学习了Go录播课的“Go框架三件套详解(Web/RPC/ORM)”,录播视频总时长大约120分钟,我通过学习本节课程,将前面所学的内容串联到项目中总体上复习了一遍,并且掌握了Hertz、Kitex、Gorm的基本用法。
一、本堂课重点内容:
- 本堂课的知识要点有哪些?
- Gorm是一个已经迭代了十年多的功能强大的ORM框架
- Kitex是字节内部的Golang微服务RPC框架
- Hertz是字节内部的HTTP框架
二、详细知识点介绍:
- 本堂课介绍了哪些知识点?
- Gorm可以提交事务,增删改查操作数据
- Kitex可以注册服务,然后生成代码
- Hertz可以建立路由,然后生成代码
- 更多精彩内容尽在框架官方文档:www.cloudwego.io/
三、实践练习例子:
- 有什么实践举例帮助理解知识点?
这里需要感谢掘金团队学习手册中让我们下载下来的一个学习项目,用于新手在学习Hertz的使用当中对于工具的学习理解,如果有后来人也可以就此拉取Git项目:
github.com/cloudwego/h… (以上是Hertz新手任务的地址)
此外还有在实战环节,笔记服务项目的地址:
四、课后个人总结:
- 本章有什么知识点不容易掌握?
可能Hertz的代码设计不太好掌握吧,课后学习团队为此还专门为我们发了一套完整的博客,介绍了字节跳动开源 Go HTTP 框架 Hertz 的项目起源、架构设计、功能特性以及性能表现:www.cloudwego.io/zh/blog/202… - 什么地方容易与其他内容混淆?
可能接下来我要说的内容不是本次的核心知识点,但是我还是想说一下这件事情:感觉很多人连框架和架构是什么都搞不清,拿着框架当架构。作为一个软件工程人表示这真的是令人血压升高…- 什么是架构?
一个系统在其所处环境中所具备的各种基本概念和属性,具体体现为其所包含的各个元素,元素之间的关系以及架构的设计和演进原则。
架构是针对某种特定目标系统的具有体系性的、普遍性的问题而提供的通用解决方案。
架构往往是对复杂系统的一种共性的体系抽象。 - 什么是框架?
框架是一个框子——指其约束性,也是一个架子——指其支撑性。
它是一个基本概念上的结构,用于去解决或者处理复杂的问题。
框架并不能提供完整的解决方案,他像是一种特殊的软件,它的服务中会被应用直接调用,为构建解决方案提供良好的基础。
架构则是关于软件如何设计的策略,是比具体代码高一个抽象层的概念。 - 什么是架构?
五、引用参考:
- 我参考了哪些外部博客/笔记/文章?
我参考了掘金录播课中的“Go框架三件套详解(Web/RPC/ORM)”,也就是此次掘金内部课程:
live.juejin.cn/4354/989924…
另外还参考了Foxtail-Grass Studio的专辑封面,作为此次笔记的封面 - 文章中有什么地方是我参考引用了外部博客/笔记/文章的?
主要是课程的主要知识点总结,采用了一边阅读课件一边记录的方式进行了个人的一些学习总结。