Quando memorizzare i valori in costanti / finali

1

Questa potrebbe sembrare una domanda strana, ma sono preoccupato di mettere troppe cose come costanti / finali nella parte superiore della mia classe java. Ho iniziato a inserire tutti i valori del mio programma in una costante (almeno quelli che influenzano l'effetto complessivo). Il motivo per cui lo sto facendo è perché è facile trovare i valori e cambiarli, anche se sono usati una sola volta, è più facile trovarli in alto. È una cattiva o una buona pratica, non ne ho idea.

Ecco un esempio:

private static final Color COLOR_SELECTED = Color.BLUE;
private static final Color COLOR_ALTERNATE_ONE = Color.WHITE;
private static final Color COLOR_ALTERNATE_TWO = new Color(240, 240 , 240);
private static final Color TEXT_COLOR = Color.black;
    
posta sinθ 24.05.2013 - 22:51
fonte

2 risposte

4

No, questa non è una brutta cosa. Il tuo codice sarà in grado di fare riferimento a TEXT_COLOR e ottenere costantemente Color.black . Anche se lo si utilizza solo una volta ora, è possibile utilizzarlo più volte man mano che il codice continua a svilupparsi.

Una cosa ancora migliore sarebbe leggere questi valori da un file delle proprietà, in modo da poterli modificare senza ricompilare. Ma questo è solo qualcosa di cui preoccuparsi se pensi che i colori utilizzati potrebbero effettivamente cambiare in futuro.

    
risposta data 24.05.2013 - 22:56
fonte
1

Questa è una buona pratica! Questo è equivalente all'idea di rimuovere i numeri magici .

In futuro, se vuoi cambiare il colore di qualcosa che è selezionato, puoi farlo in un posto. Cercando di cercare ogni istanza di Color.BLUE potrebbe non essere corretto se un altro elemento utilizza anche il colore blu.

    
risposta data 24.05.2013 - 22:59
fonte