知识卡片

波斯特尔定律用在契约设计上

普通读书笔记卡 · 1847.a

内容

“发送时保守,接受时开放”这条网络协议设计原则同样适用于服务契约:调用方只发送对方真正需要的信息(不要因为”可能以后用得上”就把整个数据结构塞进去,那只会让本该松散的契约变紧),接受方也只解析和校验自己真正需要的字段,而不强迫自己依赖对方结构里用不到的部分。这条原则把耦合面死死限制在双方实际用得到的那一小部分上,天然对齐[[契约谱系与StampCoupling反模式]]里的松耦合诉求。

参考来源

- 位置:《演进式架构(原书第2版)》第7章《构建可演进的架构》「波斯特尔定律」小节(源文件:_epub-src/EPUB/xhtml/chapter11_0001.xhtml) - 结论依据:原文明确波斯特尔定律"发送时保守、接受时开放"是尽可能软化所有耦合点的通用原则,直接支持卡片论点。 - 原始内容:"在你发送的内容上要保守,在接受他人的事物上要开放……波斯特尔定律,这是一个尽可能软化所有耦合点的通用原则。在面对契约和沟通时,它提供了一个有助于实现演进性的指南"