[Más adelante: todavía no se puede determinar si Groovy tiene tipado estático (parece que no) o si el bytecode generado mediante tipado explícito es diferente (parece que sí). De todos modos, a la pregunta]Mecanografía explícita en Groovy: ¿a veces o nunca?
Una de las principales diferencias entre Groovy y otros lenguajes dinámicos - o al menos Ruby - es que puedes estáticamente escribir variables explícitamente cuando lo desees.
Dicho esto, ¿cuándo se debe usar el tipado estático en Groovy? Aquí hay algunas posibles respuestas que se me ocurren:
- Solo cuando hay un problema de rendimiento. Statically typed variables are faster in Groovy. (o son? Algunas preguntas sobre este enlace)
- En las interfaces públicas (métodos, campos) para las clases, por lo que obtiene autocompletar. ¿Es esto posible/verdadero/totalmente incorrecto?
- Nunca, solo complica el código y frustra el propósito de usar Groovy.
- Sí cuando sus clases se heredan o se utilizan
no sólo estoy interesado en lo que haces, pero es más importante lo que has visto en torno a proyectos codificados en Groovy. ¿Cuál es la norma?
Nota: Si esta pregunta es de alguna manera incorrecta o se pierde algunas categorías de estática-dinámica, hágamelo saber y lo arreglaré.
Creo que el título debería ser "tipos explícitos en groovy" ya que no hay tipeo estático en el idioma –
@Pablo Fernandez, cambió la pregunta un poco. –