• Skip to main content
  • Skip to header right navigation
  • Skip to after header navigation
  • Skip to site footer
  • Facebook
  • Twitter
  • Instagram
Lesjeudis

Blog Les Jeudis

Actualité Informatique et Digital

  • Tous les annonces
  • Employeurs
  • Développement
  • Réseaux et Systèmes
  • Digital
  • Marché de l’emploi
  • Conseils
  • Evénements
  • Formation

Java 9 : get ready !

18/09/2017 par Team LesJeudis

Trois ans après la sortie de Java 8, une nouvelle version est annoncée pour fin septembre 2017, après plusieurs dates de release repoussées notamment à cause du projet Jigsaw. Les évolutions ? Un environnement modulaire beaucoup plus performant ainsi qu’une collection de nouvelles caractéristiques attrayantes.

La Java Platform Module System (JPMS) est la plus grande nouveauté de Java 9. Configuration fiable et encapsulation forte sont ses deux principales promesses. Reposant entièrement sur le projet Jigsaw, le nouveau JDK est maintenant entièrement modulaire. Dans Java 9, un module se définira donc en trois points : module name (nom) + exports (ce qu’il exporte)  + requires (ce dont il a besoin pour fonctionner).

Deux nouvelles interfaces 

La première assure le support de HTTP 2.0 et des web sockets (HHTP 2 Client API) et la seconde permet une meilleure intégration des processus non-Java (Process API Updates).

Les nouvelles fonctionnalités

JEP 201 : Code source modularisé 
Ce JEP est la première étape du projet Jigsaw. Il vise à concevoir et mettre en œuvre un système de module standard pour la plate-forme Java SE et à appliquer ce système à la plate-forme elle-même et au JDK. Ses principaux objectifs sont de rendre les implémentations de la plate-forme plus facilement évolutives jusqu’aux petits périphériques, d’améliorer la sécurité et la maintenabilité, d’améliorer les performances des applications et de fournir aux développeurs de meilleurs outils de programmation. 

JEP 102 : Upgrade de l’API processus 
Cette API est améliorée afin de mieux contrôler et gérer les processus du système d’exploitation en question. Cette amélioration permet l’accès aux informations sur les processus telles que l’heure de début du processus, sa durée d’utilisation ou son ID.

JEP 110 : HTTP 2
Fini la vieille library HttpURLConnection et bienvenue à l’API http 2 Client ! Elle peut être utilisée dorénavant en asynchrone, tout comme une panoplie de fonctionnalités.

JEP 143 : Upgrade Contended Locking
Elle va permettre d’accroître les performances et limiter les conflits entre les threads : réorganisation des champs et alignement des lignes de cache optimisés, accélération PlatformEvent ::unpark(), opérations d’entrée/sortie plus rapides, méthodes notify et notifyAll boostées.

JEP 197 : Segmentation du cache code
Grâce à cette nouveauté, au lieu d’avoir un seul segment de code, le cache du code est segmenté en plusieurs codes distincts : cela permet de séparer le code avec des propriétés différentes. Avantages : temps de balayage plus court (le code non-méthode sera ignoré), temps d’exécution de certaines compilations réduit, de même pour le temps de fragmentation du code hautement optimisé, et enfin une réduction significative du nombre d’erreurs iTLB et iCache.

JEP 222 : the Java Shell
Cette fonctionnalité est un petit Shell qui permet d’évaluer des instructions Java. Il propose également une API qui permet d’évaluer des instructions dans du code Java.

JEP 236 : l’API d’analyse Nashorn
Nashorn est un moteur JavaScript développé en Java par Oracle. Il met en œuvre un runtime JavaScript léger et performant avec une JVM native.
Cette API permettra l’analyse de code ECMAScript par des programmes tels que les IDE (comme NetBeans) et les Framework côté serveur, sans que ces programmes ne dépendent des classes internes de Nashorn.
Le nouveau fichier Javadoc contient la documentation des interfaces et des classes du nouveau package jdk.nashorn.api.tree. Les principales classes de cette API sont ParserFactory et ParserFactoryImpl.

JEP 251 : l’API images multi-résolution
L’objectif est de définir une API d’images multi-résolution afin que les images avec des variantes de résolution puissent être facilement manipulées et affichées.

JEP 267 : Unicode 8.0
Les API de plateforme vont être mises à niveau car il va falloir prendre en charge la version d’Unicode 8.0. Les caractères et les chaînes de caractère seront désormais dans le package java.lang. NumericShaper sera dans le package java.awt.font et Bidi, Breklterator et Normalizer seront dans le package java.text.

JEP 268 : catalogues XML
Cette API prend en charge la norme OASIS XML Catalogues v1.1. Les catalogues XML sont utiles pour résoudre des références externes dans XML/XSD/XSL, supprimant ainsi la nécessité de récupérer des ressources externes de manière répétitive.

JEP 272 : le bureau
Cette nouvelle API permet d’accéder aux fonctionnalités du bureau spécifiques au système d’exploitation concerné telles que la connexion/déconnexion et le verrouillage d’écran et les interactions avec la barre de tâches. 

JEP 290 : le filtrage
Elle permettra le filtrage des flux entrants de données de sérialisation d’objet, afin d’améliorer à la fois la sécurité et la robustesse. Pour chaque nouvel objet du flux, le filtre est appelé, avec la classe de l’objet, avant que l’objet ne soit instancié et désérialisé. Pour chaque tableau, qu’il s’agisse d’un tableau de primitives, d’un tableau de chaînes ou d’un tableau d’objets, le filtre est appelé avec la classe array et la longueur du tableau. Pour chaque référence à un objet déjà lu dans le flux, le filtre est appelé pour qu’il puisse vérifier la profondeur, le nombre de références et la longueur du flux.

JEP 289 : Applet obsolète 
A savoir : l’API Applet n’est plus utile car les navigateurs web ne prennent plus en charge les plug-in Java. Cependant elle n’est pas supprimée mais seulement obsolète. L’annotation @Deprecated est ajoutée aux classes concernées.

Java 9 semble tenir ses promesses après 3 ans d’attente. Les nouvelles fonctionnalités annoncées viennent confirmer l’évolution croissante de la performance pour Java 9. Chez LesJeudis, nous attendons cette nouvelle version avec impatience. Et vous ?

A lire aussi :

> Les développeurs Ruby, Python et Java sont les mieux payés en France
> Top 8 des langages les plus rémunérateurs pour les développeurs juniors
> Toutes les offres d’emploi Java en France

 

Categorie: Développement, Evénements

About Team LesJeudis

Lesjeudis est fier de compter sur une équipe multidisciplinaire de professionnels techniques et du marketing. Ensemble, nous couvrons de vastes domaines informatiques et de développement, ainsi que du marketing et du numérique. De Rails à .net, de la conception graphique à l’interface utilisateur et au référencement, vous bénéficierez de nos connaissances et de notre expertise dans chaque article que nous écrivons dans ce blog.

Previous Post:FrenchTech Lille’s Digital : 9000 créations d’entreprises par an
Next Post:iA Groupe financier, la compagnie canadienne qui vous aidera à trouver votre second souffle!

Reader Interactions

Leave a Reply

Your email address will not be published. Required fields are marked *

Sidebar

Déposez CV

Rechercher

Nos meilleurs articles

Bannière Développement de jeu vidéo

Développement de jeux vidéo : Ce qu’il faut savoir

Le processus du RPA (Robotic Process Automation)

La Robotic Process automation, aux frontières du machine learning et de l’IA

Modeles React JS

10 modèles React gratuits que vous pouvez utiliser pour vos projets

smartphone avec l'appli de CB et les textes: iOS, Android et windows

Développer une application mobile pas à pas

Un programmeur en t-shirt 'code master' fait semblant d'utiliser des langages informatiques sur un panneau interactif

Comment se former au métier de développeur informatique ?

Les erreurs courantes en C# à éviter pour exceller en tant que développeur

Tout savoir sur Angular 18

Les salons informatiques Européens à ne pas manquer en 2024

Forum en ligne TalentsHandicap Spécial IT du 7 au 27 juin 2024

Scrum

Repenser Scrum pour libérer son potentiel

Prompt Engineering

Le Prompt Engineering : L’art de converser avec l’intelligence artificielle

Rust

Rust – Le nouveau pilier de la Data Science

Categories

  • Blockchain (14)
  • Conseils (58)
  • Design (38)
  • Développement (166)
  • Digital (298)
  • Divers (7)
  • E-commerce (13)
  • Evénements (24)
  • Fiche métier (2)
  • Formation (16)
  • Interviews (35)
  • Marché de l'emploi (69)
  • Marketing (127)
  • Méthodologie (10)
  • Réseaux et Systèmes (33)
  • Web (149)

Nos Categories

Blockchain
Conseils
Méthodologies
Design
Développement 
Digital
E-commerce
Evénements
Formation
Interviews
Marché de l’emploi
Marketing
Réseaux et Systèmes
Web

Candidats

Emploi par région
Emploi par métier
Fiche métiers informatiques
Nous contacter
Vous êtes recruteur ?

A Propos

Conditions générales d’utilisation
Politique de confidentialité
Droit d’accès aux données personnelles (cookies)

Social

Facebook
Twitter
Linkedin

Les Jeudis

© Copyright 2023 LesJeudis. Tous droits réservés.