Como parece que la respuesta es que no hay un estándar único para esto en Java, me gustaría señalar que las Pautas de diseño de .NET Framework sí lo especifican.
Ahora, antes de criticarme por estar fuera de tema, recuerde que las pautas de nomenclatura de clases para Java y .NET Framework son bastante similares, lo que hace que las pautas .NET sean útiles como referencia persuasiva.
Reglas generales
Ambas pautas recomiendan usar acrónimos solo cuando el acrónimo es ampliamente conocido y bien entendido. DVD o XML son excelentes ejemplos de esto, ya que si bien los reconocerá de inmediato, tomará un poco más de tiempo reconocer la versión expandida.
Abreviaturas
Las Pautas de .NET Framework recomiendan no usar abreviaturas (en lugar de acrónimos), excepto que se pueden usar dos abreviaturas comunes 'ID' y 'OK' en los identificadores. Cuando se usa una abreviatura, Id
siempre se usa mayúsculas y minúsculas, excepto la primera palabra de un identificador camelCase (a diferencia de un identificador PascalCase).
En Java, esta convención se sigue solo algunas veces. Echar un vistazo a cómo se mezcla la ortografía getID
y getId
se encuentran en el JCL. (Desplácese hasta la mitad de esa página). Sin embargo, en la versión Java 8 , getId
se usa cada vez más, lo que sugiere que la convención PascalCase se prefiere hoy en día. Es mejor evitar las abreviaturas por completo cuando sea posible.
Siglas cortas
Las Directrices de .NET Framework dicen que los acrónimos de dos letras como 'IO' deberían tener el mismo caso para ambas letras. Entonces, para los identificadores PascalCase (como el nombre de una clase) que obtendría DBRate
, mientras que para un identificador camelCase (como una variable local) podría tener ioChannel
.
Esto definitivamente parece ser la convención predominante en Java también.
Acrónimos largos
Las pautas de .NET Framework recomiendan que los acrónimos de tres letras o más usen mayúsculas y minúsculas para los identificadores PascalCase y camelCase, excepto la primera palabra de un identificador camelCase. Por lo tanto, para un nombre de clase que pueda tener XmlDocument
, mientras que una variable local puede ser nombrada httpRequest
.
Esta convención no siempre se sigue en Java. Los acrónimos de cuatro caracteres generalmente parecen usar mayúsculas y minúsculas, pero incluso el JCL no es consistente con los acrónimos de tres letras. La mayoría de ellos parecen estar en mayúscula, como 'URL', 'XML', 'SQL' y 'DOM', pero hay algunas excepciones como 'Jar'.
Conclusión
Para Java:
Para acrónimos de más de 4 letras, use mayúsculas y minúsculas. La biblioteca estándar hace esto, y tiene mucho sentido.
Para acrónimos de 3 letras, puede usar todo en mayúsculas como JCL, o puede usar mayúsculas y minúsculas como lo hace .NET Framework. De cualquier manera, sea consistente.
Para acrónimos de 2 letras, use todas las mayúsculas.
Para abreviaturas de 2 letras, Java realmente no tiene un estándar, pero sugiero usar mayúsculas y minúsculas, a menos que la coherencia con otros nombres haga que todas las mayúsculas se vean mejor.
DigitalVersatileDiscPlayer
Es el camino a seguir.