读书人

界面跟底层分开清楚说起来容易做起

发布时间: 2012-02-28 13:06:36 作者: rapoo

界面跟底层分开清楚,说起来容易,做起来就很麻烦了。大牛们能不能介绍些经验?
比如用了什么技术之类。

我现在做法是GUI/Console给Kernel提供不同的回调函数,可是做起来也有点麻烦。

[解决办法]
关键是接口抽象出来
底层需要主动往上层发事件时用callback或发消息
[解决办法]
虚函数, 接口, COM


http://www.adintr.com/subject/blog/index.htm?id=24&view=articles
[解决办法]
用技术来弥补设计的缺陷是不可取的。
主要是靠设计而不是技术。
[解决办法]
主要是用虚函数来实现回调,也就是接口编程
当然也可以使用COM了,这个也很方便。
我们有个产品就是使用COM做功能的。
[解决办法]
关注
[解决办法]
关注一下,我也在寻求一个比较好的方案。

下面是我搜集到的一些信息:

纯api做接口,功能限制
消息,使结构变得复杂
虚类,导出类,callback,不能垮语言
COM,效率低(别人说的),不能垮平台
托管C++封装接口,只能在 .net平台用,不能垮平台
[解决办法]
自己实现托管不就行了。
[解决办法]
学习一下设计模式技术,经典的书籍《设计模式之软件复用》GOF
其中用到的23种设计模式,主旨就是接口与实现相互分离,实现最小耦合,
楼主想要的界面与底层相分离,其实就是一种接口与实现相分离的一种,
相信楼主看到设计模式当中的那些技术后,会得到很多的收益的。

[解决办法]
做个纯虚类,让底层回调,

GUI继承一个子类,把子类指针传给底层,

在子类成员函数里写逻辑

读书人网 >C++

热点推荐