[发明专利]多语言开发系统中实现不同语言间数据通信的方法无效
申请号: | 201210058379.2 | 申请日: | 2012-03-08 |
公开(公告)号: | CN102662772A | 公开(公告)日: | 2012-09-12 |
发明(设计)人: | 彭建华;徐立中;李明 | 申请(专利权)人: | 河海大学 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 许方 |
地址: | 211000 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 语言 开发 系统 实现 不同 数据通信 方法 | ||
技术领域
本发明涉及计算机技术领域,尤其涉及一种多语言开发系统中实现不同语言间数据通信的方法。
背景技术
在计算机软件系统的开发中,由于各种原因,往往需要利用多种语言进行混合开发。例如,基于如下原因,一个软件系统的开发经常会使用JAVA语言、C语言进行混合开发:
1.标准的JAVA类库不支持一些硬件相关的功能;
2.有大量的用C语言进行编写并封装好的类库,如果再用JAVA进行重新编写,将会是一种资源上的浪费,增加系统开发成本、系统开发周期以及系统失败的风险;
3.基于性能考虑,用C语言编写性能要求很高的代码。
为了解决多语言开发系统中不同语言编写的应用之间的数据通信问题,目前已提出了一些方案。例如,为了解决JAVA语言与其他语言进行混合编程,SUN公司提供了JNI(Java Native Interface)技术以及与这种技术相关联的一系列类库、类、方法与属性。按照JNI提供的参考手册与当前资料所介绍的方法在JAVA与C之间进行参数传递,进行通信的话,JAVA与C之间的耦合度太多,开发过程中交互复杂且不利于相互之间的独立,对原先用C编写好的代码将会提出较多的修改要求。其它现有技术也不同程度第存在类似问题。
发明内容
本发明所要解决的技术问题在于克服现有技术的不足,提供一种多语言开发系统中实现不同语言间数据通信的方法,该方法通用性强,可实现不同语言之间的数据通信、参数传递,不同语言代码将完全独立编写,功能独立实现,数据通信、参数传递过程简单、通信效率高,程序间耦合度低,同时程序开发高效率。
本发明具体采用以下技术方案解决上述技术问题。
多语言开发系统中实现不同语言间数据通信的方法,在需要数据通信的第一语言应用部分和第二语言应用部分之间设置一接口模块;所述接口模块包括与第一语言应用部分连接的第一语言代理,以及与第二语言应用部分连接的第二语言代理,第一语言代理与第二语言代理连接;第一语言代理负责将第一语言应用部分的数据转换为字节序并传输给第二语言代理,以及将第二语言代理传输的字节序转换为第一语言;第二语言代理负责将第二语言应用部分的数据转换为字节序并传输给第一语言代理,以及将第一语言代理传输的字节序转换为第二语言。
根据本发明的发明思路,还可得到一种多语言开发系统,包括至少两种利用不同语言开发的应用部分,在需要数据通信的每两种语言应用部分:第一语言应用部分和第二语言应用部分,之间设置有一接口模块;所述接口模块包括与第一语言应用部分连接的第一语言代理,以及与第二语言应用部分连接的第二语言代理,第一语言代理与第二语言代理连接;第一语言代理负责将第一语言应用部分的数据转换为字节序并传输给第二语言代理,以及将第二语言代理传输的字节序转换为第一语言;第二语言代理负责将第二语言应用部分的数据转换为字节序并传输给第一语言代理,以及将第一语言代理传输的字节序转换为第二语言。
相比现有技术,本发明具有以下有益效果:
采用本发明方法,系统中各应用部分将能够采用最合适的语言独立地进行开发与设计,系统结构逻辑清晰,使用难度小;提高了基于不同语言嵌套开发项目的开发效率,降低系统开发周期、开发成本以及系统维护成本,大大减少了系统失败风险,同时程序间耦合度显著降低。
附图说明
图1为本发明方法的原理示意图;
图2为JAVA应用和C++应用之间的通信协作图;
图3为JAVA到C++的通信流程图;
图4为C++到JAVA的通信流程图。
具体实施方式
下面结合附图对本发明的技术方案进行详细说明:
本发明的原理如图1所示,在需要数据通信的第一语言应用部分和第二语言应用部分之间设置一接口模块;所述接口模块包括与第一语言应用部分连接的第一语言代理,以及与第二语言应用部分连接的第二语言代理,第一语言代理与第二语言代理连接;第一语言代理负责将第一语言应用部分的数据转换为字节序并传输给第二语言代理,以及将第二语言代理传输的字节序转换为第一语言;第二语言代理负责将第二语言应用部分的数据转换为字节序并传输给第一语言代理,以及将第一语言代理传输的字节序转换为第二语言。
本发明的技术方案具有通用性,适用于任意两种不同语言之间的通信。为了便于公众理解,下面以较常见的JAVA应用和C++应用之间的通信为例,来对本发明的技术方案进行详细说明。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河海大学,未经河海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210058379.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于刀架驱动的皮带传动装置
- 下一篇:紧急避孕药