Was ist Groovy?
Groovy ist eine dynamische Sprache, die in scharfem Kontrast zu dem statischen System steht, mit dem Sie wahrscheinlich in Java vertraut sind. Groovy-Anwendungen werden vollständig mit JVM-Bytecode (Java Virtual Machine) kompiliert. Dies bedeutet, dass Groovy-Code problemlos in der Java-Umgebung ausgeführt werden kann. Darüber hinaus bietet die JVM erweiterte Konzepte wie funktionale Programmierung, Metaprogrammierung sowie eine hervorragende Unterstützung für die Verarbeitung von JSON und XML-Dateien.
Obwohl es sich um eine alternative Sprache handelt, bietet es umfassende Unterstützung für das gesamte Java-Ökosystem, einschließlich ausgereifter IDE-Unterstützung.
Groovy verstehen
- Objektorientierte Sprache.
- Verfügt über statische und dynamische Funktionen.
- Bietet erweiterte Programmierkonzepte.
- Wird als alternative Java-Sprache angesehen.
Beispiele für alternative Java-Sprachen
- Scala: Was ist eine statisch typisierte, objektorientierte und funktionale Sprache,
- Clojure: Dies ist ein Dialekt der Lisp-Sprache, der speziell für die Ausführung auf der JVM erstellt wurde.
- Kotlin: Dies ist eine statisch typisierte Sprache, die auf der JVM ausgeführt wird und in JavaScript- oder JVM-Bytecode kompiliert werden kann.
Polyglot-Programmierung ist ein Konzept, das in den letzten Jahren entstanden ist, um diese Explosion in alternativen Sprachen für verschiedene Frameworks wirklich auszunutzen. Das Konzept ist einfach. Möglicherweise betrachten wir stabilere, vorhersehbare Sprachen am unteren Rand der Box oder in unserem Fall das Framework. Für die JVM-Welt kann dies statische Sprachen wie Java oder Scala umfassen. Wenn wir den Kasten nach oben oder in den eigentlichen Anwendungscode wechseln, denken wir möglicherweise an dynamischere und flexiblere Sprachen. In unserem Fall kann dies Groovy, Clojure oder auch JRuby sein. Ganz oben auf der Liste sehen wir uns möglicherweise Lightweight-DSL (Domain Specific Language) an, um die wichtigste Geschäftslogik in unsere Anwendung auf der JVM zu integrieren. Dazu gehören Apache Camel DSL oder Gradle, das Build-Tool, aber wir könnten auch unsere eigene erstellen Geschäftsspezifische DSLs, um die Regeln unserer Geschäftsdomäne wirklich zu erfassen.
Installationsprozess von Groovy
Schritt 1. Installieren Sie zuerst das SDKMAN-Tool. Welche wird unter Linux oder OS X unterstützt. Allerdings, wenn Sie auf Windows-Computer arbeiten. Sie können trotzdem mitmachen, indem Sie zuerst den Cygwin UNIX-Emulator installieren. Welches kann bei www.Cygwin.com gefunden werden
Schritt 2. Öffnen Sie das Terminal, geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste
Schritt 3. Nach Abschluss des Ausführungsskripts wird das SDKMAN-Init-Skript als Quelle bereitgestellt, um sicherzustellen, dass in unserer aktuellen Sitzung alles initialisiert wurde, was SDKMAN für den Betrieb benötigt.
Schritt 4. Abschließend überprüfen wir, ob SDKMAN erfolgreich installiert wurde, indem wir SDKMAN nach seiner aktuellen Version fragen, um den Befehl sdk version einzugeben und die Eingabetaste zu drücken.
Schritt 4. Nachdem Sie SDKMAN erfolgreich installiert haben, können Sie Groovy installieren. Sie können dies mit dem SDKMAN-Installationsbefehl tun.
Dies hängt tatsächlich von der JVM ab. Dies bedeutet, dass Sie auch sicherstellen müssen, dass Java installiert und verfügbar ist, damit Groovy ordnungsgemäß funktioniert.
Warum wird Groovy verwendet?
Die Syntax ist der von Java sehr ähnlich. Groovy ist für Java-Entwickler leicht zugänglich. Tatsächlich ist die meiste Java-Syntax eine zulässige Groovy-Syntax, da sie einfach die vorhandenen Java-Konzepte übernimmt und darauf aufbaut. Dies gibt Groovy eine sehr flüssige Lernkurve für Entwickler, die möglicherweise bereits mit der Java-Sprache vertraut sind. Eines der größten Probleme, wenn ein Team überlegt, in eine neue Sprache zu wechseln, ist, dass es die Investition in den massiven proprietären Code verlieren wird, den es im Laufe der Jahre aufgebaut hat.
Aufgrund der engen Integration von Groovy in die JVM können Sie jedoch problemlos Ihre vorhandenen Java-Bibliotheken von Groovy verwenden.
Schließlich erweitern Groovy-Objekte tatsächlich dasselbe java.lang.Object-Basisobjekt, sodass es sehr gut in das objektorientierte Java-Modul passt, das Ihr Team möglicherweise bereits kennt. Insgesamt wird sich Groovy für ein Java-Team sehr vertraut fühlen, insbesondere im Vergleich zu anderen alternativen Sprachen wie Scala oder Clojure.
Warum brauchen wir Groovy?
Groovy eignet sich sehr gut für die Anwendungsentwicklung, insbesondere für die Webentwicklung. Groovy-basierte Frameworks wie Grails sind hervorragende Alternativen zu Java-basierten Web-Frameworks wie Stripes oder Spring MVC, da Groovy aufgrund seiner dynamischen Natur sehr gut für die Arbeit mit Konzepten im Web geeignet ist.
Es ist gut geeignet, um DSLs auf Java- oder Groovy-Frameworks aufzubauen. Obwohl Sie diese DSLs auch in Java erstellen können, wie wir es bei Apache Camel gesehen haben, können Sie mit Groovys ausdrucksstarker Art und flexibler Syntax viel besser lesbare DSLs erstellen, als dies in Java jemals möglich war.
Mit der flexiblen Syntax von Groovy können Sie Tests erstellen, die sehr gut lesbar sind und die problemlos mit einem Geschäftsinteressenten geteilt werden können, um sicherzustellen, dass Ihre App die erwartete Funktionalität bietet.
Das beliebte Groovy-basierte Testframework Spock ist ein hervorragendes Beispiel für die Groovy-Syntax zur Erstellung dieser gut lesbaren Tests.
Die kompakte, skriptähnliche Syntax und die enge Integration in Java-APIs machen sie zu einer hervorragenden Wahl für das Schreiben kleiner Skripte in einer JVM-Umgebung.
Vor- und Nachteile von Groovy
Lassen Sie uns einige der bekannten Vor- und Nachteile von Groovy untersuchen.
Vorteile
- Dynamische Eingabe (ermöglicht es Ihnen, zumindest in erster Linie schneller zu programmieren).
- Currying / Teil-Software (ermöglicht es Ihnen, eine Replik der Funktion mit mehr als einem Argument zu erstellen).
- Tooling-Unterstützung, um nützliche APIs zu erhalten, die @DelegatesTo anwenden.
- Native Unterstützung für die Zuordnung von assoziativen Arrays / Schlüsselwerten (Sie können ein assoziatives Array-Literal generieren).
- Zeichenketteninterpolation (bessere Bildung zwischen Zeichenketten, die Werte anzeigen).
- Regex bekommt erstklassige Bewohner.
Nachteile
- Die Groovy-Plugins (Programmabschluss, Syntaxfärbung, ) - die es für Eclipse gibt - bleiben unglaublich fehlerhaft.
- Kein Basiscode-Format für Groovy: Dies kann derzeit ein tatsächlicher Nachteil für Groovy sein. Wenn Sie in einer Gruppe arbeiten, kann dies zu Kopfschmerzen führen: Wenn Sie das Programm anhand eines Formats lesen, kann die CVS-Auswertung schwierig sein, um nur einige Beispiele zu nennen.
- Sie sollten lieber neue Ideen lernen: Verschlüsse - die helfen, sobald Sie sie verstanden haben! Ohne Abschlüsse können Sie in Groovy keine inneren Klassen anwenden, bei denen es sich hauptsächlich um schriftliche Unit-Tests handelt.
Wie wird Ihnen diese Technologie dabei helfen, Ihre Karriere voranzutreiben?
Groovy Framework wird in den meisten multinationalen Unternehmen wie Netflix, Samsung, Smart Things, Mutual of Omaha, Target und vielem mehr eingesetzt.
Groovy hat seine eigenen besonderen Vorteile, wenn es um die Nutzung geht. So stoßen wir beispielsweise auf zahlreiche Projekte und Produkte, in die Groovy eingebettet ist, um deren Organisationsprotokolle oder einfach Geschäftslogik in einem überaus verständlichen Stil zu vermitteln Spezialisten haben die Möglichkeit, Protokolle selbst zu erstellen, ohne viel Unterstützung von Programmierern zu erhalten.
Fazit
Es scheint, als ob gute Erinnerungen nur Fußabdrücke hinterlassen, wenn Sie lange Zeit in Java oder zusätzlichen OOP-Sprachen codiert haben.
Es schafft Dinge viel einfacher und viel weniger wortreich. Neben weiteren Funktionen, die Skripterstellung und einfache Funktionen für domänenspezifische Sprachen bevorzugen, bringen Sie Groovy auf die neue Ebene und verleihen ihm das neue Erscheinungsbild, das älteren Sprachen fehlt.
Empfohlene Artikel
Dies war ein Leitfaden für What is Groovy ?. Hier haben wir das Konzept, die Bedürfnisse, das Verständnis, die Vorteile, die Nachteile und den Installationsprozess von Groovy besprochen. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren.
- Was ist JMS?
- Einführung in Tensorflow
- Ist Python eine Skriptsprache?
- Was ist eine Webanwendung?
- Regex-Funktionen in Python (Beispiel)