Sto scrivendo questo in node.js
Ho alcuni dati che devono essere convalidati prima che tutto ciò possa essere fatto con questo. I dati sono convalidati in due modi diversi. Posso usare JSONSchema per convalidare la struttura dei dati, ad es. i dati devono contenere una proprietà name di minLength 1 e maxLength 100. Quindi utilizzo un altro validatore per le regole aziendali ad es. if (x and !y) { throw error)
.
Sia con il validatore strutturale che con il validatore della logica di business, sto osservando da qualche parte circa 40 regole dispari su cui convalidare. Il pensiero corrente era quello di utilizzare il modello di progettazione Visitor (come mostrato in questa domanda Modello di progettazione per la convalida dei dati ), tuttavia, potrei pensarci sopra, ma mi chiedevo se avere 2 classi di validazione (strutturali e logiche) con oltre 20 convalide di regole (in ogni classe) e varie altre funzioni di supporto è troppo grande ... una parte di me si sta chiedendo se davvero ogni regola (ed i suoi aiutanti) dovrebbero essere scomposti nella propria classe ... quindi usare il modello della pipeline? o qualcos'altro interamente.