有了身体和灵魂,平台的雏形也就有了,但是前后台程序直接的通讯是怎样实现的呢?
现有的系统通讯方式,不外乎自己写通讯协议或者依赖于中间件。不论采用哪种,都得依照一定的通讯格式组织信息。协议的差别、格式的差别不一而足。用过定长 字符流的肯定痛恨冗长的生成代码,如果老板通知你改用fml(或者xml等)格式,估计程序员会手忙脚乱上很长一端事件,修改后的测试也是很麻烦的。好的 程序员都是懒的,不喜欢做大量无味的劳作。所以平台应当提供一种自动的方法,使消息能自动的适应各种格式(fml、xml、c-struct、分隔符 等)。
原有的开发软件是不能完成这种功能的,不论是delphi、vb、还是c语言(PB没有用过,好像提供了类似的功能)。有了变量绑定和数据总线,完成这种 功能也就很easy了。前边已经提到,只要一个名字(just one name),就可以从总线中获取需要的数据。如果我们把一堆名字聚合到一起,基本上构成了消息的格式(报文),系统根据名字取得数据,再依靠消息格式的生 成规则(xml等)自动打包、调用中间件发送接收、拆包、将变量显示到绑定的控件上。基本上不需要代码就实现了前后台交互。好处还不仅限于此,当boss 通知改动发送的格式时,只要指定不同的生成规则就万事大吉了。
(如果能如此编程,到底是程序员的福还是祸呢?不知道,让时间去验证吧)
当然也不是这么简单,特殊的报文格式还是要特殊的配置信息的,如xml中每个node的名称是什么,定长数据报文中每个变量的长度还是要设定的。至少不用编写冗长的代码了。
平台如果能够按照以上的方式去实现,大概前台界面的开发只剩下画画图,组织报文了。