go语言开发入门:GO 开发者对 GO 初学者的建议

科工人
• 阅读 1346

以促进 India 的 go 编程作为 GopherConIndia 承诺的一部分。我们采访了 40 位 Gophers(一个 Gopher 代表一个 GO 项目或是任何地方的 GO 程序员),得到了他们关于 GO 的意见。如果你正好刚刚开始 go 编程,他们对于我们一些问题的答案可能会对你有非常有用。看看这些。

go语言开发入门:GO 开发者对 GO 初学者的建议

应该做:

通读 the Go standard library 和 Effective Go,为了学习 GO 的规范,Effective Go 是被高度推荐的,尤其是如果你有其他语言的背景。

在 Go tour 上做练习

看完语言参考

练习 Go by Example,而不仅仅是复制粘贴!

坚持编写 GO 代码,在几周内你将会在这门语言上变得高效

理解接口的功能,他们是 GO 最大的礼物之一,可能比 channels 和 goroutines 还重要。这个关于接口的文章 article on interfaces 和 Andrew Gerrand 在 GopherCon 2014 上的 keynote 接口的描述 会对你非常有帮助。

抛弃你的 OO 的思想包袱,如果你来自于其他语言,比如动态语言 Python 或是 Ruby,或者是一个编译型语言如 Java 或 C#。GO 是一个面向对象的语言,但是它不是一个基于 class 的语言和不支持继承。

了解继承从 GO 语言中移除了。实践组合的用法而不是继承的机会显现了,并且纠结于继承只会导致你沮丧

不要以其他语言的风格编写 GO

寻找更加有经验的 Gophers,他们能帮助你 review 代码片段和给你反馈。在 GO 社区能得到真正的支持和帮助

用 GO 实现你想法中的一个项目或是找到一个项目来工作。然后随着你学习的更多,不断重构你的应用。利用邮件列表和参加 Gopher Academy Slack group 来见其他的 Gophers 来得到帮助。Dave Cheney 的博客和 GoingGo 的博客也是一个非常好的开始

不要等待泛型和函数式被添加进语言;屏住呼吸并学习爱上我们在今天拥有的这门语言

给 go 初学者分享的一些问题

对于任何人来说学习一门新语言可能都是令人挫折的。GO 社区是不可置信的活跃,你不是孤单的。利用所有的文档,博客,本地的 Meetups 和用户组,比如 Slack。不要害怕问问题和参与

如果你对 GO 感兴趣,使用它的一侧涉足,或是专业的使用它,如果本地有 Go meetup,考虑参与。如果你有货,考虑去分享它

如果你有计划旅行,并且有能力,努力去访问 GO 社区目的地

来访的用户群体是个证明这个社区有众多的用户,支持者和雇员的途径

不要浪费时间去和其他语言比较,如果你喜欢 GO,就爱上他并且去使用它

接受 Go 的文化和 GO 做事情的方式。你的代码会感谢你,如果你这样做了,你会得到很多

不要冲动的引入依赖

简单是 GO 最重要的特征。避免过分设计,使用简单的代码片段而不是单一的庞大的代码库

从其他语言移植库到 GO 是一个很好的做法,它允许你剥离他人的代码并且以符合 GO 语言的方式粘合起来。

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
3年前
Golang指南:顶级Golang框架、IDE和工具列表
自推出以来,Google的Go编程语言(Golang)越来越受主流用户的欢迎。在2016年12月的一份调研中,3,595名受访者中有89%表明他们在工作中或工作以外用Go语言编程。此外,在编程语言中,Go语言在专业知识和偏好方面排名最高。2017年7月,在Tiobe的年度编程语言排名(https://www.tiobe.com/tiobeindex
可莉 可莉
2年前
10. Go 语言流程控制:for 循环
Hi,大家好,我是明哥。在自己学习Golang的这段时间里,我写了详细的学习笔记放在我的个人微信公众号《Go编程时光》,对于Go语言,我也算是个初学者,因此写的东西应该会比较适合刚接触的同学,如果你也是刚学习Go语言,不防关注一下,一起学习,一起成长。我的在线博客:http://golang.iswbm.com(https://
Stella981 Stella981
2年前
Go编程语言前景怎么样?参加培训好就业吗
Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C代码的速度,而且更加安全、支持并行进程。不仅可以开发web,可以开发底层,目前知乎就是用golang开发。区块链首选语言就是go,以太坊,超级账本都是基于go语言,还有go语言版本的btcd.!(https://oscimg.oschina.net/oscne
程昱 程昱
1个月前
体系课-慕课Go开发工程师2023全新版
体系课慕课Go开发工程师2023全新版|完结无密|独家首发download》quangneng.com/3683/Go(也称为Golang)是一种由Google开发的编程语言,特点是简洁、高效、并发支持强大。作为一名Go开发工程师,以下是你可能需要具备的技
乐和 乐和
1个月前
马哥教育-Go语言开发|2023年第12期
马哥教育Go语言开发|2023年第12期download》chaoxingit.com/4521/Go语言开发的介绍Go语言,也称为Golang,是一种由谷歌开发的开源编程语言,于2009年首次发布。它的设计目标是提供一种简洁、高效、可靠的编程语言,适用于
乐和 乐和
1个月前
2023全新GO工程师面试总攻略,助力快速斩获offer
2023全新GO工程师面试总攻略,助力快速斩获offerdownload》chaoxingit.com/2319/GO核心要点GO(也称为Golang)是一种由Google开发的开源编程语言,具有简洁、高效、并发性强等特点。以下是GO语言的核心要点:简洁清
何婆子 何婆子
2个月前
体系课-慕课Go开发工程师2023全新版|完结无密|独家首发
体系课慕课Go开发工程师2023全新版|完结无密|独家首发go语言和go开发工程师的背景介绍download》chaoxingit.com/3855/以下是关于Go语言和Go开发工程师的背景介绍:Go(Golang)语言:1.语言背景:Go是一门由Goog
贾蓁 贾蓁
2个月前
体系课-慕课Go开发工程师2023全新版|完结无密|独家首发
体系课慕课Go开发工程师2023全新版|完结无密|独家首发download》http://quangneng.com/3683/Go开发工程师Go(也称为Golang)是一种由Google创建的开源编程语言,设计用于提高程序的开发效率和性能。Go语言具有简
秦朗 秦朗
2个月前
2023马哥Go语言开发第12期
//下仔のke:https://yeziit.cn/15142/Go语言,又称Golang,是一种开源的编程语言,由Google的RobertGriesemer、RobPike及KenThompson开发。Go语言具有静态强类型、编译型语言的特性,同时兼具