阿里,字节为何都如此偏爱 Go 语言?

Kirito的技术分享

共 1475字,需浏览 3分钟

 · 2021-07-08

昨天交流群里的一条发言,激起了不小的水花,一位群友最近面试 Java 方向的工作都不是很顺利,于是抱着试一试的态度把 Java 方向的简历改成了 Go 方向的,结果还挺令人吃惊的。



不少群友都对这种情况表示惊讶和不解,纷纷单独找我了解 Go 语言的相关情况。


1、很多人都在问我,到底该不该学习Go语言。直接给你答案吧,你也不信。所以,在正式回答之前,我们还是先说说,到底怎么判断一门语言是不是有前景。


2、左耳朵耗子之前曾经分享过他的经验,看一个技术能不能火起来,主要从三个角度,第一,有没有雄厚的资金支持。第二,有没有一个活跃的社区。第三,有没有杀手级的应用。这个逻辑对不对,你可以用Java以及另外一门没有火的技术来印证下。


3、就拿Go来说,他背靠Google公司,社区非常活跃,并且有Docker、Kubernetes这样的杀手级应用。现在,我们已经看到,Go是云计算时代的首选编程语言,并且,我还可以很确定的说,它正在成为下一个企业级编程语言。


4、Go语言是字节跳动内部使用最多的编程语言。为啥?因为字节跳动更看重效率,Go语言上手简单,学习难度低。另外, Goroutine 和 Channel 这两个神器可以很好解决并发和异步编程的问题。它是新一代的编程语言。


5、如果你的第一语言是PHP,或者Python,或者C#,并且职位是后端工程师,那我还是建议你学学Go。不是鼓吹Go,是我觉得这是趋势,我们不管是写程序,还是做其他事情,都应该顺应时代。


6、云原生是趋势,大部分云原生项目都是用Go写的。如果你想研究Kubernetes,不懂Go可以吗?Java那个赛道很拥挤,如果你想脱颖而出,为什么不试试Go呢?


虽然都说 Go 上手容易,但是想要真正的会使用 Go 语言进行项目的编写,就没有那么容易了。因为大部分人在学习和使用 Go 语言 的过程中,都遇到过这么几个的困境

 

  • 一看就会,一写就懵;书籍或别人的代码基本能看懂,但自己写项目时却不知道如何下手;

  • 写出来的代码有浓重的其他语言味道

  • 貌似都懂,面试就露馅;只会简单使用,不知道如何深入了解、如何进阶;

  • 工程化实践经验为 0 ;只会基于别人的框架填代码,不会自己进行工程化;搬砖似乎永远没有竞争力;

说实话,这些问题我自己也遇到过。因为我们大多数人对于 Go 的学习可能仅限于语法,却不清楚它背后的设计原理,没有亲手做过项目


现在机会来了,极客时间重磅出品  Go 语言基础直播课,3 天带你掌握 Go  语言背后的设计原理及实现方式。


挑战 3 天成功 Go 初级工程师!


极客时间联合某外企高级工程师邓大明,Beego 负责人,Apache Dubbo Committer,手把手带你突破 Go 语言入门瓶颈。学完后你将获得👇

1. Go 语法基础知识和优势
2. 掌握 Go 开发环境搭建
3. 学会如何设计一个 RPC 框架
4.掌握利用反射来实现代理机制
5.实现简单轮训的负载均衡策略
6.掌握服务注册与发现的 API 设计和实现
7.掌握如何发起一个 HTTP 请求掌握序列化与反序列化的技巧
........

如何 0 元学?


长按或扫码添加学习助理即可报名课程

仅 500 个名额,扫码立即加入👇



浏览 29
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报