Les objets compagnons de Kotlin

S'inspirant d'autres langages de programmation, Kotlin a emprunté à Scala la notion d'objets companions ; dans le langage Kotlin, un objet compagnon se déclare dans une classe Kotlin comme un objet marqué du mot-clé companion.

La déclaration d'un objet compagnon est un cas particulier de déclaration d'un objet ; celle-ci utilise le mot-clé object, et permet de définir en fait un singleton, selon le modèle de conception de même nom.
Kotlin prend donc en charge cette notion au niveau du langage, ce qui évite de l'implémenter soi-même comme on devrait le faire avec Java par exemple.

En lire plus


Implémenter automatiquement un service de données avec GORM

Avec sa nouvelle version 6.1, la librairie d'accès aux données GORM pour Hibernate, utilisée par le framework web Grails (mais pouvant également s'en affranchir), propose l'implémentation automatique de services de données (data services).
En quoi cela diffère t-il des opérations CRUD qui sont injectés dans les objets métiers pris en charge par GORM, et des différentes manières d'effectuer des requêtes à partir des types de ces objets ?

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