Oracle Code : suite du résumé
mar, 10/07/2018 - 11:46
La journée Oracle Code, du 3 juillet dernier, a été l’occasion de voir les logiciels et plateformes Oracle en oeuvre et les dernières nouveautés et tendances. Parmi les sessions intéressantes, nous pouvions voir MySQL Document Store. MySQL gère le stockage orienté document avec un soupçon de SGBDR, de NoSQL et de JSON Document. JSON Document est un objet avec une structure de données. Cette structure est implicite dans le document. Il est compact et standardisé. Ce format est supporté par défaut dans MySQL (via ECMA-404). De nombreuses fonctions lui sont rattachées : recherches ou encore agrégations, avec la possibilité de faire des requêtes. MySQL 8 rajoute d’ailleurs quelques fonctions à la partie JSON.
La partie Document Store est un élément non négligeable dans la base de données. Il ne possède pas de schéma (schemaless), il possède une structure de données flexible et bien entendu, il est JSON « ready ». Et on peut lui appliquer le principe CRUD : création, lecture, mise à jour et suppression. MySQL veut concilier, comme d’autres bases, le monde SQL et NoSQL. Pour ce faire, on dispose, sur la partie Document Store de plusieurs composants pour les développeurs : MySQL X Plugin, X Protocole, cluster InnoDB, de nouvelles API, d’un shell MySQL et des connecteurs. Si on résume, MySQL supporte donc le modèle hybride relationnel et NoSQL avec différents moteurs et de modèles de stockages.
Comme vous le savez, Oracle possède son offre de Cloud public : Oracle Cloud. Une des sessions permettait de voir comment utiliser Terraform, et donc l’infrastructure as code dans ce contexte et avec l’idée de DevOps (il faut bien le caser quelque part -:)). Terraform est un outil d’infra as code avec des versions open source et entreprises. La session a permis d’installer l’outil dans le cloud infrastructure d’Oracle puis de voir comment on crée son code d’infrastructures. Mieux vaut regarder les sessions en replay.
Autre session qui nous a bien intéressé : the path to pair programment in Che with Atom Teletype. Le speaker rappelle quelques fondamentaux sur Eclipse Che : il s’agit d’une version de l’IDE avec une interface web, des espaces de travail dans des conteneurs eux-mêmes pouvant s’exécuter avec un langage serveur tel que Eclipse JDT. L’outil supporte LSP, Language Server Protocol que l’on retrouve aussi dans Visual Studio. La partie co-édition du code a été la partie centrale de la session.
L’idée est de faire de l’édition de projets / codes à la Google Docs. Il s’agit de faire collaborer les développeurs pour faire du mentorat de code, des revues de code ou de l’édition commune. Atome Teletype est une extension aux éditeurs Atom pour faire du pair programmation et de l’édition concurrente en direct. On dispose de plusieurs librairies : teletype-client, teletype-server et teletype-crdt avec une partie communication basée sur CRDT (conflit-free replicated data type) et WebRTC. Typiquement, avec Teletype, on dispose d’un portail host et x invités. Il s’occupe de partager la session de programmation et partage les fichiers du portail host. Si vous ne connaissez, jetez-y un coup d’oeil.
Java a été un thème central de la journée. Parmi les sessions, on pouvait voir « boîte à outils mémoire de la JVM ». Ah la fameuse gestion mémoire, on pourrait en écrire des livres dessus. Il existe des mécanismes pour mesurer les performances, définir la taille mémoire. Par exemple, vous pouvez activer les logs du ramasse-miettes. Combien de développeurs Java y pensent ? En JRE 8, on peut utiliser le Parallèle GC. jVisualVM est un autre outil pour visualiser la mémoire de la JVM. Vous pouvez regarder du côté de GCViewer, les logs (pensez aux logs, je l’ai peut être dit plus haut). Pour éviter un out of memory error (on l’adore toutes et tous ce truc), augmentez la taille de la heap, redémarrer de temps en temps la JVM (ben si, pour la purger et la remettre en état). En tout cas, une session que nous vous recommandons !
Terminons par la session : accelerated Oracle JET - Visual JavaScript / HTML5 Cloud Development. Le développement web c’est un peu bord… la jungle : backbone, jQuery, metteur, Angular, React, etc. Oracle JET est un toolkit open source orienté entreprise pour vous aider à développer en JS, HTML5 et REST. Il supporte de nombreuses librairies open source comme Knockout.js, jQuery, Hammer, RequireJS. Et Oracle a introduit ses propres librairies : composants UI, modèles, internationalisation, responsive, etc. L’outil peut donc servir à développer des applications mobiles. L’idée de base est de proposer un développement visuel : approche low code, utiliser les technologies les plus récentes, focus sur les applications métiers. Bien entendu, on peut manipuler directement le code, ajouter la logique que l’on souhaite, étendre la plateforme (via des composants UI ou des librairies JS).
Découvrez l’ensemble des sessions d’Oracle Code : https://developer.oracle.com/code/paris-june-2018
François Tonic