Qu'est-ce que Groovy?
Groovy est un langage dynamique, qui contraste fortement avec le système de type statique que vous connaissez probablement en Java. Les applications Groovy se compilent entièrement en bytecode JVM (Java Virtual Machine), ce qui signifie que le code Groovy fonctionnera avec plaisir dans l'environnement Java, il apporte également des concepts avancés à la JVM, tels que la programmation fonctionnelle, la métaprogrammation, ainsi qu'un excellent support pour le traitement JSON et Fichiers XML.
Enfin, bien qu'il soit considéré comme un langage alternatif, il bénéficie de supports riches à travers l'écosystème Java, y compris un support IDE mature.
Comprendre Groovy
- Langage orienté objet.
- Possède des capacités statiques et dynamiques.
- Offre des concepts de programmation avancés.
- Considéré comme un langage Java alternatif.
Exemples de langages Java alternatifs
- Scala: qui est un langage de type statique, orienté objet et fonctionnel,
- Clojure: Il s'agit d'un dialecte du langage Lisp qui a été créé expressément pour s'exécuter sur la JVM.
- Kotlin: il s'agit d'un langage de type statique qui s'exécute sur la JVM et qui peut être compilé en JavaScript ou en bytecode JVM.
La programmation polyglotte est un concept qui a vu le jour ces dernières années pour vraiment profiter de cette explosion de langages alternatifs pour différents frameworks. Le concept est simple. Nous pourrions envisager des langages plus stables et prévisibles au bas de la boîte, ou dans notre cas, le cadre. Pour le monde JVM, cela peut inclure des langages statiques tels que Java ou Scala. Au fur et à mesure que nous montons dans la boîte ou dans le code d'application réel, nous pouvons penser à des langages plus dynamiques et flexibles. Pour notre cas qui peut être Groovy, Clojure ou même JRuby. En haut de la boîte, nous pourrions envisager des DSL (Langage Spécifique au Domaine) légers pour construire la logique métier clé dans notre application sur la JVM, notamment l'Apache Camel DSL ou Gradle, l'outil de construction, mais nous pourrions également créer notre propre DSL spécifiques à l'entreprise pour vraiment capturer les règles de notre domaine d'activité.
Processus d'installation de Groovy
Étape 1. Installez d' abord l'outil SDKMAN. Qui est pris en charge sous Linux ou OS X. Cependant, si vous travaillez sur une machine Windows. Vous pouvez toujours suivre en installant d'abord l'émulateur Cygwin UNIX. Qui peut être trouvé sur www.Cygwin.com
Étape 2. Ouvrez le terminal et tapez la commande ci-dessous et appuyez sur Entrée
Étape 3. Une fois le script d'exécution terminé, nous chercherons le script d'init SDKMAN pour nous assurer que tout ce dont SDKMAN a besoin pour fonctionner a été initialisé dans notre session en cours.
Étape 4. Enfin, nous validerons que SDKMAN a été installé avec succès en demandant à SDKMAN sa version actuelle de taper la commande sdk version et d'appuyer sur Entrée.
Étape 4. Une fois que vous avez installé SDKMAN avec succès, vous pouvez ensuite procéder à l'installation de Groovy. Vous pouvez le faire avec la commande d'installation SDKMAN.
Cela dépend en fait de la JVM, ce qui signifie que vous devrez également vous assurer que Java est installé et disponible pour que Groovy fonctionne correctement.
Pourquoi Groovy est-il utilisé?
C'est une syntaxe très similaire à Java, Groovy est facilement accessible pour les développeurs Java. En fait, la plupart de la syntaxe Java est en fait une syntaxe Groovy légale, car elle prend simplement les concepts Java existants et s'appuie sur eux. Cela donne à Groovy une courbe d'apprentissage très fluide pour un développeur qui peut déjà être familier avec le langage Java. L'une des plus grandes préoccupations, lorsqu'une équipe envisage de se lancer dans un nouveau langage, est qu'elle perdra l'investissement dans le code propriétaire massif qu'elle a construit au fil des ans.
Cependant, étant donné l'intégration étroite de Groovy avec la JVM, vous pouvez facilement utiliser vos bibliothèques Java existantes de Groovy.
Enfin, les objets Groovy étendent en fait le même objet de base java.lang.Object afin qu'il s'intègre très bien dans le module orienté objet Java que votre équipe connaît peut-être déjà. Dans l'ensemble, Groovy se sentira très familier à une équipe Java, en particulier par rapport à d'autres langages alternatifs tels que Scala ou Clojure.
Pourquoi avons-nous besoin de Groovy?
Groovy fonctionne très bien dans la couche de développement d'applications, en particulier le développement Web. Les frameworks basés sur Groovy tels que Grails sont d'excellentes alternatives aux frameworks Web basés sur Java tels que Stripes ou Spring MVC, car la nature dynamique de Groovy le rend très bien adapté pour travailler avec des concepts sur le Web.
Il est bien adapté à la création de DSL sur des frameworks Java ou Groovy. Bien que vous puissiez également créer ces DSL en Java comme nous l'avons vu avec Apache Camel, la nature expressive et la syntaxe flexible de Groovy vous permettent de créer des DSL beaucoup plus lisibles que jamais dans le langage Java.
La syntaxe flexible de Groovy vous permet de créer des tests qui sont très lisibles et qui pourraient être facilement partagés avec un intervenant commercial pour garantir que votre application offre les fonctionnalités attendues.
Le cadre de test populaire basé sur Groovy, Spock, est un excellent exemple de la syntaxe de Groovy pour créer ces tests hautement lisibles.
Il s'agit d'une syntaxe légère de type script et d'une intégration étroite avec les API Java en fait un excellent choix pour l'écriture de petits scripts dans un environnement JVM.
Avantages et inconvénients de Groovy
Explorons certains des avantages et des inconvénients bien connus de Groovy.
Les avantages
- Saisie dynamique (vous permet de programmer plus rapidement, au moins principalement).
- Logiciel de curry / partiel (vous permettant une réplique de la fonction avec plus d'un ensemble d'arguments).
- Prise en charge des outils pour obtenir des API utiles appliquant @DelegatesTo.
- Prise en charge du mappage de tableau associatif / valeur clé natif (vous pouvez générer un littéral de tableau associatif).
- Interpolation de chaînes (meilleure construction parmi les chaînes affichant des valeurs).
- Regex reçoit des résidents de première classe.
Désavantages
- Les plugins Groovy (conclusion du programme, coloration de la syntaxe) - autour d'Eclipse - restent incroyablement bogués.
- Pas de format de code de base pour Groovy: cela peut être un véritable inconvénient pour Groovy actuellement. Si vous travaillez en groupe, cela peut être un casse-tête: lire le programme sur la base d'un format, l'évaluation CVS peut être difficile, quelques exemples à dire.
- Vous devriez apprendre de nouvelles idées préférez: les fermetures - qui bénéficieront une fois que vous les comprendrez! Sans fermetures, vous ne pouvez pas appliquer des classes internes dans Groovy qui sont principalement essentiellement des tests unitaires écrits.
Comment cette technologie vous aidera-t-elle à développer votre carrière?
Groovy Framework est largement utilisé dans la plupart des multinationales comme Netflix, Samsung via Smart Things, Mutual of Omaha, Target et bien plus encore.
Groovy a ses propres bons endroits spéciaux en matière d'utilisation, par exemple, nous rencontrons de nombreux projets ainsi que des produits intégrant Groovy pour faire passer leurs protocoles d'organisation ou simplement la logique métier dans un style extrêmement compréhensible, beaucoup de sujets également les spécialistes ont la capacité de créer des protocoles eux-mêmes sans beaucoup de soutien des programmeurs.
Conclusion
Cela semble être de bons souvenirs avec ne laisser que des empreintes lorsque vous codez en Java ou dans des langages OOP supplémentaires depuis longtemps.
Cela crée des choses beaucoup plus simples et beaucoup moins verbeuses. De plus, de plus en plus de fonctionnalités préfèrent les scripts et simplement les fonctionnalités du langage spécifique au domaine, pousser Groovy au nouveau niveau et lui donner le nouveau look qui fait défaut pour les langues plus anciennes.
Articles recommandés
Cela a été un guide pour Qu'est-ce que Groovy?. Ici, nous avons discuté du concept, des besoins, de la compréhension, des avantages, des inconvénients et du processus d'installation de Groovy. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus-
- Qu'est-ce que JMS?
- Introduction à Tensorflow
- Python est-il un langage de script?
- Qu'est-ce que l'application Web?
- Fonctions Regex en Python (exemple)