Principio della singola responsabilità: modello proxy per il refactoring

3

However, in cases where the tests did not force the separation, and the smells of Rigidity and Fragility become strong, the design should be refactored using the Facade or Proxy patterns to separate the two responsibilities.

Da: Sviluppo software agile: principi, modelli e pratiche

Capisco come si può usare Facade. Non sono in grado di capire in che modo il proxy sarebbe utile.

Qualcuno può fornire un esempio di come Proxy Pattern può essere usato per refactoring qui. Grazie!

    
posta q126y 15.12.2015 - 11:47
fonte

1 risposta

1

Dato l'esempio in cui si desidera unità testare un codice che fa CORBA o un'altra chiamata remota.

Durante la fase di test non hai l'ambiente adatto online. Il refactoring di questa preoccupazione e la creazione di un codice testabile appropriato possono essere ottenuti con un pattern Proxy , in cui l'implementazione del proxy concreto delegherebbe le chiamate a un'altra classe concreta. Ciò consente la separazione delle preoccupazioni citate nella tua domanda.

Quindi durante un test di integrazione puoi effettivamente testare il comportamento remoto.

    
risposta data 15.12.2015 - 13:08
fonte