这里有一份完整详细的Go语言学习笔记,来自网友hoanhan101,记录了他从零开始学习Go语言所用的方法,以及对应全部学习资料。
Hacker News一天升至400热度,好评如潮,用一句话概括就是:适合新手服用。
hoanhan101小哥建议,从零开始入门Go语言,可以分成三个阶段。
一阶段,啃完Ultimate Go Programming的视频讲座。
二阶段,利用Go语言培训社区Ardan Labs里提供的资源,强化实践。
三阶段,反过来研究关于计算机系统的理论教材,对系统知识再进行了解。hoanhan101的学习思路是,注重理论与理论的结合,并且不能放弃死抠源代码。
重点来了,上述三个步骤需要的课程资源,hoanhan101小哥帮你整理好了,在GitHub资源中直接点开就能用。
这部分学习笔记大致分为几部分。
一是Go语言设计理念(Design Philosophy),内含介绍文档×1,不知道Go可以用来做什么可以从这里开始学习。
在这份入门指南中建议,在学习Go语言前必须制定一套设计理念,比制定盲目应用的规则更重要。
设计理念中特别强调了理解代码本身,学写代码其实和学一门自然语言有相似之处,需要阅读好的坏的代码加深语感,而这块是很多程序员缺乏的。
二是语言机制(Language Mechanics),包括Go语言的句法、数据结构、解耦三部分,每个分别有多个细分介绍。
三是软件设计(Software Design),内容细化到分组类型解耦过程、界面转换、界面污染,mock过程和常见雷区。
每个分类里还包含若干源代码分析,都是小哥自己学习时踩过的坑。
四是研究并发性(Concurrency),也就是在Go协程(Goroutine)、数据竞赛、多个channel和不用模式语境和模式下的操作过程。
五是测试和分析(Testing and Profiling),写到了基本单元测试、表测试、自测试等发测试方法,以及常见的标准等。
此外,还有各种包(Packages),作者表示这部分还在完善中。
Go的热度不是盖的,这份资源一出,Hackernews上的讨论区就开始活跃了,不少网友继续贡献资源、分享心得,也有一些对这份学习笔记的评价。
用户@olah_1推荐了一个Go语言课程,表示:
Learn Go with Tests是我经历过的最好的编程语言课程。地址:
https://github.com/quii/learn-go-with-tests自带中文版资源:
用户@plinkplonk建议,如果搞不明白Go是什么,可以去OReilly上资料:
http://shop.oreilly.com/product/0636920046516.do用户@ValentineC推荐了一个GitHub上5000+star的课程培训,来自上面提到的机构Ardan Labs:
https://github.com/ardanlabs/gotraining还有网友贡献自制学习思维导图:
地址:
https://github.com/dzyanis/roadmap也有人推荐学习如何在没有框架的情况下用Go语言编写web app:
https://github.com/thewhitetulip/web-dev-golang-anti-textbook
据说,这份资料是由有15年编程经验人完成,现在免费开放。
有了这么多过来人的建议,还怕学不好么~
GitHub地址:
https://github.com/hoanhan101/ultimate-gohackernews讨论区:
https://news.ycombinator.com/item?id=20701671免责声明:本站所有内容及图片均采集来源于网络,并无商业使用,如若侵权请联系删除。
上一篇:Go基础系列:1. 学习前导