Groovy
Logo języka | |
Pojawienie się | 2003 |
---|---|
Typowanie | |
Pochodne | Groovy++ |
Aktualna wersja stabilna | 4.0.6 |
Twórca | James Strachan[1] |
Licencja | Apache License 2.0 |
Platforma sprzętowa | |
Strona internetowa |
Groovy – obiektowy język skryptowy wzorowany na składni Javy[2], wzbogacony o dodatkowe cechy takie jak:
- domknięcia (obiekt będący złożeniem funkcji z określonym zestawem danych – ustalonych w momencie tworzenia obiektu, a wykorzystywanych przez tę funkcję przy jej wywołaniu)
- przeciążanie operatorów
- ułatwienia w obsłudze kolekcji i wyrażeń regularnych
- możliwość uruchomienia jako języka dynamicznie interpretowanego bądź skompilowanego do formatu kodu bajtowego[3].
Język jest w trakcie standaryzacji w ramach Java Community Process, w ramach zgłoszenia JSR 241[4].
Składnia
Pod względem składniowym język Groovy posiada następujące cechy[5]:
- średnik na końcu linii nie jest obowiązkowy,
- słowo kluczowe return nie jest wymagane w metodzie – gdy nie występuje to zwracana jest wartość ostatniego wyrażenia,
- metody get i set dla pól publicznych w klasie są tworzone automatycznie,
- metody nie wymagają określenia typu zwracanego w nagłówkach,
- zmienne nie wymagają określenia typu podczas deklaracji, aczkolwiek w przypadku użycia dookreślenia – kompilator wymusza silne typowanie konkretnej zmiennej.
Frameworki i narzędzia
Dla języka Groovy i z jego pomocą powstał szereg narzędzi, m.in.:
- Gradle,
- Griffon,
- Geb,
- Spock,
- Grails.
Przypisy
- ↑ James Strachan na stronie apache.org.
- ↑ Porównanie wydajności języków Groovy i Java (25 sierpnia 2012).
- ↑ What’s new in Groovy 2.0? (28 czerwca 2012).
- ↑ JSR 241: The Groovy Programming Language.
- ↑ The Apache Groovy programming language – Style guide, groovy-lang.org [dostęp 2017-11-23] .
Linki zewnętrzne
- Strona oficjalna języka (ang.)
- Groovy w serwisie GitHub (ang.)
- Strona procesu standaryzacji Groovy (ang.)
Media użyte na tej stronie
Autor: sbmehta converted to SVG from Sun Microsystems AI version., Licencja: BSD
Duke, the Java Mascot, in the waving pose. Duke images are now Free Graphics see duke:Project Home Page for more details.