中国开发网: 论坛: 程序员情感CBD: 贴子 396694
haitao
可以借鉴微软的ie的接口。。。。
烂归烂,还是基本解决了版本兼容的问题。。。。


我们公司内部考虑新应用接口的时候,我提的意见:
可否这样考虑:
1、所有通讯函数,均返回(连接函数)或使用(收、发、断、检测函数)句柄
这样,才能支持同时多连接(modem+tcp,或多个tcp)
2、配置信息或初始化参数,能否采用字符串,以“;name1=value1;name2=value2;...”的格式(简程INI格式)
这样,对于以后出现的新信息、新参数,可以很好的兼容
而且所有通讯模式的连接函数的入口参数都一致了。
INI格式的组合和分解函数其实是相当简单的,效率也并没有低多少,空间也没有浪费多少,
但是带来的好处是代码无须重新编译即可实现向下兼容。

多连接目前的确还没有,TCP模块(硬件)的接口也限制了不可能支持TCP的多连接,
但是我们的新标准,在影响不大的情况下,不应该把自己限制在现有的缺陷上。
多应用联动时,如果后台要求不能断线进行,则肯定要有多连接才能实现的。
这个多连接不一定就是2个TCP连接,可能一个是拨号,一个TCP/GPRS/CDMA。。。
。。。。。。。。,通讯采用句柄,是比较接近Linux统一风格的,
也是以后把通讯、设备操作类似于文件操作(UNIX的思路)的第一步。
你现在的结构指针,其实也是一种句柄,只是把类型暴露给调用者了,
真正的句柄就可以隐藏涉及的结构类型信息,使得日后升级或改换该结构时,对调用者的影响最小:无须修改任何代码。

INI最大的好处其实是:代码无须重新编译即可实现向下兼容
这一点,对于版本比较多,而且旧产品已经发布在外来不及全部升级时,好处是非常大的。
“可见性”和“扩展性”,相比之下倒还是不太重要的好处了。
不过,这主要还是一个习惯和体验的问题。
我的blog:http://szhaitao.blog.hexun.com & http://www.hoolee.com/user/haitao
--以上均为泛泛之谈--
不尽牛人滚滚来,无边硬伤纷纷现 人在江湖(出来的),哪能不挨刀(总归是要的)
网络对话,歧义纷生;你以为明白了对方的话,其实呢?

您所在的IP暂时不能使用低版本的QQ,请到:http://im.qq.com/下载安装最新版的QQ,感谢您对QQ的支持和使用

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录