首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
沐羽0
广东工业大学 golang
发布于广东
关注
已关注
取消关注
@zijing2333:
Java学不动了,要不试试转Go?
背景:C9计算机本硕,刚参加完22年秋招,纯Golang选手,斩获多大厂SP offer00 前言最近有学弟吐槽Java越学坑越深,自己精力有限,感觉是力不从心,很可能学不完,然后自己开始想转Go,求一份学习路线。我恰好会一点点,但是会的也不多。做这份路线时候我没把一堆资料教程全扔出来,怕就怕最后沦为收藏吃灰的下场,秉持着多不如精的思想,保证学习先掌握精髓,就做了这份学习路线。虽然不多,但是学完了找工作还是不成问题的。针对具体学什么语言可以看看我这篇分享:https://www.nowcoder.com/discuss/461190045332992000事先说明:不用吐槽学了某门语言就找不到工作了,找不到工作的人换语言赛道其实还是找不到工作,因为换语言解决不了问题,更重要的是算法刷题、计算机网络、操作系统、数据结构、计算机组成原理、设计模式这些通用东西,以及自己的核心竞争力。01 Go的岗位国内目前很多公司在用Go,如字节、腾讯、百度、阿里云、蚂蚁金服、京东、滴滴、深信服、米哈游等,岗位如下:后端开发:用于开发 Web 服务器、API 服务、微服务、分布式系统等后端应用,原先是字节跳动带起来的,现在越来越多的公司技术上开始向Go迁移了。基础设施开发:基于K8s开发本公司的基础平台,京东、TiDB用Go搭建自己的分布式存储系统,这部分工资还算不错。游戏服务器开发:用Go开发服务器效率很高,性能也不错,这部分主要工作是编写游戏逻辑、网络通信等模块。区块链:区块链需要高度安全性和并发性,用 Go 进行区块链开发很合适。目前许多主流的区块链项目,如 Ethereum、Hyperledger Fabric、Cosmos SDK 等都采用了 Go 作为主要开发语言。有人担心岗位不够,但是能投的还是挺多的,举个例子最近的米哈游校园招聘:可以看到很多都要求是Go优先,其他公司也有就不举例子了,职位上不用担心。02 Go基础相信大家第一门入门的编程语言一定是C语言,Go被称为21世纪的C语言,同样也有语法简单、性能高效的特点。与C语言对比,Go提供了更友好的并发编程、内存管理、标准库的支持,解决了C的一些不足。如果你有其他高级语言的编程经验,学习Go应该非常容易。基础阶段一般是1~3周的学习时间,这个阶段主要学习的内容如下:语言基础:包括基本语法、数据类型、变量、常量、运算符、流程控制语句等函数:包括函数的定义和参数传递、匿名函数等数组、切片和map:包括数组、切片和map的定义、初始化、添加、删除操作结构体和指针:包括定义、访问、操作接口和类型断言:包括接口定义、类型断言操作并发编程:包括goroutine、channel、锁等文件和网络编程:包括文件和网络编程的基本概念和实现方式文档学习和视频学习根据自己习惯选一种方式即可,下面是我看过的一些比较优质的教程。文档类【官方教程 A Tour of Go】网址:https://go.dev/tour/welcome/1【GoGuide】网址:https://github.com/coderit666/GoGuide视频类【七米老师】视频地址:https://www.bilibili.com/video/BV1Jt411T7nE/博客地址:https://www.liwenzhou.com/【IT营】视频地址:https://www.bilibili.com/video/BV1XY4y1t76G03 GoWeb+数据库Web基础和数据库高度相关就放一起了,学习Web主要掌握路由、中间件、参数绑定、渲染模板等功能;学习数据库主要学习Go如何使用SQL对数据库进行数据存储,以及ORM框架如GORM的使用。Web目前比较流行的GoWeb框架有Gin、Echo、Beego、Iris等,这边推荐学Gin就可以了。【Gin框架】主要是阅读Gin框架的文档和示例代码,了解gin的API和特性,例如路由、中间件、JSON解析等。官方文档:https://gin-gonic.com/zh-cn/docs/视频教程:https://www.bilibili.com/video/BV1XY4y1t76G?p=51数据库这阶段是以数据库为基础开始学习的。在你学过数据库了解操作,再来学习如何用Go操作数据库。不要本末倒置。【sqlx】sqlx是一个基于Go语言的第三方库,它提供了一组扩展了标准库database/sql的功能。性能敏感的喜欢裸写sql,用sqlx。网址:https://github.com/jmoiron/sqlx【GORM】GORM提供了一种简单的方法来处理关系型数据库操作。ORM代表对象关系映射,允许将对象模型映射到关系型数据库模型中,从而简化数据访问。网址:https://gorm.io/视频教程:https://www.bilibili.com/video/BV1U7411V78R【Redis】这里的学习主要是熟悉API操作,没什么原理和技巧性内容。所以请先去Redis之后再来动手实践。网址:https://redis.uptrace.dev/zh/04 Go进阶源码阅读Go的源代码是理解Go语言的关键步骤。可以从标准库开始,逐渐深入了解Go的内部工作原理。学习过程中重点查看一些Go的实现细节和设计决策,如Go的内存模型、调度器、垃圾回收等。【官方标准库】网址:https://pkg.go.dev/std【煎鱼的博客】覆盖 Go 语言从编译到运行的方方面面,让你对 Go 语言有更加整体和深刻的认识。网址:https://draveness.me/golang/Ggo【Go语言高级编程】了解如何在Go代码中调用C语言的函数和访问C语言的数据类型。网址:https://chai2010.cn/advanced-go-programming-book/Test很多人不喜欢或者不会写软件的测试,但是写好测试可以解决开发过程中的大部分问题。【Learn Go with tests】通过编写测试驱动的代码来了解Go语言的基础知识,项目覆盖了基本语法、数据类型、函数、指针、错误处理、并发编程等测试方面的内容。网址:https://studygolang.gitbook.io/learn-go-with-tests/【gomock】Go语言的一个Mock框架,用于在单元测试中模拟和替换依赖项的行为,大厂比较常用的Golang测试库。网址:https://github.com/golang/mock设计模式学习设计模式可以解决复杂的软件设计问题,提高代码的可重用性、可维护性和可扩展性,属于编程的内功。如果没学过设计模式正好通过【Go设计模式24】一同学习了。【Go设计模式24】网址:https://lailin.xyz/post/go-design-pattern.html05 云原生和微服务云原生Docker和K8s太出名就不多介绍了,视频教程我看了不少,推荐一下认为讲的比较好的视频教程,想深入学习还是得自己补充很多东西。【Docker】官网:https://www.docker.com/视频教程:https://www.bilibili.com/video/BV1og4y1q7M4/【K8s】官网:https://kubernetes.io/zh-cn/docs/home/视频教程:https://www.bilibili.com/video/BV1Qv41167ck微服务gRPC、Istio和micro都是基于云原生架构的微服务框架,都支持使用微服务架构构建云原生应用程序。学一个掌握思想就可以了。【gRPC】Google开发的开源RPC框架,使用Protocol Buffer作为默认的消息序列化机制。网址:https://grpc.io/【Istio】Istio是一个开源的服务网格平台,提供了流量管理、安全、监控和跟踪等功能。网址:https://github.com/micro/micro【micro】一个轻量级的微服务框架,提供了基于Go语言的微服务运行时和一组基本服务,如服务发现、负载均衡和配置管理等。网址:https://github.com/go-micro/go-micro06 实战这部分主要是造轮子,帮你更好地掌握开发的细节实现和架构设计,加深动手实践能力。【go-admin】基于Golang和Vue的后台管理系统框架,支持MySQL、PostgreSQL等多种数据库,包括文件上传、验证码、邮件发送、权限验证等功能,可以自己尝试造一遍。【七天实现Web框架】网址:https://geektutu.com/post/gee.html第一天:前置知识(http.Handler接口)第二天:上下文设计(Context)第三天:Trie树路由(Router)第四天:分组控制(Group)第五天:中间件(Middleware)第六天:HTML模板(Template)第七天:错误恢复(Panic Recover)【7天实现分布式缓存】网址:https://geektutu.com/post/geecache.html第一天:LRU 缓存淘汰策略第二天:单机并发缓存第三天:HTTP 服务端第四天:一致性哈希(Hash)第五天:分布式节点第六天:防止缓存击穿第七天:使用 Protobuf 通信【七天实现ORM】网址:https://geektutu.com/post/geeorm.html第一天:database/sql 基础第二天:对象表结构映射第三天:记录新增和查询第四天:链式操作与更新删除第五天:实现钩子(Hooks)第六天:支持事务(Transaction)第七天:数据库迁移(Migrate)【七天实现RPC】网址:https://geektutu.com/post/geerpc.html第一天:服务端与消息编码第二天:支持并发与异步的客户端第三天:服务注册(service register)第四天:超时处理(timeout)第五天:支持HTTP协议第六天:负载均衡(load balance)第七天:服务发现与注册中心(registry)07 面试 进程、线程、协程的区别?goroutine相比线程的优势?go与Java的区别?go语言中是如何实现继承的?for遍历多次执行goroutine会存在什么问题?init函数是什么时候执行的?slice的扩容机制?slice是线程安全的吗?slice之间怎么进行比较?map之间如何进行比较?map如何实现顺序读取?map的底层数据结构?bucket是如何工作的?map的查找过程?如何实现一个线程安全的map?channel的概念?channel有哪些状态?如何判断channel已经关闭?channel的底层实现原理?channel发送数据和接收数据的过程?channel是否线程安全的?channel如何实现线程安全的?channel的应用场景?select的用途?defer的概述?defer的使用场景?defer函数和return的执行顺序?GMP模型?GMP的调度流程?goroutine什么时候会被挂起?golang的垃圾回收?垃圾回收的触发条件?
点赞 50
评论 10
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
05-07 10:50
东北农业大学 C++
c++简历求指导
投了十几个无人回应
花环鞣:
佬,我隔壁的
点赞
评论
收藏
分享
05-08 13:44
同济大学 C++
在松江园区上班是一种什么体验?
先放一张从办公楼视角的园区图⬇️ 入职巨人快一年了。这一个年最大的感受是——我好像没在“上班”,就是换了个地方生活。 🏡 关于住:提供两年宿舍,第一年免费入职当天领到宿舍钥匙的那一刻,我人是懵的。双人间,水电全免,冰箱、洗衣机、微波炉全配好了,每个房间独立Wi-Fi,柜子大得能塞下我大学四年的家当,公共区域每天有人打扫。最离谱的是什么?宿舍到工位步行5分钟,早上9:50起床都不会迟到。🍜 关于吃:食堂卷到离谱,3.5元吃一顿早餐巨人的食堂,是那种会让离职员工专门发帖怀念的存在。早餐:土豆饼、萝卜丝饼、煎饼果子、小馄饨、包子、豆浆、八宝粥……我每天的早餐标配是煎饼果子(3元)+豆浆(0.5元...
巨人网络成长空间 114人发布
点赞
评论
收藏
分享
04-29 21:43
中国石油大学(华东) Java
暑期实习&&日常实习毫无收获
牛友们谁能帮忙看一下为什么没约面试的 从四月初投到现在…..是我的简历有问题吗
我的求职进度条
点赞
评论
收藏
分享
04-01 17:56
南开大学 Web前端
腾讯为什么一直挂我 然后秒捞
要招就招,每次一脚踢开,挂完一两小时后 发面试邀请,我又乖乖接受 还有机会吗
recul:
我们鹅孝子是这样的。我已4战腾讯
点赞
评论
收藏
分享
05-07 08:56
门头沟学院 Java
实习第一天,是喜剧片、悬疑片还是灾难片?
家人们谁懂啊!刷到这个话题,我脚趾已经开始抠地了。实习第一天,根本不是什么职场精英开启新征程,全是大型社死现场、手足无措悬疑片、手忙脚乱灾难片,能顺顺利利过完第一天,都算你赢了!今天就给大家盘点一下,互联网实习生实习第一天的经典名场面,我赌90%的牛友至少中过一条!【悬疑片:我是谁?我在哪?他们是谁?】提前半小时到公司,在楼下徘徊不敢进去 谁实习第一天不是这样?定了提前一小时的闹钟,提前半小时到公司楼下,结果在楼下便利店、地铁站绕来绕去,就是不敢上去,生怕去早了没人接待,社恐到极致,最后卡点冲进公司。认人环节,10个人介绍完,一个名字没记住 mentor带着你挨个工位认同事,张哥李姐王哥刘姐,...
实习第一天,你在干什么
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
27 届前端 er 第一段实习故事
2.5W
2
...
30天的回望与总结
1.9W
3
...
招了一年实习生,撑过三个月的一只手数得清
1.1W
4
...
春招没进大厂,我的人生会完蛋吗
1.0W
5
...
字节一面
6754
6
...
破防了,腾讯技术实习月薪涨了近50%…
4962
7
...
恒生春招
4183
8
...
暑期结束了............(帮选offer)
3814
9
...
小米top2简历全挂(但我同学已oc)
2921
10
...
0基础速通阿里暑期
2872
创作者周榜
更多
正在热议
更多
#
你的实习产出是真实的还是包装的?
#
88512次浏览
638人参与
#
什么专业适合考公
#
69469次浏览
345人参与
#
在爱玛,骑向未来
#
44281次浏览
434人参与
#
机械人,说说你的烦心事
#
148503次浏览
1162人参与
#
毕业季,给职场新人一些建议
#
221124次浏览
2600人参与
#
工作压力大,你会干什么?
#
82335次浏览
707人参与
#
选offer应该考虑哪些因素
#
172464次浏览
1057人参与
#
工作后,你落下了哪些病根
#
42331次浏览
294人参与
#
机械人,秋招第一次笔试的企业是哪家?
#
103442次浏览
707人参与
#
巨人网络工作体验
#
76598次浏览
507人参与
#
如何缓解入职前的焦虑
#
290753次浏览
1505人参与
#
携程笔试
#
174182次浏览
916人参与
#
我的第一份实习怎么找的
#
288547次浏览
2108人参与
#
重来一次,我还会选择这个专业吗
#
466627次浏览
3983人参与
#
你被哪些公司挂了?
#
197979次浏览
1076人参与
#
职场新人体验
#
192714次浏览
1241人参与
#
实习生的蛐蛐区
#
957484次浏览
4840人参与
#
实习生工资多少才算正常?
#
76114次浏览
526人参与
#
应届生,你找到工作了吗
#
174050次浏览
900人参与
#
找工作中的小确幸
#
92815次浏览
472人参与
#
你上一次加班是什么时候?
#
157440次浏览
823人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务