Golang_Puzzlers
极客时间专栏《Go语言核心技术36讲》的配套代码。
欢迎进入“Go语言谜题”项目。
本项目是我在“极客时间”上开设的Go语言技术专栏的配套项目。此专栏的地址在这里。本项目中的代码携带的信息比较少,往往需要配合专栏的内容去看。欢迎大家到“极客时间”订阅我的这个专栏。
项目中会有很多像article3
这样的代码包。这种代码包下面还会有像q0
或q2
这样的子代码包。对于这些代码包的层次和命名是有一套潜在的规则的。如下:
article3
是第三篇正文的专属代码包。其他名称相似的代码包含义可类推。- 在每个文章代码包中,都可能会有
q0
、q1
、q2
、q3
这类的子代码包。 - 此专栏的主体文章是有固定的结构的。它们一般被分为几个部分:
- 主问题提出之前的部分,也被称为前导部分。
- 主问题部分,是文章主体内容的切入点。
- 扩展问题部分,是切入点的延伸和深入,一般由若干个扩展问题组成,比如:扩展问题1、扩展问题2,等等。
- 总结部分,是对前面的阐述和问题的总结。
- 思考题部分,由一到两个思考题组成。这部分的题目没有答案,仅供大家思考和讨论。
- 以上述文章结构为基础,
q0
子包中会包含与前导部分对应的示例代码,q1
子包中会包含与主问题部分对应的代码,而q2
子包中会包含与扩展问题部分的扩展问题1对应的代码,以此类推。总结部分和思考题部分一般没有与之对应的代码包。
一般只有像q0
、q1
、q2
这样的代码包下才会包含源码文件。若文章的某个部分存在对应的代码则至少会有一个源码文件,并且总会有一个命令源码文件作为示例的入口,也就是示例入口文件。每个示例入口文件都会以demoX.go
为名,其中的X
代表序号。所有的示例入口文件的序号都是唯一的,并且从第一个出现的示例入口文件开始以自然数的顺序确定序号。这样做可以统计示例的总数量。
欢迎大家与我一起学习Go语言。如果你怀疑或确定本项目的代码有错误,请通过专栏找到我,我们一起讨论。谢谢!