API divisa in parti REST e SOAP e modelli di progettazione

4

Devo lavorare con alcune API gateway di pagamento. L'API è divisa in due parti. Esistono alcuni metodi basati su REST e alcuni metodi accessibili tramite il servizio web SOAP. Vorrei creare un bridge per combinarlo in una singola classe API nella mia applicazione. Tuttavia non sono sicuro che sia una buona scelta. La domanda è ... c'è qualche schema di progettazione per questo tipo di situazioni?

    
posta deem 20.12.2016 - 09:26
fonte

4 risposte

4

Suggerirei Gateway

La differenza è che Gateway nasconde la complessità dell'API esterna alla tua API interna.

Facciata, mi sembra il contrario. Nasconde la tua complessità ai client esterni.

In entrambi i casi l'implementazione è simile.

    
risposta data 20.12.2016 - 18:01
fonte
2

Come @ user1172763 menzionato questo è chiamato Facciata . Solitamente viene utilizzata una facciata per fornire un'interfaccia semplificata per un sistema più complesso. Ma come cita il collegamento wiki, una facciata è anche usata per:

wrap a poorly designed collection of APIs with a single well-designed API.

In questo caso si nascondono due API eterogenee (un REST, un SOAP) dietro un'API omogenea (facciata).

    
risposta data 20.12.2016 - 17:27
fonte
1

Non molto di un modello secchione, ma penso che useresti il "Pattern di facciata".

    
risposta data 20.12.2016 - 17:19
fonte
1

Oltre a utilizzare il pattern Facade, e se desideri ottenere un codice più elegante e puro con il tuo codice, ti consiglio di utilizzare il pattern Adapter per convertire in modo pulito l'interfaccia delle classi API esterne in quello che è previsto per l'interno Classi API.

    
risposta data 20.12.2016 - 17:48
fonte

Leggi altre domande sui tag