Il modello di passare in un oggetto invece di molti parametri in un costruttore ha un nome?

0

Se hai un costruttore che richiede molti parametri, come questo:

  public OrgUnitsHalRepresentation(List<OrgUnitSummaryHalRepresentation> orgUnitSummaryHalRepresentationList,
  int count, int providedCount, int total, int page, int filterLimit, boolean hasNextPage, boolean isDefaultCount)

Puoi usare una classe separata che non prende nulla nel costruttore e imposta questi parametri usando setter e passa invece al costruttore:

public OrgUnitsHalRepresentation(Pagination(Name of pattern) p)

Ha un nome così da poterlo usare nel nome della mia classe?

    
posta Piddien 01.08.2014 - 11:57
fonte

2 risposte

12

Questo è Oggetto Parametro Modello di progettazione (o Argument Object ), il relativo Refactoring si chiama Introduci oggetto parametro .

    
risposta data 01.08.2014 - 12:59
fonte
1

Questo mi sembra un normale caso di raggruppamento di variabili correlate in una struttura compatta, che è stata praticata da quando sono state inventate le strutture. Considerando che è così antico, immagino che non ci sia un nome per questo.

Inoltre, ricorda una cosa: i pattern sono molto più complessi di così. Pattern di solito significa qualcosa che introduce SOLID nel codice. Il tuo caso è troppo semplice per essere considerato un modello. Lo chiamerei semplicemente "PaginationParameters"

    
risposta data 01.08.2014 - 12:15
fonte

Leggi altre domande sui tag