紧跟时代的步伐 😎
➜ vifile >arch -arm64 brew upgrade go
==> Upgrading 1 outdated package:
go 1.18.3 -> 1.18.4
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/go-1.18.4.arm64_monterey.bottle.tar.gz
######################################################################## 100.0%
==> Upgrading go
1.18.3 -> 1.18.4
==> Pouring go-1.18.4.arm64_monterey.bottle.tar.gz
🍺 /opt/homebrew/Cellar/go/1.18.4: 11,990 files, 596.2MB
➜ vifile >
➜ vifile > go version
go version go1.18.4 darwin/arm64
➜ vifile >
郑晔·《程序员的测试课——结束语》
范型就是将算法与数据模型解耦:一套算法搞定一堆数据模型,而不是每一类数据模型都去实现一遍同样的算法。
有了范型,也就无需进行类型安全检查了。
以前我只知道,要将开发的代码提交到版本仓库,比如 github。
但读了《程序员修炼之道(第二版)》之后,我才知道自己思维的局限性。为何不能把本地所有的文档都用版本管理工具管理起来?这才是最佳实践。
版本管理的本质其实就是让我们的工作具备可逆性,让我们可以有后悔药吃,出了问题,不用抓瞎,而是优雅地回退版本。
如果仔细观察,会发现很多云笔记(可能需要开通 VIP)都提供了历史版本,这不就是云服务商给我们提供的后悔药吗?
道理懂了,那就开始行动吧,先将学习笔记提交到阿里云代码仓库 😎
上周末头疼,随手打开了一本电子书绘本《生活蒙太奇》,比较喜欢里面的这两张画。
但我还是不太能看懂很多画的美在哪里,可能是因为电子版体验的问题,也可能是我不会欣赏。
多想一层,也许是书读的太少了,少了一颗观察生活的心,活生生把生活细节中的美给漏掉了。
够弥补思维漏洞的问题才是真正的好问题,能给我们带来思考的书才是真正的好书。
“当你发现,恶棍原来是英雄,而英雄(也就是你)原来是恶棍,内心一定觉得受到了沉重的一击。”
读到这句话,真的有振聋发聩之感。
遇到问题,我们总是带着偏见,把自己想象成英雄,把对方当作恶棍,可至少有一半的时候,情况却恰恰相反。
谦卑,反思,尊重。
边写代码,边写测试。
测着测着,发现构建不出来测试代码,然后又回去改业务代码,让其具备可测试性。
写测试就是一种反馈,而且是立即反馈,逼迫我们去反思自己的代码和设计有多烂。
Who am I ?
Where did I come from ?
Where do I go to find out ?