社区
研发管理
帖子详情
关于向上兼容开发及可自由组合模块的实现的探讨
tianlon
2005-03-27 11:21:01
见
http://community.csdn.net/Expert/TopicView1.asp?id=3884804
...全文
210
13
打赏
收藏
关于向上兼容开发及可自由组合模块的实现的探讨
见 http://community.csdn.net/Expert/TopicView1.asp?id=3884804
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
meidengyin
2005-04-21
打赏
举报
回复
Remark
DragonLancer
2005-04-09
打赏
举报
回复
不懂,最好能给出一个具体点的例子大家讨论,否则真的不知所云
tianlon
2005-04-06
打赏
举报
回复
to showerXP(小阿!) :
------这个问题就需要剥离出一“服务层”来专门处理。
服务层一般用在同种类型模块的支持,不同类型好像还不行,不过变通的方法:
采用类似驱动程序层的,对每种不同的类型建立一个抽象模块,定义一个接口(单个接口相当于上面的服务层),每个接口下面是具体的组件实现(内部可自由装配,但实际上一般只有一个在用,好像有点像工厂),但问题仍然存在:各个接口之间如何自适应(感知),且如何实现各接口间的自由组合??
欢迎各位继续!!!
changkong2004
2005-04-06
打赏
举报
回复
支持~~
想法很好,但是具体实现困难哦~~
tianlon
2005-04-06
打赏
举报
回复
to changkong2004(长空) :
有什么想法也可以说嘛
tianlon
2005-04-06
打赏
举报
回复
谢谢 showerXP(小阿!) ,XACZ(??) 参与
其实我也知道实现起来很困难,通过讨论展开思路也是其中的一个目的
XACZ
2005-04-05
打赏
举报
回复
如果在原来设计中压根就没考虑到有F出现,原来的设计架构根本就不知道F怎么工作,怎么表现,这样的话程序再向上兼容也没用,要将F融合到原系统,不改造其他模块或者整个系统架构好象不太可能,就好象现在的WINDOWS为什么使用NT核心,不使用WIN98为基础来扩展一样。
我觉的,设计时候不仅仅类要单一职责,其他如模块、包等等都要功能内聚,且为将来可能出现的模块定义一套扩展机制,并定义接口,插件扩展就是一个例子。
showerXP
2005-04-04
打赏
举报
回复
"因为其重心不在模块,而在自由组合上与感知上(感知能力越强则向上兼容能力越强)"
这个问题就需要剥离出一“服务层”来专门处理。
就像国内现在流行的这样一种技术:
在无线网络设备连接的问题。有很多种技术(比如红外,蓝牙,IEEE802.11等等),运用很多协议的不同设备互联。专门抽象出一层服务层,来处理采用同设备连接,来协调不同协议的工作流程。
showerXP
2005-04-01
打赏
举报
回复
第一、二个问题都可以做成构件系统。corba,ejb老一些的com,com+,dcom这些技术都是用来对付这种问题。
随着时间的发展,对系统的认识、要求肯定也会不同。至于能不能模块自动感知就难说了。特别是你要向上兼容。
tianlon
2005-04-01
打赏
举报
回复
谢谢showerXP(小阿!) 参与
但:
corba, com等好像并不能解决这些问题,
因为其重心不在模块,而在自由组合上与感知上(感知能力越强则向上兼容能力越强)
tianlon
2005-03-29
打赏
举报
回复
没有人感兴趣?
zhuma
2005-03-27
打赏
举报
回复
!!!注意以后把原问题全文粘上 不要只放链接
————————————————————————————
几年前发过一个类似的贴子,颇有收获,故地重游,特备1000分,不求能够彻底实现,但希望在探讨的过程中,能产生一些有用的东些,就达到目的了。
比如现有系统有5个模块,A,B,C,D,E现在产生第6个模块F,则按一般的处理方式F内部会针对A,B,C,D,E都有相应的代码,但也仅是单向的,很多情况下,不改造A,B,C,D,E是无法实现功能的,就这个问题,如何作可以使A,B,C,D,E自动适应F。
第二个问题:自由组合模块的实现,其实和第一个问题有很多类似的东西,具体而言:
如系统有10个模块A,B,C,D,E,F,G,H,I,J 如何使这些模块可以自由组合,当然也是在可行的前提下,比如A是基础模块,不可缺的等等,一般的做法是有一张当前配置表和一张模块约束表,根据约束表,和客户的配置形成配置表,这都没问题,可是实现起来,比处在程序里面考虑当前模块和其他模块组合的可能性,对于模块数很少的软件没问题,但对于大型软件(数十个模块)就会变得很繁琐(可能是一个不小的组合数量级),有简单的方法吗?而且这种处理方式,如果再加新模块(问题1了),也不能使其能很好的和新模块融合。
对于模块自动感知(对新加入模块的发现),可以考虑采用广播或责任链实现,但是处理还没想好
oyljerry
2005-03-27
打赏
举报
回复
尽量使F的功能在内部实现,需要别的功能,通过继承等来实现和扩展,降低修改原来模块的可能性
Vue.js Element UI Mock.js 2020 电子商城后台管理项目实战视频
Vue.js 是一套构建用户界面的渐进式... 本教程将通过一个网站管理后台(包括登陆和用户管理
模块
),让大家直观了解Vue+ElementUI 组合
开发
实现
过程,并在实际操作中逐步掌握 vue 编程模式的一些重要知识点及
开发
技巧。
论文管理系统的设计与
实现
计算机毕设源码96526
系统采用了JAVA语言,基于Springboot框架以及运用了MYSQL数据库
开发
实现
,将所有业务
模块
采用以浏览器交互的模式,
开发
工具选择java技术来进行系统的设计。基本
实现
了毕业设计选题系统应有的主要功能
模块
,本系统有...
深入
探讨
Python 的 import 机制:
实现
远程导入
模块
恰恰我觉得这篇文章的内容可以算是 Python 的进阶技能,会深入地
探讨
并以真实案例讲解 Python import Hook 的知识点。当然为了使文章更系统、全面,前面会有小篇幅讲解基础知识点,但请你有耐心的往后读下去,因为...
优秀CTO修炼之道:
向上
生长,向下
兼容
近日,由华为云与微上信息技术研究院联合举办的华为云联创营CTO领航班第四期在华为北京会展中心成功举办,会上围绕着“优秀CTO的能力模型”集思广益,深度
探讨
,想要找到提升CTO技术能力的关键突破点。形成以“技术...
第三章 Odoo 12
开发
之创建第一个 Odoo 应用
在学习过程中,我们熟悉了
模块
开发
过程,包含
模块
升级和应用服务重启来使得修改在 Odoo 中生效。不要忘记在添加
模块
字段时需要进行更新操作。修改含声明在内的 Python 文件需要重启服务。修改XML或CSV文件需进行更新...
研发管理
1,265
社区成员
28,324
社区内容
发帖
与我相关
我的任务
研发管理
软件工程/管理 管理版
复制链接
扫一扫
分享
社区描述
软件工程/管理 管理版
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章