Stavamo discutendo sul mio lavoro sull'uso degli enum in Java.
Un collega stava sostenendo che quando si usano enum sul lato server, ogni volta che è necessario si dovrebbe usare la stringa per fare riferimento ad esso (ad esempio quando si inviano dati da JS al server o quando si archivia nel database), sostenendo che questo è molto più chiaro per lo sviluppatore e sostenendo anche che avrebbe fallito rapidamente in caso di errori di battitura.
Ho sempre usato numeri interi per identificare gli enum in questi casi, perché sarebbero identificatori immutabili e non avrebbero problemi di caso e errore di battitura (anche se uno sviluppatore avesse commesso l'errore di usare il valore 2 invece di 1, non avrebbe fallito rapidamente).
Essendo molto analitico su questi argomenti, direi che usare le stringhe è meglio, ma ho una strana sensazione al riguardo (come se non fosse un buon approccio).
C'è qualche buona pratica riguardo a questa discussione che potrebbe guidarmi?
Modifica: ogni volta che è possibile, usiamo l'enum stesso, quindi tutto il nostro codice Java utilizza l'Enum. Per "riferimento a un enum" intendo: fare riferimento al valore nell'enum quando si scambiano dati da JavaScript al server o si archiviano dati nel database