Exemples de scripts Groovy pour produire et consommer des messages avec Apache Kafka

Si Apache Kafka permet d'exécuter des producteurs et des consommateurs de messages vers ou depuis des topics en mode console, il peut aussi être utile et pratique d'écrire ses propres producteurs et consommateurs, sous la forme de scripts Groovy.
Les exemples de scripts proposés ici tirent parti du système Grape de Groovy, pour télécharger automatiquement, si besoin, les librairies dépendantes ; on a ainsi des scripts autonomes s'exécutant grâce à la commande groovy.

En lire plus


Lambdas et closures

Dans la page web Lambda, Martin Fowler décrit les lambdas comme un concept informatique appelés également Closures, Fonctions Anonymes ou Blocs.
Un lambda est un bloc de code pouvant être passé en tant que valeur comme paramètre dans un appel de fonction ; cette valeur peut aussi être exécutée à la demande.
On parle de closure si un lambda fait référence à des variables en dehors du contexte dans lequel il est créé.

En lire plus


Fermer automatiquement une ressource avec la fonction use de Kotlin

La fonction use du langage Kotlin est l'équivalent de la construction try-with-resources du langage Java (apparue en version 7), car elle permet de fermer automatiquement un objet dont le type supporte l'interface Closeable.
L'intérêt d'une telle fonction est d'assurer que la ressource que l'on utilise sera bien refermée automatiquement (et que les ressources du système associées soient libérées), par un appel à la méthode Closeable.close().

En lire plus




Piloter votre Bot (Wit.ai) en langage Groovy

odelia-groovy-wit est une librairie Groovy dont je suis l'auteur et qui permet de s'interfacer avec l'API du moteur de Bots de Wit.ai.
Le but est de pouvoir développer des applications conversationnelles en s'appuyant sur le moteur de Wit.ai : celui-ci analyse les phrases qu'on lui soumet et indique quelle devrait être la prochaine action à exécuter, et c'est donc votre application qui pilote l'avancement de la conversation avec votre bot.

En lire plus