Esiste un nome per una tecnica di progettazione in cui il metodo di un oggetto accetta e restituisce un oggetto business personalizzato?

4

Come si chiama una classe che ha metodi che

  • accetta input (da utente, da GET o POST)
  • trasformarlo in un oggetto business e restituire quell'oggetto

example ...

class Input
{
    function getObject(array $input)
    {
        $o = new Object();
        $o->setVars($input);
        return $o;
    }
}

$o = (new Input())->getObject($_POST);
    
posta Dennis 31.10.2016 - 20:20
fonte

1 risposta

2

Come @RobertHarvey ha commentato che un metodo di fabbrica potrebbe essere un nome appropriato. Quando si tratta di applicazioni web Model Binding è un altro buon termine che ho visto in riferimento al mapping dei dati in una richiesta HTTP a una sorta di oggetto concreto.

Model binding in ASP.NET Core MVC maps data from HTTP requests to action method parameters. The parameters may be simple types such as strings, integers, or floats, or they may be complex types.

Fonte: Introduzione all'associazione di modelli

Anche un Data Mapper è un buon nome.

Qualsiasi scelta dipenderà in gran parte dal contesto. Se stiamo parlando di parametri in una richiesta HTTP andare con Model Binder. Se si parla di prendere i dati da un tipo e convertirlo in un altro, allora un Data Mapper si adatta. Infine, se si tratta di un metodo generico che decide in fase di esecuzione quale tipo concreto creare in base all'input, si ha un metodo / oggetto di fabbrica.

    
risposta data 02.11.2016 - 04:25
fonte