I am writing software for a new hardware device that I want any new third-party application to be able to access if it wants.
The software will be a native process (C ++) that must be contaminated with third-party games and applications that want to support a hardware device. These third-party applications should also be able to receive events from their own subscription-based process. Therefore, in addition to my own process, I will also supply “connector” libraries to third-party developers for all platforms / languages that they can choose (Java, C ++, Python, etc.) for implementation in their applications so that they can easily connect to a device in which there is hardly any additional code that must be written by them. I want to target all desktop and laptop platforms, and I have a pretty good idea of what features I want to reveal, but ideally I don't want to get too stuck (i.e. I want it to be elegantly scalable as with client and server perspective).
I am looking for reliable work in the future, productivity, support in the future, as well as the flexibility of cross-platform / language training and the simplicity of development in this order.
What should i use?
CORBA, MessagePack-RPC, Thrift, or something else?
(I skipped ICE due to its licensing)
cross-platform rpc thrift corba interprocess
Navigateur
source share