互联网从业者充电站
23:31 · 2023年7月9日 · 周日
最近读了 A Philosophy of Software Design,很有收获。 在设计软件时有很多权衡:模块应不应该拆分,函数有哪些参数,哪些信息应该往外暴露。这都是编程上的日...
#程序员
Telegraph
最近读了 A Philosophy of Software Design,很有收获。 在设计软件时有很多权衡:模块应不应…
最近读了 A Philosophy of Software Design,很有收获。在设计软件时有很多权衡:模块应不应该拆分,函数有哪些参数,哪些信息应该往外暴露。这都是编程上的日常纠结,但是这个话题上的书却非常少,所以作者写了这本书,并开设了斯坦福 CS 190 的课程。以下是部分笔记:# 复杂度的本质是『难理解』和『难修改』。复杂度的症状包括:1. 改动扩散,简单的功能修改需要大量的不同地方的代码改动;2. 高认知负荷,开发者需要理解很多东西才能对某个模块进行修改(有时候更长的代码的复杂度更低,因为阅读他们的认知负荷更小);3.…
Home
Powered by
BroadcastChannel
&
Sepia