2023 年第 15 周。
稍微整理这一周看过的书、文章,受到的启发。
- 《Go Web 编程》
主要是上周日晚粗略浏览的。周一早把剩的一点尾巴继续读完。
书名即内容,讲述怎么用 go 写一个 web 服务端程序,侧重标准库的使用,对框架只是稍有介绍。
周一晚下班路上,在考虑自己学习路线时,想起了这则知乎回答。作者的女友用了半年时间从零开始学前端,最终找到满意工作。他们从以下几条线路着手,同时学习:
- HTML/ CSS/ JavaScript. 完成打基础和入门。
- 计算机科学导论。上了两门在线课程,意在为长期的专业学习做铺垫。
- 算法与数据结构。“是所有不同方向程序员相交的部分”。
- 工具的使用。编辑器、 linux 命令行、git 等。
- 计算机基础学习,作为一条长线。涉及多门专业课程,其中最接近他们现状的是计算机网络,此外还有操作系统、数据库、组成原理与体系结构、编译原理,只是没有到时候。
- 项目。和看书一样重要,并且保持一个时间段至少有一个项目在写。
- 前端工程化。
非常佩服作者的功底,还有其女友的学习能力、执行力。我想我也会受到激励,比以前做的更好。
同一作者的另一则回答。让我感到精彩的不是“前五位”结论本身,而是其中关于“抽象”和“分层”的理解——
计算机专业课程之间完全可以用抽象来联系:每一门课想做的事就是利用下层提供的接口,实现功能,然后再给上层提供接口。这样一层一层的抽象就构成了几乎所有的专业课。
之后从最高层向下,依次列举了:程序设计入门,算法和数据结构,编程语言,编译器/解释器,操作系统,ISA,组成原理与体系结构,数字电路,模拟电路,并且说明每一层是如何为其上一层提供支持同时又依赖于其下一层的。
我还没有像这样去建立过所学专业课之间的联系,只是大概知道相互之间存在关联,看作者这么说出来,觉得确有一番道理。
- 《Code Complete》
周二上午买下午到的书。晚上翻了目录,和一点内容。
- 《HTTP 详解》
周三晚上一屁股坐下来,从头翻到尾,有快有慢。
一位日本作者的书, Oreilly 出版社。给我的感觉是以 HTTP 为切入点,讲解了整个 Web 技术的现状以及它是如何演化为今天这样子的。许多以前一知半解的零散的点、概念读完后变得清晰了,可以说很受用。里边还有一些 Go 语言实现的 Client 程序,之后要动手写写,增进理解。
上周末看了
Go BIO/NIO探讨(1):Gin框架中如何处理HTTP请求
Go BIO/NIO探讨(2):net库对socket/bind/listen/accept的封装
周四晚接着看 (3), 把里边面向过程式的 Client Server 代码运行了起来。主要还是再熟悉了一遍 socket, bind, listen, accept 几个系统调用。
- 《左耳听风》专栏
因为一直在思虑职业发展、成长路线的问题,周五想起来之前还买过这个内容,半粗半细读了其中《程序员面试攻略》和《程序员练级攻略》系列文章,再加上中间随意点击链接出去的文章,一晚上就过去了。
两份攻略中有很多优质资料整理,实在是太多了……有点怀疑自己的职业生涯中能否读得过来这么些东西,作者又是怎么学过来的。