掌握Golang的6个理由和尚未这样做的1个理由





你们中的许多人可能至少曾经仔细地看过一种Go,但是却考虑过改用它。在线课程“ Developer Golang”的负责人Anton Telyshev(曾在Sberbank的Kaspersky Lab的Mail.ru工作)讲述了为什么此工具确实证明了围绕它的炒作的正确性以及谁精通Go。



你好!我本人像其他一些老师一样,从“ python”和“ pluss”切换到了Go:







现在,我想强调一些值得掌握这种语言的原因。



1. Golang的简单性和可靠性



基本上,您要进行“开始”游览,打开语言规范,然后看到只有25个关键字,这非常简单。



Golang最初是用来替代C ++的。“ Pluss”可以塞住各种瓶颈,编写复杂的高性能代码。但是与此同时,学习C ++既漫长又困难,尤其是要了解最新的标准,并且对于新手开发人员来说,“自shoot自足”的可能性非常高。是的,在性能方面,Go在某些地方不够完善,但入门门槛较低,弥补了这一不足。



2. Go上开发了复杂有趣的软件



根据我的观察,现在有两种趋势。首先是在Go中,您收集了将JSON从一个地方转移到另一个地方的服务-这主要是在大型公司中发现的,这些任务并不总是特别复杂,通常可以使用为您编写的现成工具来解决。第二个趋势是,Go占据了通常用C ++编写的东西的小众市场:高效的后端,数学,数据处理,关键的非常规业务逻辑。总的来说,.Net或Java以前放在“ pluss”肩膀上的东西现在正尝试放在Go上。让我们记住相同的Docker或Kubernetes。



3.大型公司越来越多地使用Golang



如果您去HeadHunter,在顶级的Go公司中您可以找到Avito,它几乎完全从PHP切换到Golang,OZON,完全在Go上运行,Wildberries,其在C ++ / Rust和Go中运行,以及Joom和Mail.ru ,送货俱乐部等)。如我们所见,其中大多数现在是市场。顺便说一下,Mail.Ru可以被称为Go的先驱:一次,Mail从C重写为Go,仅easyjson就值得社区做出贡献。



4.“重写重写”趋势。但同时,还没有所有内容的Go库。



与以前一样,例如,一切都从Perl重写为Python,现在一切都从Python重写为Go。尽管没有所有内容的库,但是您可以根据需要为社区做出贡献。例如,实现用于机器学习的东西或用于配置,使用图像等的其他库等。尽管Go中有许多图书馆,但其生态系统仍不如其他语言丰富。



5.微服务的趋势



大型公司中的整体式装置开始瓦解,无法支持用一种语言编写的大型系统。Go对于创建微服务非常有用,因此对此类开发人员的需求只会增长。



6.开发人员稀少且昂贵



当然,这是一个有争议的论点,因为每个季度情况都在变化,并且越来越多的新成立的专家争夺初始职位。尽管如此,中/高级围棋开发者仍倾向于比其他语言的专家要求更高的薪水。



总而言之,无论是从简化开发流程还是从职业角度而言,我认为Golang确实是一种有前途的技术。
我建议您等待Go的唯一原因是,如果您将其视为第一语言。


对于初学者来说,主要的问题是Go中的某些内容仍然比相同的Python或任何其他解释语言中的内容少一些。您必须考虑内存的工作原理,调度程序,如何避免在某些地方用脚踢自己-通常初学者并不了解这些东西。粗略地说,如果您学习C ++,那么您就可以轻松地在指针中进行导航,这是底层编程的神奇之处。



我们的在线课程“ Golang Developer”也是如此。 “专业”针对那些已经熟悉编程的人。来学习的人可以分为三类:



  • 3- , , , . Middle/ Senior , .
  • , DevOps-, , Go. , . — Go- .
  • Go- 1 , . Go, .


我们试图使课程更深入,更有用,而不是“船长的课程”。 35节网络研讨会计划涵盖了开发和部署中的所有必要知识。此外,在每个流中,我们都会更新示例,删除不再相关的示例,并添加有用的趋势。有很多材料可以掌握-网络研讨会,摘要,实践,老师的评论,推荐的文学和文章。顺便说一下,我们有一些学生需要重新注册课程,以学习新主题并巩固旧知识。



在前三个模块中,实际任务互不相关,它们集中于学生学习使用每种技术的情况。在以下模块中,您将一致地编写微服务,这将成为产品组合的一部分。



如果您想精通Golang,我邀请您参加本课程入门测试课程于8月27日开始,但您可以在9月加入小组我们在OTUS等着您!



All Articles