[JAVA] Je suis allé au JJUG CCC 2019 Spring

introduction

Je suis allé à un événement appelé JJUG CCC 2019 Spring le samedi 18 mai 2019. Il s'agit d'un événement organisé deux fois par an par un groupe appelé JJUG (Japan Java User Group), et il y a JJUG CCC yyyy Spring et JJUG CCC yyyy Fall. Cette fois, c'est le printemps 2019, donc ça s'appelle JJUG CCC 2019 Spring (Détails de l'événement ici). J'ai participé à chaque fois depuis l'automne 2017 il y a un an et demi, et c'est ma 4e participation. Je pense que le matériel de présentation sera finalement agrégé dans GitHub, mais maintenant (2019/5) dans la session à laquelle j'ai participé. / 18) Je vais résumer dans cet article le lien du matériel que je connais, ce que j'ai écrit, et quelques extraits de tweets Twitter. Enfin, je publierai tous les titres de cet événement, des liens vers des présentateurs et du matériel, et des liens vers Twitter.

Résumé des sessions auxquelles j'ai participé

Réintroduction de HTTP (S) à l'ère de Java 11 (# ccc_g1)

Où sont les supports de présentation?

Valhalla Update JJUG CCC Spring 2019 from David Buck

Ce que tu as écrit

Projet Valhalla: Un projet visant à réaliser des types de valeur.

image.png Extrait de Matériel de présentation

Types de valeur: une combinaison d'objets et de types primitifs. --Spécification générique --VarHandles (publié dans JDK 9) --Nestmates (publié dans JDK 11)

Nestmates ・ Nested: Classe intérieure image.png

image.png Extrait de Matériel de présentation

image.png Extrait de Matériel de présentation

-Écrire un programme qui appelle la méthode privée de la classe Outer à partir de la classe Inner et utiliser la commande javap. Lorsque vous inversez l'assemblage avec, une méthode (Méthode Bridge (*)) que vous ne reconnaissez pas est créée comme XXX $ YYY. ⇒ javac crée secrètement BridgeMethod pour appeler la méthode privée de la classe externe à partir de la classe interne. ・ Faiblesses des méthodes de bridge --Le binaire et la source ne correspondent pas

ValueTypes -Value Types Prototype: Minimal Value Types Project (MVT) ・ Classe de valeur dérivée --Référence conventionnelle: type L --Référence sans pointeur: type Q

Catch up Java 12 and Java 13(#ccc_g3)

Où sont les supports de présentation?

Catch up Java 12 and Java 13 from Yuji Kubota

Ce que tu as écrit

Présentation des nouvelles fonctionnalités introduites dans Java 12 et des fonctionnalités prévues (indécises) pour être introduites dans Java 13. Puisqu'il y en a beaucoup, il est plus rapide de regarder les matériaux. .. ..

JEP capturés dans Java 12

JEP 189: Shenandoah: un ramasse-miettes à faible temps de pause (expérimental)   - STW:Stop The World --Il existe désormais 7 types de GC (G1GC, ZGC, GC série, GC parallèle ...) ――Expérimental maintenant. La version officielle n'est pas encore disponible. --Shenandoah GC est compatible avec le G1GC

JEP 230: Microbenchmark Suite   - JMH:Java Microbenchmark Harness ――Je ne suis pas très content pour les utilisateurs

JEP 325: Switch Expressions (Aperçu)

JEP 340: un port AArch64, pas deux

JEP 344: Collections mixtes abandonnées pour G1 --Une fonction qui aide les personnes qui ont des difficultés à utiliser G1GC.

JEP 346: retour rapide de la mémoire validée inutilisée depuis G1 --Java était un mécanisme qui, une fois la mémoire saisie, n'est pas renvoyée au système d'exploitation. ⇒ Avec le support de JEP 346, il est maintenant retourné. Il est plus facile de rendre le processus résident résident.

API fournie avec Java 12

bit notable APIs

image.png Extrait de Matériel de présentation

・ InputStream # skipNBytes --Que dois-je retourner -1 ou Exception en cas d'erreur?

・ Chaîne # indent --Ajouter un retrait pour le nombre de minutes spécifié

・ Fichiers # discordance

notable APIs

・ Transformation de chaîne #

・ Collectionneurs #teeing image.png Extrait de Matériel de présentation

-CompletableFuture # exceptionnellement {Compose} {Async}

Other enhancements ・ JDK-8209923: Unicode 11

Éléments à ajouter dans Java 13

・ Projet Amber ・ Projet Valhalla ・ Projet Panama ・ Projet Loom ・ Projet Metropolis

JEP: 35 Draft, 5 Submitted, 27 Candidate ・ JEP 350: Archives Dynamic CDS --Il est archivé sans essai. ・ JEP 351: ZGC: mémoire non utilisée non validée

image.png Extrait de Matériel de présentation

JEP 305: Pattern matching for instanceof image.png Extrait de Matériel de présentation

JEP 355: Blocs de texteJEP 349: Streaming d'événements JFR

Défi pour tester l'automatisation sur le site SI ~ Environnement CI / CD avec configuration de conteneur complète ~ (# ccc_m4)

Où sont les supports de présentation?