上QQ阅读APP看书,第一时间看更新
7.5 小结
通过本章的学习,我们了解了一个Go项目的构建思路和过程、包的划分、接口的使用、结构体的使用、goroutine和并发的使用。应该说,通过这个案例,我们复习了第一部分介绍的基础知识。
不过,第6章的测试部分在本章案例中并没有提到,并非测试不重要,而是因为篇幅问题。读者可以结合第6章的案例,自行为本章案例添加测试用例进行练习。
需要说明的是,在本案例中有一个问题并没有解释透彻,那就是7.3节服务器编程的tcp_server.go文件内第79行的accept方法和第94行的remove方法,为什么要在接收到新发起的连接时用锁的机制呢?请读者带着这个问题开始第二部分的学习,第8章会对此进行深入探讨。