Compartir a través de


El modelo de programación

En los primeros días de programación informática, cada programa se escribió como un gran fragmento monolítico, lleno de instrucciones goto . Cada programa tenía que administrar su propia entrada y salida en diferentes dispositivos de hardware. A medida que la materia de programación madura, este código monolítico se organizó en procedimientos, con los procedimientos más usados empaquetados en bibliotecas para compartir y reutilizar.

instrucciones goto monolíticas frente a procedimientos empaquetados en bibliotecas compartidas

El lenguaje de programación C admite la programación orientada a procedimientos. En C, el procedimiento principal se relaciona con todos los demás procedimientos como cajas negras. Por ejemplo, el procedimiento principal no puede averiguar cómo funcionan los procedimientos A, B y X. El procedimiento principal solo llama a otro procedimiento; no tiene información sobre cómo se implementa ese procedimiento.

aislamiento de las actividades realizadas en procedimientos externos

Los lenguajes de programación orientados a procedimientos proporcionan mecanismos sencillos para especificar y escribir procedimientos. Por ejemplo, el prototipo de función C estándar ANSI es una construcción que se usa para especificar el nombre de un procedimiento, el tipo del resultado que devuelve (si existe) y el número, secuencia y tipo de sus parámetros. El uso del prototipo de función es una manera formal de especificar una interfaz entre procedimientos.

Rpc de Microsoft se basa en ese modelo de programación al permitir que los procedimientos, agrupados juntos en interfaces, residan en procesos diferentes a los del autor de la llamada. Microsoft RPC también agrega un enfoque más formal a la definición de procedimiento que permite al autor de la llamada y a la rutina llamada adoptar un contrato para intercambiar datos de forma remota e invocar la funcionalidad. En el modelo de programación RPC de Microsoft, las llamadas a funciones tradicionales se complementan con dos elementos adicionales.

  • El primer elemento es un archivo .idl/.acf que describe precisamente el intercambio de datos y el mecanismo de paso de parámetros entre el autor de la llamada y el procedimiento llamado.
  • El segundo elemento es un conjunto de API en tiempo de ejecución que proporcionan a los desarrolladores un control granular de la llamada a procedimiento remoto, incluidos aspectos de seguridad, administración del estado en el servidor, especificando qué clientes pueden comunicarse con el servidor, etc.