Di recente ho letto The Pragmatic Programmer che afferma che:
I dettagli rovinano il nostro codice originale, specialmente se cambiano frequentemente. Ogni volta che dobbiamo entrare e cambiare il codice per adattarsi a qualche cambiamento nella logica aziendale, nella legge o nei gusti personali della direzione del giorno, corriamo il rischio di rompere il sistema, di introdurre un nuovo bug.
Hunt, Andrew; Thomas, David (1999-10-20). The Pragmatic Programmer: From Journeyman to Master (Posizioni Kindle 2651-2653). Pearson Education (USA). Edizione Kindle.
Attualmente sto programmando un'app Web con alcuni modelli che hanno proprietà che possono provenire solo da un insieme di valori, ad esempio (esempio non reale come dati riservati dell'app Web):
luce-> tipo = sfera / cubo / cilindro
Il tipo di luce può essere solo i tre valori precedenti, ma secondo TPP dovrei sempre codificare come se potessero cambiare e posizionare i loro valori in un file di configurazione. Poiché ci sono diversi incidenti di questo in tutta l'app, la mia domanda è:
Devo forse memorizzare valori come questi in:
un file di configurazione:
'light-types' => array(sphere, cube, cylinder),
'other-type' => value,
'etc' => etc-value
una singola tabella in un database con una riga per ciascun elemento di configurazione
un database con una tabella per ogni elemento di configurazione (es tabella:
light_types
; colonne:id
,name
)in qualche altro modo?
Mille grazie per qualsiasi assistenza / competenza offerta.