深度解耦

主要观点:David L. Parnas 在其论文中提出若两事物共同变化则应归为一起,在本通讯中类似做法是通过考察事物的解释力来判断是否会共同变化,若有解释力则归为一起,否则用接口隔离。以简单哈希表和 SQL 为例说明,复杂实现的接口常分层,每层目的是减少下一层的受众,如同军事中的深度防御,给读者一定解释距离他们会知难而退。
关键信息

  • David L. Parnas 的论文观点及本通讯的类似做法。
  • 哈希表中业务逻辑与底层数据结构的解释关系。
  • SQL 中不同查询及执行计划的情况。
  • 接口分层及深度防御的概念。
    重要细节
  • 解释力决定事物是否归为一起。
  • 哈希碰撞等是增量概念,可解释部分细节。
  • SQL 的EXPLAIN命令提供查询执行计划。
  • 接口分层可减少下一层受众,类似深度防御。读者会因解释距离而知难而退。
阅读 11
0 条评论