{"id":3579,"date":"2025-08-26T11:05:58","date_gmt":"2025-08-26T10:05:58","guid":{"rendered":"https:\/\/www.alpesjug.fr\/?p=3579"},"modified":"2025-12-09T18:57:06","modified_gmt":"2025-12-09T17:57:06","slug":"springboot-2025-nullsafety-et-optimisations","status":"publish","type":"post","link":"https:\/\/www.alpesjug.fr\/?p=3579","title":{"rendered":"SpringBoot 2025 : NullSafety et Optimisations le Jeudi 25\/09\/2025"},"content":{"rendered":"\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"683\" height=\"1024\" data-id=\"3580\" src=\"https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2025\/08\/Copilot_20250826_113035-683x1024.png\" alt=\"\" class=\"wp-image-3580\" srcset=\"https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2025\/08\/Copilot_20250826_113035-683x1024.png 683w, https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2025\/08\/Copilot_20250826_113035-200x300.png 200w, https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2025\/08\/Copilot_20250826_113035-768x1152.png 768w, https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2025\/08\/Copilot_20250826_113035.png 1024w\" sizes=\"auto, (max-width: 683px) 100vw, 683px\" \/><\/figure>\n<\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">La conf\u00e9rence<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Null Safety en Java avec JSpecify et NullAway<\/h3>\n\n\n\n<p>JSpecify est un ensemble d\u2019annotations, de sp\u00e9cifications et de documentations permettant une v\u00e9rification de la \u00ab\u00a0null safety\u00a0\u00bb des applications Java dans l&rsquo;IDE lors du d\u00e9veloppement et lors de la compilation gr\u00e2ce \u00e0 des outils comme NullAway.<\/p>\n\n\n\n<p>S\u00e9bastien, qui participe depuis plusieurs ann\u00e9es au groupe de travail JSpecify r\u00e9unissant plusieurs entreprises investies dans l\u2019\u00e9cosyst\u00e8me JVM comme Google, JetBrains, Oracle ou Broadcom, pr\u00e9sentera comment JSpecify peut permettre aux d\u00e9veloppeurs Java de d\u00e9tecter avant le d\u00e9ploiement les potentielles NullPointerException de fa\u00e7on \u00e0 rendre leurs applications plus fiables en transformant \u201cthe billion dollar mistake\u201d en une fonctionnalit\u00e9 utile permettant de d&rsquo;exprimer l&rsquo;absence potentielle de valeur.<\/p>\n\n\n\n<p>Il pr\u00e9sentera \u00e9galement comment les futures Spring Framework 7 et Spring Boot 4 utiliseront JSpecify c\u00f4t\u00e9 framework et application afin de permettre la cr\u00e9ation d\u2019applications Spring Boot plus robustes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Optimisez vos applications Spring Boot avec CDS et Project Leyden<\/h3>\n\n\n\n<p>Spring Boot 3 a introduit des optimisations visant \u00e0 am\u00e9liorer l\u2019efficacit\u00e9 et les performances des applications Spring Boot d\u00e9ploy\u00e9es en tant que conteneurs en production.<\/p>\n\n\n\n<p>Dans cette pr\u00e9sentation, S\u00e9bastien montrera comment tirer partie de technologies telles que Virtual Threads, Spring AOT, CDS\/AOT cache et Buildpacks avec Spring Boot 3 et Java 24\/25. S\u00e9bastien partagera des benchmarks (temps de d\u00e9marrage, consommation m\u00e9moire, requ\u00eates par seconde et latence), parlera des crit\u00e8res les plus importants pour choisir entre GraalVM, Project CRaC et CDS\/AOT cache. Il donnera \u00e9galement un aper\u00e7u des am\u00e9liorations \u00e0 venir dans Project Leyden afin d\u2019avoir des performances maximales d\u00e8s le d\u00e9marrage de la JVM.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Le conf\u00e9rencier: S\u00e9bastien Deleuze<\/h2>\n\n\n\n<p><strong>S\u00e9bastien<\/strong> travaille chez <strong>Broadcom<\/strong> en tant que core committer Spring Framework. Il a introduit le support de Kotlin dans les projets Spring, et travaille \u00e0 int\u00e9grer diff\u00e9rentes technologies avec le but d&rsquo;optimiser l&rsquo;efficacit\u00e9 des applications Spring en production (GraalVM, Project CRaC, CDS, Project Leyden). Il est \u00e9galement fan de WebAssembly depuis 2016 et un ancien membre de l\u2019\u00e9quipe qui organise la conf\u00e9rence MiXiT.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Inscriptions<\/h2>\n\n\n\n<p>Les inscriptions se font sur Meetup <a href=\"https:\/\/www.meetup.com\/alpesjug\/events\/310709483\/\">https:\/\/www.meetup.com\/alpesjug\/events\/310709483\/<\/a><\/p>\n\n\n\n<p>Attention, nous nous r\u00e9unirons chez&nbsp;<a href=\"https:\/\/www.google.com\/maps\/place\/Salesforce\/@45.2030902,5.7696478,15z\/data=!4m5!3m4!1s0x0:0x49d5ff5337d1785!8m2!3d45.2030797!4d5.7694228\" target=\"_blank\" rel=\"noreferrer noopener\">SalesForce, 29 Bd des Alpes, 38240 Meylan<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>La conf\u00e9rence anim\u00e9e par S\u00e9bastien Deleuze explore deux axes majeurs : g\u00e9r\u00e9r les Null en Java avec JSpecify et NullAway, et l\u2019optimisation des performances des applications Spring Boot. Elle montre comment JSpecify permet de pr\u00e9venir les NullPointerException d\u00e8s le d\u00e9veloppement, et comment Spring Framework 7 et Spring Boot 4 int\u00e9greront cette approche. S\u00e9bastien pr\u00e9sente aussi les gains apport\u00e9s par Spring Boot 3, CDS, Project Leyden, et Virtual Threads, avec des benchmarks \u00e0 l\u2019appui. En tant que core committer chez Broadcom, il partage son expertise pour rendre les applications Java plus fiables et performantes.<\/p>\n","protected":false},"author":1,"featured_media":3580,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14],"tags":[368,53,11,494],"class_list":["post-3579","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-annonce","tag-java","tag-opensource","tag-soiree","tag-springboot"],"_links":{"self":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/3579","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3579"}],"version-history":[{"count":3,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/3579\/revisions"}],"predecessor-version":[{"id":3585,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/3579\/revisions\/3585"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/media\/3580"}],"wp:attachment":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3579"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3579"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3579"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}