繁体   English   中英

两个用不同语言编写的应用程序可以通信

[英]Can two apps written in different languages communicate?

我想用Java编写一个移动应用程序(Android),并与谷歌Chrome扩展程序进行通信。 为此,我需要使用套接字将数据发送到移动设备。 这显然不能在JavaScript中完成,所以我查看了Native Client编译器,它允许我使用C(不支持Java)来创建套接字。 该应用程序需要用java编写。 在这一点上,这完全是理论上的,因为我不知道C或Java。 但是,我确实有一些编程经验,并愿意学习这两种语言。 我对套接字没有任何经验。

我的问题是,我可以使用C启动套接字并让它使用Java将数据发送到应用程序吗?

两个用不同语言编写的应用程序可以通信

当然,他们可以! 只需以JSON,YAML或XML等通用交换格式表达通信数据,几乎可以在任何平台/语言上轻松读取。 二进制数据也很好,但是与它通信你应该知道并尊重对齐和字节序等内容。

注意:Javascript可以使用套接字! 您可以搜索术语AJAX以了解更多信息。

有许多通信协议 正如暗示的那样, 协议建议使用标准接口。 它是标准的界面部分,保证apps written in different languages can communicate 换句话说,用任何“语言”编写的应用程序可以打包一些数据,并根据特定协议的规则发送它,可以成功地发送和/或接收来自不同语言的程序的数据,但是识别它们协议。 例如,TCP / IP是一种协议,它允许用一种语言编写的应用程序以一种用不同语言编写的应用程序识别的方式发送和接收字节数据。 它使用定义明确且记录良好的通用接口(例如IPv4或IPv6),并且经常用作以不同语言编写的应用程序之间的通信方法。 使用TCP / IP协议的例程使用C,C ++,C#,Java等语言编写。 这些语言(和大多数其他现代语言)具有简化和会说话的TCP / IP的应用程序中进一步规范执行可用的库。 例如,套接字是在提供互联网连接的应用中使用的(可能 )主导方法。 套接字库可用于LinuxWindows本机语言。

我可以使用C启动套接字并让它使用Java将数据发送到应用程序吗?

嗯,当然。 例如,您使用的Web浏览器不太可能使用与您正在访问的Web服务器相同的编程语言编写。 这部分是因为每一方通常都涉及多种语言。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM