知识卡片

代码无法替代设计沟通

普通读书笔记卡 · 1958.d.1

内容

让新人只读源代码来理解系统看似省事(代码已存在,不消耗团队精力),实际有明显局限:目录结构只是设计线索,不能直接等同于模块划分或依赖关系;更关键的是模型与代码之间存在差距——团队讨论设计决策时权衡的取舍、审慎考虑的约束,往往从未在代码里留下痕迹,这些”为什么这样设计”的意图只存在于讨论本身。源代码在”模块视图+代码模型”表现尚可,但对运行时视图、部署视图、领域模型几乎无能为力。

参考来源

- 位置:《恰如其分的软件架构》第4章《实例:家庭媒体播放器》4.1.1节《阅读源代码》(源文件:_epub-src/OEBPS/text00043.html) - 结论依据:原文说明代码作为唯一沟通工具的局限——模型与代码之间存在差距,设计意图无法在代码中呈现,且源代码只能在模块视图和代码模型中起到交流作用,对运行时视图、部署视图等力不从心。 - 原始内容:我们都很明确模型与代码之间存在差距……作为一个团队,我们讨论设计决策,寻求平衡,审慎地考虑设计约束,但这些内容却无法在代码中呈现……在其他视图类型(运行时视图与部署视图)及其他主要的模型(领域模型与设计模型)中,就显得力不从心了。