在这个章节,我们将开发一个完整的程序: goto
, 一个短 URL web 应用,因为 web 无处不在。这个示例来自 Andrew Gerrand 的精彩演讲( 参见文献: 22)。我们将分三个阶段完成,每一个阶段会有更多的功能,并逐渐展现 Go 语言的更多特性。我们将大量使用我们在 15 章 中的 web 应用中学习到的知识。
- 版本 1 : 使用一个
map
和struct
,以及来自sync
包与一个结构工厂的Mutex
。 - 版本 2 : 持久化数据,因为将它写入到了一个
gob
格式的文件。 - 版本 3 : 使用协程和通道重写应用(参数 章节 14 )。
- 版本 4 : 如果我们想要一个
json
版本,该怎么改变? - 版本 5: 一个使用
rpc
协议的分布式版本。
因为代码会频繁改变,所以不在这里打印,但是可以到 网站 下载。
译者注: 如果因为网络的原因无法打开,可以到 summerblue-ext-forks 下载,并且这里包含了整个教程的所有示例和练习 。