本文小编为大家详细介绍“使用web桥接模式时需要考虑哪两个问题”,内容详细,步骤清晰,细节处理妥当,希望这篇“使用web桥接模式时需要考虑哪两个问题”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
使用桥接模式的效果
面向对象的特征之一就是封装,朴素的讲封装就是在实现外面套上接口。但是这样做的结果是将接口的定义和接口的实现绑在了一起。桥接模式将实现部分从接口中分离出来并进行了抽象化。这样一来,就可以很简单地在运行时刻替换实现部分。例如,我们可以设计一个通讯端口,在程序执行时将通讯方式从Wifi切换到蓝牙。
在桥接模式中,真正实现功能的代码是在包含在实现类的具象类中,物理上和接口类分离。二者可以在不同的时机编译,也可以交由不同的团队开发。这一点可以为开发的管理带来很大的方便。
软件开发中经常会出现分层结构,其最简易的实现方式就是利用桥接模式的思想将下层看作上上层的实现,也就是说就是让上层结构拿着下层的指针即可。还以通讯端口类,我们可以将其分为协议层,和物理通路层并且让协议层管理物理通路层的指针即可。
更进一步
使用桥接模式时需要考虑以下两个的问题:
1.如何区分接口和实现。
简单的说,接口类定义的应该是用户领域中的功能。还以通讯端口为例,用户需要可能的发送命令和接受现场数据,至于是通过Wifi还是蓝牙,是否要加密等用户没有必要关心,都是实现层面的事情。
2.如何判断要不要将对实现部分进行分离和抽象。
只要区分出那些是接口,那些是实现,接下来只有有限的几个选择:
0)什么也不做
1)将实现部分独立成私有方法。
2)将实现部分独立成单独的类。
3)对实现部分进行抽象,并在具象类中实现功能。
上述几种情况,分离和抽象的程度越来越深。但是如果仔细想一想,除了从0)到1)以外,其他的变化都不涉及逻辑,大部分工作只要代码移动就可以完成。所以真的没有必要纠结,看到哪就做到哪吧。
读到这里,这篇“使用web桥接模式时需要考虑哪两个问题”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。