Uma API para desenvolvimento de aplicações distribuídas deve dar aos programadores que a utilizam a possibilidade de invocar métodos definidos em objetos localizados em uma máquina remota, como se esses métodos estivessem definidos em um objeto local. Com a intenção de resolver esse problema, essa API pode usar, em sua implementação, uma variante do padrão estrutural GoF (Gang of Four) chamado