zoukankan      html  css  js  c++  java
  • 架构设计中常见的语义耦合类型的总结

    语义耦合是隐性的,不易察觉的耦合类型 ,是导致代码重构、调试、修改复杂度急剧增加的主要原因。

    1,操作顺序耦合

    使用一个对象,需要先调用Init(),之后才能调用DoAnything()。这种顺序耦合,即使在文档中remark也是极为不优雅的做法。

    2,全局参数传递

    模块A修改了某个全局参数g_val,模块B读取该值。模块B必须知道模块A已经对该参数赋值。

    3,业务封装不够紧密

    模块A向模块B传一个参数,模块B根据该参数选择对应的操作。模块A必须知道与业务相关的所有的操作类型。对于模块A,仅传递模块A自身可以理解的语义,或者通俗的概念作为参数,而不是被封装的业务相关的参数。

    4,超越接口的数据类型约定

    模块A向模块B传递一个接口的指针,模块B将其强制转换为派生类的指针。当模块B知道该接口的实际类型时,封装已经被破坏了。非相关模块只能对接口操作,而不应对接口之外的职责进行约定。

    先写这么多,欢迎补充。

  • 相关阅读:
    芯片产品介绍
    稀疏矩阵理论与实践
    EUV极紫外光刻技术
    国内AI与芯片企业列表
    中国软件外包现状对比
    GPU指令集技术分析
    寒武纪智能系统参数
    TVM量化路线图roadmap
    EUV光刻机市场与技术
    轻松部署 .NET 5 应用程序,这个指南一定不要错过
  • 原文地址:https://www.cnblogs.com/radiolover/p/4044136.html
Copyright © 2011-2022 走看看