Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform

Wat Is Groovy?

Apache Groovy is een objectgeoriënteerde, Java-syntaxis-compatibele taal die op de JVM draait. Het compileert naar Java bytecode, zodat elk systeem met een Java Runtime Environment het kan uitvoeren. Groovy voegt dynamische typing, closures, DSL ondersteuning en beknopte syntaxis toe, wat het een ideale compagnon maakt in plaats van een vervanger voor Java.

Waarom Groovy Gebruiken?

  • Dynamische, agile taal met snelle prototyping
  • Naadloze integratie met bestaande Java bibliotheken
  • Natuurlijk voor Java ontwikkelaars – minimale leercurve
  • Beknoptere, expressievere code dan Java
  • Kan vrij gemengd worden met Java – gebruik zoveel of zo min als je wilt

Groovy Geschiedenis

  • 2003 – Ontwikkeld door Bob McWhirter & James Strachan
  • 2004 – Ontworpen als JSR 241 (afgekeurd)
  • 2005 – Herleefd door Jeremy Rayner & Guillaume Laforge
  • 2007 – 1.0 uitgebracht
  • 2012 – 2.0 uitgebracht
  • 2014 – 2.3 (ondersteunt Java 8)
  • 2015 – Werd een Apache Software Foundation project

Belangrijkste Kenmerken van Groovy

  • Letterlijke syntaxis voor lijsten, maps, ranges, regexes
  • Multimethodes en metaprogrammering mogelijkheden
  • Dynamische en optionele statische typing
  • Operator overloading en beknopte syntaxis (geen puntkomma's of haakjes nodig in veel gevallen)
  • Closures en MetaObject Protocol voor krachtige scripting
  • Volledige compatibiliteit met Java bytecode en bibliotheken

Hoe Groovy Te Installeren

  1. Zorg dat Java geïnstalleerd is – Java installatie gids
  2. Download de installer van Groovy Download Pagina
  3. Voer de installer uit, selecteer taal, klik OK
  4. Klik VOLGENDE op het welkomstscherm Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform
  5. Accepteer de licentievoorwaarden Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform
  6. Selecteer componenten om te installeren en klik VOLGENDE Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform
  7. Kies installatiemap en klik VOLGENDE Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform
  8. Stel Start Menu map in en klik VOLGENDE Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform
  9. Voltooien installatie (paden blijven standaard) en klik VOLGENDE Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform
  10. Na installatie, start Groovy Console vanuit het Start Menu om te verifiëren Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform

Groovy Hello World

Java versie:

public class Demo {
    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}

Groovy equivalent – een enkele regel:

println "Hello World."

Groovy verwijdert de noodzaak voor puntkomma's, haakjes en de verbose System.out.println.

Variabelen

Java vereist expliciete types:

public class Demo {
    public static void main(String[] args) {
        int x = 104;
        System.out.println(x);
        // x = "Guru99"; // Compileer-tijd fout
    }
}

Groovy ondersteunt dynamische typing via def:

def x = 104
println x.getClass()
x = "Guru99"
println x.getClass()

Output:

class java.lang.Integer
class java.lang.String

Multiline strings gebruiken triple quotes:

def x = """Groovy bij Guru99"""
println x

Operatoren

Groovy ondersteunt de gebruikelijke categorieën:

  • Rekundig: + - * / %
  • Relationeel: == != < <= > >=
  • Logisch: && || !
  • Bitwise: & | ^ ~
  • Toewijzing: = += -= *= /= %=

Lussen

Java for-lus:

for (int i = 0; i <= 5; i++) {
    System.out.println(i);
}

Groovy equivalenten:

0.upto(4) { println "$it" }
2.upto(4) { println "$it" }
5.times { println "$it" }
0.step(7, 2) { println "$it" }

Besluitvorming

StatementBeschrijving
ifUitgevoerd wanneer conditie true is.
if/elseVoert true branch uit; anders else branch.
nested ifMeerdere conditionele branches.
switchSchonere alternatief voor multi-branch logica.
nested switchOndersteund in Groovy.

Lijsten

Een lijst is een geordende verzameling referenties, gedefinieerd met vierkante haken.

  • String lijst: ['Angular', 'Nodejs']
  • Gemengde lijst: ['Groovy', 2, 4.6]
  • Integer lijst: [16, 17, 18, 19]
  • Lege lijst: []

Veelvoorkomende lijst methodes:

MethodeBeschrijving
add()Waarde aan het einde toevoegen.
contains()True als waarde bestaat.
get()Element op index.
isEmpty()True als lijst geen elementen heeft.
minus()Nieuwe lijst minus gespecificeerde elementen.
plus()Nieuwe lijst met toegevoegde elementen.
pop()Laatste element verwijderen.
remove()Element op index verwijderen.
reverse()Omgekeerde lijst retourneren.
size()Aantal elementen.
sort()Gesorteerde kopie retourneren.

Voorbeeld:

def y = ["Guru99", "is", "Best", "voor", "Groovy"]
println y
y.add("Leren")
println(y.contains("is"))
println(y.get(2))
println(y.pop())

Output:

[Guru99, is, Best, voor, Groovy]
true
Best
Leren

Maps

Een map is een verzameling sleutel-waardeparen.

  • Voorbeeld: [Tutorial:'Java', Tutorial:'Groovy'] – sleutel Tutorial met twee waarden.
  • Lege map: []

Map methodes:

MethodeBeschrijving
containsKey()Controleren op een sleutel.
get()Waarde voor een sleutel retourneren.
keySet()Set van sleutels.
put()Sleutel/waarde paar toevoegen of vervangen.
size()Aantal entries.
values()Verzameling van waarden.

Voorbeeld:

def y = [fName:'Jen', lName:'Cruise', sex:'F']
print y.get("fName")

Output:

Jen

Closures

Een closure is een blok code behandeld als een object, vergelijkbaar met een lambda.

Eenvoudige closure:

def myClosure = { println "Mijn Eerste Closure" }
myClosure()

Met parameters:

def sum = { a, b, c -> return a + b + c }
println sum(1, 2, 3)

Output:

6

Groovy vs. Java

GroovyJava
Standaard access modifier is public.Standaard is package-private.
Automatische getters/setters voor velden.Moet handmatig gedefinieerd worden.
String interpolatie met dubbele quotes.Geen interpolatie.
Typing optioneel.Typing verplicht.
Geen puntkomma's nodig.Puntkomma's vereist.
Elk script extend automatisch Script klasse.Heeft public static void main nodig voor uitvoering.

Veelvoorkomende Misverstanden

MythRealiteit
Groovy is alleen voor scripting.Het is veelzijdig: gebruikt voor web frameworks, dataverwerking, en meer.
Groovy is puur functioneel.Het leent functionele concepten maar blijft een OOP taal.
Groovy is ideaal alleen voor TDD.Het ondersteunt TDD maar is nuttig in veel scenario's.
Groovy is beperkt tot Grails.Grails is een populair framework, maar Groovy werkt onafhankelijk.

Nadelen Van Groovy Gebruik

  • JVM opstart kan langzamer zijn, wat snelle scripts beïnvloedt.
  • Niet universeel geadopteerd buiten Java ecosystemen.
  • Minder comfortabel zonder een IDE.
  • Runtime prestaties kunnen achter Java achterblijven.
  • Hoger geheugengebruik.
  • Java kennis is essentieel voor effectief gebruik.

Essentiële Groovy Tools

  • groovysh – Interactieve command-line shell.
  • groovyConsole – Swing GUI voor scripts draaien.
  • groovy – Command-line interpreter voor scripts uitvoeren.

Voorbeelden van gebruik:

groovysh

  • Statements of hele scripts interactief invoeren.
Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform

groovyConsole

  • Minimale editor voor Groovy code schrijven en draaien.
Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform

groovy

  • Draait Groovy scripts vanaf de command line.
Groovy Beheersen: Een Beginnersgids voor Scripting op het Java Platform

Samenvatting

  • Groovy is een objectgeoriënteerde taal voor het Java platform.
  • Het biedt naadloze integratie met Java bibliotheken.
  • Belangrijkste kenmerken zijn dynamische typing, closures en letterlijke syntaxis.
  • Groovy ondersteunt standaard operatoren, controlestromen, collecties en maps.
  • Het automatiseert getters/setters en elimineert boilerplate.
  • Hoewel het prestatie-afwegingen kan hebben, zijn de productiviteitswinsten significant.
  • Groovy tools zoals groovysh, groovyConsole en de groovy interpreter stroomlijnen ontwikkeling.

Java

  1. Bouw een Raspberry Pi Obstakel-vermijdende Robot – Een Beginnersgids
  2. Metaalfabricage 101: Een duidelijke gids voor beginners
  3. CNC-routers voor beginners: De markt meesteren met mühelose precisie
  4. PowerShell Beheersen: Beginnersgids voor Krachtig Scripten
  5. C Programmeren leren: Uitgebreide PDF-tutorial voor beginners
  6. Java for-lussen beheersen: syntax, voorbeelden en best practices
  7. Java Arrays Tutorial: Declaratie, Creatie en Initialisatie – Voorbeeldcode
  8. Java Stack vs. Heap: Een Praktische Gids voor Geheugentoewijzing
  9. Java For-Each Lus: Array Iteratie Vereenvoudigen Zonder Tellers
  10. Java-programma om Armstrong-getallen te identificeren met for-lus
  11. Java palindroom-getal checker: Algoritmen met while en for lussen