Estoy planeando instalar un servicio web u otro servicio expuesto a través de Internet. Me gustaría crear una API para que las aplicaciones interactúen con este servicio. Me gustaría que la API se pueda utilizar en diferentes idiomas, como Java, C++, C# o PHP. ¿Cómo puedo mantener una base de código para mi API, pero distribuir buenos binarios empaquetados para todos estos idiomas? Además, es posible que desee considerar que esto también podría ser una plataforma cruzada.Language Agnostic API
Actualización 1
estoy primeros días en Servicios Web, pero que uno de los puntos clave es que un montón de herramientas apoya la implementación de clientes basado en la descripción de el servicio como WDSL. No he entregado ningún software del lado del cliente con todo lo que he hecho, I espero que cualquier usuario pueda construir sus propios clientes adecuados a sus necesidades . --Brabster's Answer
No me opongo a que sea un servicio web directo y luego entregue un archivo WSDL. Pero, ¿y si quiero que la API del cliente haga algo de lógica, encriptación, comprobación de errores, etc.?
Actualización 2
En lo que espera el cliente que es usando su API para hacer cualquier cosa, que no se puede! No hay nada que pueda hacer para asegurarse de que el consumidor de la API hará lo correcto. Es por eso que el manejo robusto de errores es tan importante que . Debe verificar y duplicar comprobar cualquiera y todo lo que viene del cliente. Siempre debe ser sospechoso e incluso asumir que es malicioso. Realmente no hay buena manera de evitar ese hecho. --Ryan respuesta de Guill
Mi idea original era crear un archivo DLL o Asamblea en .NET, entonces el cliente está haciendo llamadas en el código que se ejecuta en el cliente. Este código puede comunicarse a través de cualquier protocolo de comunicaciones con el servidor, pero mi API se estaría ejecutando en su casilla. Supongo que REST no logra esto. Parece que en REST todo sigue siendo una publicación HTTP. Es casi servicios web sin jabón.
Actualización 3
He aceptado la respuesta de Ryan Guill. Creo que la idea general es que necesito exponer un servicio de red de algún tipo, con la barrera más baja para el cliente. De esa forma, cualquiera puede conectarse. Entonces solo tengo que ejecutar todo mi código en el servidor. Eso parece ser aceptado como el único deseo de lograr realmente la independencia de la plataforma y el lenguaje que busco.
Gracias por toda la aportación.
Consulte esta pregunta: http://programmers.stackexchange.com/questions/157536/how-can-i-write-a-set-of-functions-that-can-be-invoked-from-almost-any -programa –