Groovy è un linguaggio dinamico , significa che ogni nome di variabile è (a meno che non sia null) associato solo a un oggetto.
I nomi sono associati agli oggetti al momento dell'esecuzione tramite le istruzioni di assegnazione.
Java, è un linguaggio tipizzato staticamente, significa che ogni nome di variabile è associato entrambi:
- A un tipo (in fase di compilazione, mediante una dichiarazione di dati)
- A un oggetto (facoltativo, se non è associato a un oggetto, il nome è detto nullo)
Quando usi Java puoi trovare errori di sintassi in fase di compilazione.
Correlato alla tua domanda:
Does Groovy(or Groovy IDEs, preferably when used along with Grails)
have those features(implemented as thoroughly as Java/Java IDEs)?
La risposta è no.
Secondo me, Groovy utilizza il framework Grails è un grande e facile da usare.
L'utilizzo di Groovy e Grails crea un solido framework che consente allo sviluppatore un rapido sviluppo e un ambiente molto amichevole. Sono sicuro che ci sono alcune persone che possono discutere con l'ultima frase che ho scritto, ma questa è la mia opinione come sviluppatore che lavora con quel framework e usa groovy per un anno.
Se desideri avere un strong linguaggio di scrittura e la possibilità di controllare il tuo codice in fase di compilazione rispetto a Java è la tua risposta (specialmente utilizzando Java 8 con le sue fantastiche nuove funzionalità come Lambda e Java Stream Api).
Prova a pensare quali sono le caratteristiche principali che vorresti avere nel tuo IDE prima di sceglierne una. Può rendere la tua vita molto più piacevole se hai un ottimo sistema di eco con cui lavorare.