Che cos'è Groovy? - Necessità e usi - Processo di installazione - vantaggi

Sommario:

Anonim

Che cos'è Groovy?

Groovy è un linguaggio dinamico, in netto contrasto con il sistema di tipo statico che probabilmente conosci in Java. Le applicazioni Groovy si compilano completamente con il bytecode JVM (Java Virtual Machine), il che significa che il codice Groovy funzionerà felicemente all'interno dell'ambiente Java, portando anche concetti avanzati alla JVM, come la programmazione funzionale, la metaprogrammazione, nonché un eccellente supporto per l'elaborazione di JSON e File XML.

Infine, sebbene sia considerato un linguaggio alternativo, gode di ricchi supporti in tutto l'ecosistema Java, incluso il supporto IDE maturo.

Capire Groovy

  • Linguaggio orientato agli oggetti.
  • Ha funzionalità sia statiche che dinamiche.
  • Offre concetti di programmazione avanzata.
  • Considerato un linguaggio Java alternativo.

Esempi di linguaggi Java alternativi

  • Scala: che è un linguaggio tipicamente statico, orientato agli oggetti e funzionale,
  • Clojure: questo è un dialetto del linguaggio Lisp che è stato creato espressamente per funzionare sulla JVM.
  • Kotlin: questo è un linguaggio tipicamente statico che gira su JVM e che può essere compilato in bytecode JavaScript o JVM.

La programmazione Polyglot è un concetto nato negli ultimi anni per trarre davvero vantaggio da questa esplosione in linguaggi alternativi per diversi framework. Il concetto è semplice Potremmo prendere in considerazione linguaggi più stabili e prevedibili nella parte inferiore della finestra o, nel nostro caso, il framework. Per il mondo JVM, questo potrebbe includere linguaggi statici come Java o Scala. Mentre spostiamo la casella verso l'alto o nel codice dell'applicazione reale, potremmo pensare a linguaggi più dinamici e flessibili. Per il nostro caso potrebbe essere Groovy, Clojure o persino JRuby. Nella parte superiore della confezione, potremmo cercare di leggere DSL (Domain Specific Language) per costruire la logica aziendale chiave nella nostra applicazione sulla JVM, tra cui Apache Camel DSL o Gradle, lo strumento di creazione, ma potremmo anche costruire il nostro DSL aziendali specifici per catturare veramente le regole del nostro dominio aziendale.

Processo di installazione di Groovy

Passaggio 1. Prima installare lo strumento SDKMAN. Che è supportato su Linux o OS X. Tuttavia, se si lavora su un computer Windows. È ancora possibile seguire installando prima l'emulatore UNIX Cygwin. Che può essere trovato su www.Cygwin.com

Passaggio 2. Aprire il terminale e digitare il comando seguente e premere invio

Passaggio 3. Una volta completato lo script di esecuzione, verrà fornito lo script di inizializzazione di SDKMAN per garantire che tutto ciò che SDKMAN deve funzionare sia stato inizializzato nella nostra sessione corrente.

Passaggio 4. Infine, confermeremo che SDKMAN è stato installato correttamente chiedendo a SDKMAN la sua versione corrente per digitare il comando versione sdk e premere invio.

Passaggio 4. Dopo aver installato SDKMAN correttamente, è possibile procedere con l'installazione di Groovy. È possibile farlo con il comando di installazione SDKMAN.


In realtà dipende dalla JVM, il che significa che dovrai anche assicurarti di avere Java installato e disponibile affinché Groovy funzioni correttamente.

Perché viene usato Groovy?

È una sintassi molto simile come Java, Groovy è facilmente accessibile per gli sviluppatori Java. È un dato di fatto, la maggior parte della sintassi Java è in realtà una sintassi Groovy legale, poiché prende semplicemente i concetti Java esistenti e si basa su di essi. Ciò fornisce a Groovy una curva di apprendimento molto fluida per uno sviluppatore che potrebbe già avere familiarità con il linguaggio Java. Una delle maggiori preoccupazioni, quando un team considera la possibilità di espandersi in una nuova lingua, è che perderanno l'investimento nell'enorme codice proprietario che hanno sviluppato nel corso degli anni.

Tuttavia, data la stretta integrazione di Groovy con JVM, è possibile utilizzare facilmente le librerie Java esistenti da Groovy.

Infine, gli oggetti Groovy in realtà estendono lo stesso oggetto base java.lang.Object in modo che si adatti molto bene al modulo orientato agli oggetti Java che il tuo team potrebbe già conoscere. Nel complesso, Groovy si sentirà molto familiare a un team Java, soprattutto se confrontato con altre lingue alternative come Scala o Clojure.

Perché abbiamo bisogno di Groovy?

Groovy funziona molto bene nel livello di sviluppo delle applicazioni, in particolare lo sviluppo web. I framework basati su Groovy come Grails sono eccellenti alternative ai framework Web basati su Java come Stripes o Spring MVC, poiché la natura dinamica di Groovy lo rende molto adatto a lavorare con concetti sul web.

È adatto per la creazione di DSL su framework Java o Groovy. Anche se puoi anche creare questi DSL in Java come abbiamo visto con Apache Camel, la natura espressiva e la sintassi flessibile di Groovy ti consentono di creare DSL molto più leggibili di quanto mai fosse possibile nel linguaggio Java.

La sintassi flessibile di Groovy ti consente di creare test che sono molto leggibili e che possono essere facilmente condivisi con un stakeholder aziendale per garantire che la tua app fornisca la funzionalità prevista.

Il popolare framework di test basato su Groovy, Spock, è un ottimo esempio della sintassi di Groovy per creare questi test altamente leggibili.

È una sintassi leggera, simile a uno script e una stretta integrazione con le API Java lo rende una scelta eccellente per scrivere piccoli script in un ambiente JVM.

Vantaggi e svantaggi di Groovy

Esploriamo alcuni dei noti vantaggi e svantaggi di Groovy.

vantaggi

  • Digitazione dinamica (consente di programmare più velocemente, almeno principalmente).
  • Currying / software parziale (che consente di replicare la funzione con più di un set di argomenti).
  • Supporto degli strumenti per ottenere utili API applicando @DelegatesTo.
  • Supporto dell'associazione nativa di array associativo / valore-chiave (sei in grado di generare un array associativo letterale).
  • Interpolazione di stringhe (costruzione migliore tra stringhe che mostrano valori).
  • Regex sta diventando residenti di prima classe.

svantaggi

  • I plugin Groovy (conclusione del programma, colorazione della sintassi, ) - in giro per Eclipse - rimangono incredibilmente difettosi.
  • Nessun formato di codice di base per Groovy: al momento può essere un vero inconveniente per Groovy. Nel caso in cui lavori in gruppo, questo potrebbe essere un mal di testa: leggere il programma in base a un formato, valutare CVS può essere difficile, alcuni esempi da dire.
  • Dovresti imparare nuove idee preferite: chiusure - che trarranno beneficio una volta che le avrai comprese! Senza chiusure, non è possibile applicare classi interne in Groovy che sono essenzialmente test unitari scritti.

In che modo questa tecnologia ti aiuterà a far crescere la tua carriera?

Groovy Framework è ampiamente utilizzato nella maggior parte delle multinazionali come Netflix, Samsung attraverso Smart Things, Mutual of Omaha, Target e molto altro.

Groovy ha i suoi buoni posti speciali quando si tratta di utilizzo, ad esempio ci imbattiamo in molti progetti, nonché in prodotti che incorporano Groovy per trasmettere i loro protocolli organizzativi o semplicemente la logica di business in uno stile estremamente comprensibile, molti argomenti anche gli specialisti hanno la capacità di creare autonomamente i protocolli senza il supporto dei programmatori.

Conclusione

Sembra buoni ricordi con solo impronte, quando hai programmato in Java o altri linguaggi OOP per molto tempo.

Crea cose molto più semplici e molto meno dettagliate. Oltre a più funzioni che preferiscono lo scripting e semplicemente le funzioni relative al linguaggio specifico del dominio, spingi Groovy al nuovo livello e gli fornisce il nuovo aspetto che manca alle lingue meno recenti.

Articoli consigliati

Questa è stata una guida a What is Groovy ?. Qui abbiamo discusso il concetto, le esigenze, la comprensione, i vantaggi, gli svantaggi e il processo di installazione di Groovy. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più-

  1. Che cos'è JMS?
  2. Introduzione a Tensorflow
  3. Python è un linguaggio di scripting?
  4. Che cos'è l'applicazione Web?
  5. Funzioni Regex in Python (esempio)