Le migliori pratiche per gestire valori variabili al di fuori del codice sorgente?

3

Sto cercando di ottenere la mia testa avvolta attorno all'OOP dopo aver programmato in più lingue procedurali per un certo numero di anni.

La mia domanda: qual è la migliore pratica per gestire valori variabili al di fuori del codice sorgente?

Ad esempio, ho i valori di directory di file e modelli di espressioni regolari che potrebbero dover essere modificati manualmente di volta in volta. Vorrei evitare di cambiare questi valori direttamente nel codice sorgente. Sto pensando di creare un file di testo che contenga coppie chiave / valore. Creo quindi un oggetto per impostare questi valori in modo che possano essere referenziati con qualsiasi metodo nel mio codice.

È questo l'approccio giusto o sto violando i principi OOP?

Grazie

    
posta UberNubIsTrue 25.08.2013 - 18:26
fonte

2 risposte

2

Il tuo approccio non viola alcun principio OOP.

Se è l'approccio corretto è irrisolvibile, perché non esiste un approccio corretto the . Posso dirti che è un approccio corretto a , ma ci sono sempre altri approcci possibili. Detto questo, se funziona per te, resta con esso.

    
risposta data 25.08.2013 - 18:42
fonte
6

Questo non ha nulla a che fare con OOP e tutto ciò che ha a che fare con i requisiti.

Ad esempio, sarebbe corretto ricompilare tutto o parte del programma quando cambiano i valori o i modelli? Quindi puoi buttarli via in un file di intestazione o in una classe (o qualsiasi altra cosa fornisca la tua lingua) in modo da non doverli codificare nell'effettiva logica del programma (una buona pratica comunque).

In caso contrario, probabilmente si intende rendere i valori modificabili in fase di esecuzione. Dovresti leggerli da qualche tipo di formato di file o database e rendere il tuo programma guidato dai dati.

In definitiva, questo è qualcosa che tu (o chiunque sia in carica) devi decidere prima di iniziare il progetto perché ha un rapporto diretto con che hai progettato. Molti approcci procedurali, funzionali o orientati agli oggetti affrontano entrambi i problemi, ma è necessario decidere quale affrontare per primi.

    
risposta data 25.08.2013 - 19:47
fonte

Leggi altre domande sui tag