Attualmente la mia squadra ha un numero di costanti definito come stringhe finali statiche. Voglio essere in grado di scorrere su queste stringhe come se fossero enum in una posizione, ma in qualsiasi altro modo vengono utilizzate come stringhe costanti. Gli altri sviluppatori non li vogliono come Enum perché non vogliono aggiungere un valore all'enumerazione ogni volta che vogliono usare le costanti, sentendo che è troppo prolisso e quindi ingombrante.
Sembra che il modo più semplice per mantenere il modo in cui gli altri hanno fatto le cose pur ottenendo la convenienza dell'iterazione (senza entrare in una riflessione) è di fare entrambe le cose. Avere un enum, ma in aggiunta definire un campo finale statico che è uguale al valore dell'enum per ogni enum, in modo che altri possano scegliere di usare la stringa statica il più delle volte, ma avere l'enum per ricominciare quando vogliono un vero "Enum".
Tuttavia, in qualche modo questo mi sembra sbagliato, anche se soddisfa i due bisogni desiderati. C'è un modo migliore per rendere queste stringhe iterabili?