Obviamente implementar un mecanismo de este tipo lleva algo más de trabajo y tiempo que enviar las cosas "a pelo". Lo que sucede es que si luego quieres comunicar, por ejemplo, una aplicación en C++ con otra en Java, lo mismo tienes que acabar haciendo chapucillas manuales para que la comunicación pueda realizarse satisfactoriamente... utilizando un protocolo a nivel de aplicación evitas este tipo de problemas.
La ventaja de hacer uso de un protocolo de este tipo ya existente es que, por un lado, ya están probados y, por otro, es más fácil encontrar librerías para los diferentes lenguajes y arquitecturas.
Piensa que a la hora de diseñar estos protocolos ya se tuvieron que pegar con el envío de objetos, punteros y referencias... todo eso lo tienes cubierto.
La ventaja de hacer uso de un protocolo de este tipo ya existente es que, por un lado, ya están probados y, por otro, es más fácil encontrar librerías para los diferentes lenguajes y arquitecturas.
Piensa que a la hora de diseñar estos protocolos ya se tuvieron que pegar con el envío de objetos, punteros y referencias... todo eso lo tienes cubierto.