Vi scrivo per scoprire se questo design pattern è la soluzione adatta al mio problema, vedo di esporlo chiaramente:
Ho un client, che si deve connettere ad un server, il server può essere di vario tipo, ad esempio FTP o SQL. Una volta connesso devo effettuare delle operazione che per il lato client devono essere trasparenti, ad esempio l'aggiunta di un record. Se sono connesso ad un server FTP questò produrrà la creazione di una nuova cartella, se sono connesso ad un server SQL produrrà l'inserimento di un nuovo record in una data tabella.
Altro esempio, recuperare una lista di cose (qualcosa di generico), se sono connesso ad un server FTP vorrà dire recuperare la lista di directory in un determinato path, se sono connesso ad un server SQL vorrà dire recuperare una lista di valori da una tabella.
Dopo aver studiato il problema, ho visto una possibile soluzione nell'Abstract Factory.
Ora chiedo a voi, sono completamente fuori strada o è il pattern adatto?