zoukankan      html  css  js  c++  java
  • 模块之间的使用模式

    模块开发目标:低耦合,高内聚

    如何达到这目标?
    由架构师定义好一整套可行的接口{具体如何达到,这个基本步骤书本或网络都有,主要要看架构师的功力}

    根据自身多年开发项目,这里总结下。
    说下模块的使用模式
    模块A:函数/接口提供者
    模块B:函数/接口使用者
    应用程序C

    1、调用模式
        由模块A定义函数/接口,模块B直接引用调用函数/接口,应用程序C直接引用调用模块B
        模块之间的使用是层次调用(就是说没有模块A的实现,模块B的调用肯定无效),其函数/接口的声明和实现均由低端处理
        应用场景:分层开发大部分应用,比如DB层和业务逻辑层
        注意:模块B可以调用多个模块,这里描述仅仅简化
    2、委托模式
        由模块B声明函数/接口,模版A为函数/接口实现,应用程序C引用模块A和模块B调用
        模块之间的使用是可选调用(就是说模块B声明的函数/接口,实现与否都能正常执行),其函数/接口的声明由应用端声明,平行模块或低端模块或自身模块来实现
        应用场景:通讯模块一般都需要委托数据处理模块帮其解析数据和分析数据,如果没有数据处理模块,它仍然能正常工作。
        注意:函数/接口的实现可以平行模块、或底层模块、或自身模块;其使用均在程序应用层

    两者最大区别:
    后者即使没有实现协议,也能正常完成执行流程。


    在实际项目中,常常由于没有架构师的处理,导致一些接口定义的工作和需求,往往不明显;
    常出现的状况:模块A的开发人员定义的接口和模块B的开发人员想的接口不一样;还会出现模块之间的使用模式不定,往往是口头上说委托,而实际使用模式是调用。

    培养一个常规的团队,这个很重要。


    无论生活、还是技术,一切都不断的学习和更新~~~努力~
  • 相关阅读:
    lqb 基础练习 数列特征
    lqb 基础练习 查找整数 (遍历)
    lqb 基础练习 杨辉三角形
    lqb 基础练习 特殊的数字
    lqb 基础练习 回文数
    lqb 基础练习 特殊回文数
    lqb 基础练习 十进制转十六进制
    lqb 基础练习 十六进制转十进制
    lqb 基础练习 十六进制转八进制 (字符串进行进制转化)
    Git详细操作
  • 原文地址:https://www.cnblogs.com/GoGoagg/p/2259904.html
Copyright © 2011-2022 走看看