Le linee guida sono linee guida, non leggi immutabili della natura. Hai trovato un eccellente esempio di un nome ragionevole che non può essere facilmente mappato nelle normali convenzioni di denominazione Java. Quindi cosa dovresti fare?
Crea un'eccezione.
Di tutti i tuoi suggerimenti, Iso8859_1
è l'unico nome che chiaramente e in modo univoco esprime di cosa tratta la classe. Le varie linee guida di codifica sono solo euristiche per trovare nomi chiari. Qui falliscono, e faresti bene a ignorarli.
Checkstyle è configurabile. Adattare la configurazione per consentire tali nomi o la dichiarazione della classe dal controllo del nome. Fai in modo che lo strumento ti aiuti, invece di renderti schiavo di uno strumento incompetente.
(Razionale: le convenzioni di codifica Java predefinite suggeriscono l'uso di camelCase per enfatizzare visivamente i limiti di parole all'interno di un identificatore.I caratteri di sottolineatura sono usati come limiti di parola nelle costanti perché le costanti devono essere tutte maiuscole. abbiamo bisogno di un confine tra le cifre . Siccome le cifre ASCII non hanno caso, non puoi usare il caso cammello qui, e per eliminazione l'unica opzione rimanente per separare le cifre in un nome è underscore.)