[Позже: все еще не могу понять, имеет ли Groovy статическую типизацию (кажется, что нет) или байт-код, сгенерированный с использованием явной типизации, отличается (кажется, что это так). Во всяком случае, к вопросу]
Одним из основных отличий между Groovy и другими динамическими языками - или, по крайней мере, Ruby - является то, что вы можете статически явно вводить переменные, когда хотите.
Тем не менее, когда вы должны использовать статическую типизацию в Groovy? Вот некоторые возможные ответы, которые я могу придумать:
- Только при проблемах с производительностью. Статически типизированные переменные быстрее в Groovy. (или это некоторые вопросы по этой ссылке)
- В открытых интерфейсах (методах, полях) для классов, поэтому вы получаете автозаполнение. Возможно ли это / правда / совершенно неправильно?
- Никогда, он просто загромождает код и побеждает цель использования Groovy.
- Да, когда ваши классы будут унаследованы или использованы
Меня интересует не только то, что ВЫ делаете, но, что более важно, то, что вы видели в проектах, написанных на Groovy. Какая норма?
Примечание: Если этот вопрос как-то не так или пропускает некоторые категории статической динамики, дайте мне знать, и я исправлю это.