接口技术实现方式.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
现在管理软件项目中接口需求很多,很多项目接口实现得并不理想,原因就在于接口协议质量不高,而接口协议是和接口调研紧密相关的。一般接口调研和其它调研方法是一样的,但要做好接口调研就必须具备一定的专业知识,这可能是能否做好接口调研的关键。   接口协议除一般性协议要素外,应该包括如下内容:   接口技术实现方式   接口方式最高级一种是主动式。   即通过直接对其它软件的数据库进行操作。这种方式因为涉及到对用户数据读写操作,对于对方软件而言,安全性是最大的问题,验证的复杂程度也最高。主动式基本有两种方式:   1)DATA方式,通过数据库语言对数据库进行直接读写。这种情况要求对对方数据有详细认识。需要对方的人员可以提供数据库的详细资料。为了保障数据的安全,要界定对读写要求。一般和用户自行开发的系统会比较多出现此类要求,商品化ERP很少提出这种方式。   2)利用其它软件提供的工具。除了直接对数据进行读写外,有些软件也提供了一些工具(可能是控件,函数,脚本等)。可以通过这些工具对数据库进行操作。例如现在神州数码易飞ERP就全部采用控件方式接口。   这种情况下要提供这些工具的详细使用说明。   接口方式相对主动式的就是被动式开放。   同主动式对应,即开放软件商自己的数据库或开发接口给其它供应商读取数据。这种方式涉及到软件商提供的数据或开发程序。对方要我们的哪些数据,将成为了解需求的重点。按提供方式的不同可以分为以下四种。   1)DATA方式。即开方我们的文件或数据库格式给对方。由对方软件直接读取数据。这样的情况一般在企业有开发能力,而且只需要信息提取(不是写入)时才使用。这种情况很少。   2)脚本方式。早期的脚本语言,多是一种专用高级编程语言。实现了基本的程序流程语句,简单的数据结构,在此基础上,提供访问软件内部数据的语句。通过这类专用语言,用户可以对程序进行界面配置,实现简单的功能扩展,给用户提供了一定的灵活性。而只需用户懂一点程序设计知识即可。这类语言的缺点是没有通用性,功能有限,由于解释执行,速度受到很大限制,并且应用软件开发商实现专用编程语言及调试环境有较大难度。对于应用程序,需实现三个要求,就可拥有脚本语言编程接口:   A)应用程序的对象模型   B)适合应用程序对象模型的对象   C)脚本语言编程引擎   前面两个方面,需要应用程序用组件对象模型的方式构造。采用组件方式,是软件开发的发展方向,提供对象模型是一件很自然的事情。第三个方面,有通用脚本语言编程引擎供选择,微软的ActiveX脚本编程引擎可以免费使用,VBA脚本引擎需要购买。ActiveX脚本引擎实现了基本功能,没有调试环境。VBA是一种通用编程语言,其核心就是应用广泛的VB,拥有大量函数支持,窗口编辑能力,强大的调试环境。很明显,微软希望VBA成为应用软件二次开发的通用语言。例如CAPP和国外PDM的接口就属于这种开放方式。   3)链接库方式。基于结构化的软件,可以提供软件内部使用的动态连接库,供用户使用。动态连接库是速度最快的接口,应该说是一种很好的选择,CAPP目前的二次开发接口就属于动态连接库方式。   但是动态连接库在接口升级时会遇到麻烦,用户程序难以和正在运行的应用程序进行数据交换。用户也难以使自己的模块(用户实现的动态连接库)嵌入应用程序。因为动态连接库的通常首先实现的(至少要定义输出函数接口),而后才能使用动态库。但应用软件开发时,用户实现的动态库根本不存在,AutoCAD的ObjectARX用一种特殊的机制,才使AutoCAD可以使用用户开发的动态库。目前国内很多AutoCAD二次开发软件,就是使用ObjectARX开发的,可以完全的嵌入   4)COM组件方式。COM对象接口:基于组件对象模型的软件,可以提供软件的COM对象接口。组件应用程序由多个组件打包而成,组件之间的联系是一种松散耦合,使其中某个组件的改变不影响其他组件,应用程序修改,改进变得方便。这就如同一台复杂的机械设备的各种零部件用螺栓连接起来,零部件可以轻易更换。而传统应用程序就像所有零部件都通过焊接连接的,如果要改进,只能重新做一个新的。组件程序由于由许多具有位置透明性(无需知道组件的位置)的组件构成,可以很容易实现分布式应用。组件架构强调实现对象模型,开发接口是基于对象的,符合用户的思维方式,比动态库提供的API,更易于理解,使用。组件是完全与语言无关的,任何过程性语言够可以用来开发组件,根据不同的需求,可以轻易的用不同语言开发应用程序的不同部分,用户可以选择任何过程性语言做二次开发。通过COM的底层机制,可以访问运行中的应用程序对象,实现与运行中程序交换数据。用户组件也可以易于嵌入应用程序中。COM的主要问题是,运行速度比动态库慢,特别是自动化接口;对系统稳定性要求

文档评论(0)

cjp823 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7060131150000004

1亿VIP精品文档

相关文档