Apache Groovy: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
mNessun oggetto della modifica
Etichette: Annullato Possibile vandalismo su parametri dei sinottici Modifica visuale Edit Check (citazioni) attivato Edit Check (references) declined (common knowledge)
Annullata la modifica 138386790 di BadDogNoBiscuits (discussione) senza fonti, rimozione di fonti
Etichetta: Annulla
Riga 2:
{{S|linguaggi di programmazione}}
{{Linguaggio di programmazione
|nome = Apache Groovy
|immagine = Groovy-logo.svg
|didascalia =
Riga 9:
|versione =
|utilizzo = [[General purpose]]
|paradigmi = [[Programmazione orientata agli oggetti|Orientato agli oggetti]], [[Programmazione imperativa|imperativa]], [[Linguaggio di scripting|scripting]]
|tipizzazione = [[Tipizzazione forte|Forte]], [[Tipizzazione dinamica|Dinamica]]
|specifiche =
Riga 18:
|sistema_operativo = [[Multipiattaforma]]
|lingua =
|licenza = [[Licenza Apache]] v. 2.0
|sito_web =
}}
'''Apache Groovy''' è un [[linguaggio di programmazione]] [[Programmazione ad oggetti|ad oggetti]] per la [[Piattaforma Java]] alternativo al [[Java (linguaggio di programmazione)|linguaggio Java]]. ÈPuò unessere visto come [[linguaggio siadi staticoscripting]] cheper dinamicola ePiattaforma Java, presenta caratteristiche simili a quelle di [[Python]], [[Ruby (linguaggio di programmazione)|Ruby]], [[Perl]], e [[Smalltalk]]. Può essere utilizzato sia come linguaggio di programmazione che come linguaggio di scripting. A volte ci si riferisce a Groovy con il nome alternativo di ''JSR 241''.
 
Dalla versione 2.0 Groovy può essere staticamente compilato con performance comparabili a quelle di Java.
 
== Caratteristiche ==
Groovy usa una [[sintassi (informatica)|sintassi]] simile a quella di Java, basata su [[parentesi graffa|parentesi graffe]], viene compilato dinamicamente in [[bytecode]] per la [[Macchina virtuale Java|Java Virtual Machine]] (JVM), ed interagisce in modo trasparente con altro codice Java e con le librerie esistenti. Il [[compilatore]] di Groovy può essere usato per generare bytecode Java standard che può quindi essere usato da qualsiasi progetto Java. Groovy può anche venire usato come linguaggio di scripting dinamico.
 
Altre caratteristiche:
Line 43 ⟶ 41:
 
;Groovy
<syntaxhighlight lang="groovy" line="1">
["Rod", "Carlos", "Chris"].findAll{ it.size() <= 4 }.each{ println it }
</syntaxhighlight>
 
Line 88 ⟶ 86:
Dopo varie [[versione beta|versioni beta]] e [[Release (informatica)|release]] candidate numerate come 1.1, il 7 dicembre [[2007]] ''Groovy 1.1 Final'' è stato pubblicato e rinumerato come Groovy 1.5, per evidenziare i grandi miglioramenti fatti rispetto alla precedente versione.
 
== Versioni ==
'''Groovy 2.5''' è stato rilasciato a maggio 2018, richiede almeno JDK 7.
* 1.0 2 gennaio 2007<ref>[http://docs.codehaus.org/display/GROOVY/2007/01/02/Groovy+1.0+is+there Groovy 1.0 is there - Groovy - Codehaus<!-- Titolo generato automaticamente -->] {{webarchive|url=https://web.archive.org/web/20111112075312/http://docs.codehaus.org/display/GROOVY/2007/01/02/Groovy+1.0+is+there |data=12 novembre 2011 }}</ref>
 
* 1.5 7 dicembre 2007<ref>[http://docs.codehaus.org/display/GROOVY/2007/12/07/Groovy+1.5+released Groovy 1.5 released - Groovy - Codehaus<!-- Titolo generato automaticamente -->] {{webarchive|url=https://web.archive.org/web/20111112091223/http://docs.codehaus.org/display/GROOVY/2007/12/07/Groovy+1.5+released |data=12 novembre 2011 }}</ref>
'''Groovy 3.0''' è stato rilasciato a febbraio 2020, richiede almeno JDK 8 e introduce un nuovo parser più flessibile (chiamato "Parrot").
* 1.6 18 febbraio 2009<ref>[http://docs.codehaus.org/display/GROOVY/2009/02/18/The+final+version+of+Groovy+1.6+is+released The final version of Groovy 1.6 is released - Groovy - Codehaus<!-- Titolo generato automaticamente -->] {{webarchive|url=https://web.archive.org/web/20091228041831/http://docs.codehaus.org/display/GROOVY/2009/02/18/The+final+version+of+Groovy+1.6+is+released |data=28 dicembre 2009 }}</ref>
 
* 1.7 22 dicembre 2009<ref>[http://docs.codehaus.org/display/GROOVY/2009/12/22/Groovy+1.7+released Groovy 1.7 released - Groovy - Codehaus<!-- Titolo generato automaticamente -->] {{webarchive|url=https://web.archive.org/web/20100501011541/http://docs.codehaus.org/display/GROOVY/2009/12/22/Groovy+1.7+released |data=1º maggio 2010 }}</ref>
'''Groovy 4.0''' è stato rilasciato a gennaio 2022, richiede almeno JDK 8 e implementa un supporto migliorato per JPMS.
* 1.8 27 aprile 2011<ref>[http://docs.codehaus.org/display/GROOVY/2011/04/27/Groovy+1.8.0+final+is+released Groovy 1.8.0 final is released - Groovy - Codehaus<!-- Titolo generato automaticamente -->] {{webarchive|url=https://web.archive.org/web/20111102223226/http://docs.codehaus.org/display/GROOVY/2011/04/27/Groovy+1.8.0+final+is+released |data=2 novembre 2011 }}</ref>
 
Dalla* versione1.8.5 23 dicembre 2011<ref>[http://docs.codehaus.org/display/GROOVY/2011/12/23/Groovy+1.8.5+and+2.0-beta-2+released Groovy avrà1.8.5 comeand requisito2.0-beta-2 minimoreleased JDK- 11.Groovy - Codehaus<references!-- groupTitolo generato automaticamente -->] {{webarchive|url="https://web.archive.org/web/2014060509570720120120155704/http://docs.codehaus.org/display/GROOVY/20142011/0512/0523/Groovy+21.38.05+isand+out"2.0-beta-2+released |data=20 gennaio 2012 }}</ref>
* 2.1.0 25 gennaio 2013<ref>{{Cita web |url=http://groovy.codehaus.org/Download?nc |titolo=Groovy 2.1.0 download |accesso=6 febbraio 2013 |urlarchivio=https://web.archive.org/web/20130128135019/http://groovy.codehaus.org/Download?nc |dataarchivio=28 gennaio 2013 |urlmorto=sì }}</ref>
* 2.2 18 novembre 2013<ref>[https://glaforge.appspot.com/article/groovy-2-2-released Groovy 2.2 released]</ref>
* 2.3.0 5 maggio 2014<ref>[http://docs.codehaus.org/display/GROOVY/2014/05/05/Groovy+2.3.0+is+out Groovy 2.3.0 is out] {{webarchive|url=https://web.archive.org/web/20140605095707/http://docs.codehaus.org/display/GROOVY/2014/05/05/Groovy+2.3.0+is+out |data=5 giugno 2014 }}
</ref>
<references group="https://web.archive.org/web/20140605095707/http://docs.codehaus.org/display/GROOVY/2014/05/05/Groovy+2.3.0+is+out" />
 
== Note ==