Pergunta

Não sei nada sobre internacionalização.

Eu tenho um projeto com vários pacotes. Estou usando o assistente interno "externalize Strings" do Eclipse para extrair constantes de string em minhas classes para um arquivo de propriedades e substituir essas strings por chamadas para um acessador estático. Então, em vez de

System.out.println("Hello, world!");

Eu acabo com

System.out.println(Messages.getString("MyKey"));

e a Messages classe de utilidade em todos os pacotes (que fornecem uma estática getString Método para obter a string desejada de um ResourceBundle [neste caso a .properties Arquivo]). É melhor ter um Messages classe em cada pacote, ou ter um único Messages classe para todo o projeto?

Foi útil?

Solução

Sou a favor de um arquivo de localização global. Você terá chaves duplicadas ("OK", "Cancelar") que exigiriam duplicação ou ninho, e a interface com as pessoas de localização externa é mais fácil se os recursos forem consolidados.

Outras dicas

Eu guardaria um por pacote. Dessa forma, a manutenção/refatoração/teste de unidade é muito mais fácil.

Além disso, não há dependências globais em um único arquivo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top