现状
对于我的一个项目,我需要一个客户端库,它可以与我的每个主要编程平台的 API 进行通信。目前我只实现了一个(Java)并且在想'我不想这样做 8 次(或者希望其他人会这样做)'。
客户端比较小,但不小;主要通过 SSL 读取/写入和发送 TCP/UDP 数据。对客户端的每次调用都是一劳永逸的,因此它在自己的线程中完全异步工作。
问题
我在问自己编写一个 C 库并将其与其他平台集成是否有意义。
我做了一些研究,似乎每个平台都以不同的方式(显然)通过不同的必要努力来处理这个问题。我还意识到我从未见过类似的东西——例如,数据库驱动程序似乎总是从头开始编写,而不是在核心使用 C 库。开销是否太大?
我还阅读了有关 Thrift、Protocol Buffers 等的信息——但这似乎是针对网络互操作性的?
问题
所以最后一个问题是:
在每个平台客户端的核心使用单个 C 库是否可行?如果是:应该怎么做?