http://mpvideo.qpic.cn/0b2efuaacaaapiabgz7znvrfalodaewqaaia.f10002.mp4?dis_k=b720a91e1747133dc7917aa4a6bf0af7&dis_t=1669035075&vid=wxv_2531649293250969601&format_id=10002&support_redirect=0&mmversion=false
最近入职新公司,认识了几个新同事,并且都是做PHP开发的。在一次沟通中,聊到了Go相关的话题,他们也是最近在学习Go。因为个人也是接触Go有一段时间了并且都有线上的单体应用、微服务相关的实战经验,便分享了一些个人在学习Go中的一些经验总结。本文分享给大家。
对于Go这门开源的编程语言来讲,国内可是早已经热火朝天了。导致不管是做PHP、Java、C还是其他的语言的开发者都开始拥抱这门编程语言。同时互联网招聘市场对Go开发者的需求也越来越多
,工资待遇也是非常不错的
。如下图是上海地区,招聘1-3年的Go开发者薪资待遇。
首选我们学习一门编程语言,我们明确自己为什么去学习?该如何学习?学习之初该通过什么渠道去学习?用我个人的学习原则就是2w1H
。2w指的是what(是什么?),why(为什么?),How(如何做?)。
下面就来具体分析一下个人是如何入门Go,并正式踏入Go这门编程语言的。首先学习一门语言有两种场景的途径,一种是看官方文档
,另外一种是看教学视频
。这两种方式因人而异,有的是喜欢看视频,因为视频更加直观、易懂,有的人是喜欢看文档,比较方便并且能够前面的了解这门语言(个人观点,教学视频一般都是老师根据自己经验录制的视频,很多都是实战经验,但是不会把所有的知识点讲全面,很多知识还是需要自己花时间去深入的学习)。
Go的优势
、Go的环境安装
、Go的数据类型
、Go协程
相关的知识。该书讲的非常的基础,并且有大量的配套问题进行练习,基本上每一个章节的末尾都有一个问题,让你完成该问题。但也存在一个问题,核心知识比较零散,需要自己去总结
。偏向一些总结性的知识,并且涵盖了web开发常见的核心知识
。对于一些知识点介绍的比较浅,不是很深入,毕竟是一门入门级的书籍。上面的两本书籍,全程的看完一遍并且照着其中的代码都手敲一遍,基本算是有一个入门的了解。如果你不喜欢看书籍,给大家推荐几个不错的视频教程。
学习过Go语言,会发现其实语法真的很简单并且很少。难的是深入以及它的底层知识。当然我们最开始并不需要深入的知识底层原理类的知识,更多的是知道怎么写,多一些实战项目经验。
我们如何去找入门项目呢?
这个问题被问到过很多次,至于答案其实非常简单。
有价值并且难度较为复杂的功能模块
。然后使用Go语言实现一遍。Gin框架。Gin 是一个用Go编写的 HTTP Web框架。Gin框架包含了web开发常用的功能。例如路由、中间件、cookie、请求验证、接口响应、日志处理等等功能,非常适合入门的一个web框架。这里推荐一套视频教程。Golang框架Gin入门实战教程
Go-redis。用于Redis服务器和Redis集群的Golang Redis客户端。开箱即用可与 Redis 服务器、Redis 集群、Redis Sentinel 甚至 Redis 服务器环一起使用。支持管道、事务、发布/订阅、Lua 脚本、模拟、分布式锁等。
后面的内容写起来有点累了,自己看上面的视频吧。。。。。。