Sto scrivendo un programma (in PHP) in cui devo recuperare dei dati per collegarmi a gateway di pagamento usando due parametri.
Questi due parametri sono il paese di provenienza di un utente e il tipo di device utilizzato (smartphone o feature phone).
Al momento la soluzione che mi é venuta in mente é quella di fare un controllo su una serie di array annidati e di ritornare un'array con i possibili metodi di pagamento supportati (per esempio il primo e il terzo gateway)
Con i valori contenuti all'interno dell'array mi andrķ a istanziare gli oggetti (magari con un factory pattern) che andranno a fornire i dati necessari per avviare il pagamento.
Il tutto mi sembra abbastanza macchinoso e vorrei invece sfruttare qualche design pattern (se ce ne sono) che mi permetta di aggiungere ulteriori gateway in futuro.
Pensavo di usare qualcosa tipo uno strategy pattern per scegliere i gateway utilizzati, ma questo mi permette di avere solo un'oggetto di ritorno, mentre io non ho idea di quanti gateway saranno (sicuramente piú di uno).
Avete idee al riguardo?

Rispondi quotando
