Determinare in modo efficiente le opzioni disponibili in base alle selezioni precedenti

0

Sto cercando un modello o algoritmo di progettazione noto che possa essere utilizzato per determinare in modo efficace un insieme di opzioni disponibili da presentare a un utente in base a decisioni precedenti.

Un esempio estremamente semplice di questo potrebbe essere Year > Crea > Modello in cui Modello e Marca dipendono dalle selezioni precedenti effettuate dall'utente.

Mi piacerebbe che questo si ridimensionasse in uno scenario industriale come le macchine, che può avere decine di opzioni, ciascuna con dipendenze dalle selezioni precedenti effettuate dall'utente. Avevo considerato un albero delle decisioni, ma sentivo che modellarlo con queste molte decisioni poteva essere una sfida di scalabilità.

Quale sarebbe il giusto percorso di apprendimento da perseguire per costruire una funzione del genere?

    
posta Kyle Ballard 12.03.2018 - 14:46
fonte

1 risposta

1

Consiglierei NOT di provare ad applicare un pattern a questo e semplicemente a codificare il codice di ogni modulo.

Nella mia esperienza, la relazione tra i criteri è un requisito aziendale e come tale non segue alcuna logica che possa essere generalizzata.

Ad esempio; la tua Marca e Modello potrebbe sembrare inizialmente una semplice relazione genitore-figlio, la stessa di molte altre. Ma dopo averlo implementato, una richiesta di modifica verrebbe da dire

'Don't show Models X, Y and Z when the purchaser is in Michigan'

Questo rompe il tuo modello e ti costringe a renderlo sempre più complicato finché non diventa più complicato il linguaggio di programmazione che stai usando per implementarlo.

Rivisiterà il codice mesi o anni dopo e ti auguriamo di aver appena codificato ciascun modulo separatamente.

    
risposta data 13.03.2018 - 13:50
fonte

Leggi altre domande sui tag