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

Blog Les Jeudis

Actualité Informatique et Digital

  • Annonces
    • Par région
    • Par métier
    • Par technologies
    • Par entreprise
    • Fiche métiers
  • Entreprises
  • Tests
  • News
  • Se connecter
  • Déposer CV
  • Recruteur
    • Connexion Recruteurs
    • Employeurs
    • Trouvez des CVs
    • Postez des offres
  • Categories du Blog

    • Développement
    • Réseaux et Systèmes
    • Digital
    • E-commerce
    • Marché de l’emploi
    • Conseils
    • Evénements
    • Design
    • Marketing
    • Interviews
    • —-
  • Annonces

    • Toutes nos offres d’emploi
    • par région
    • par métier
    • par technologies
    • par sociétés
    • Par Industries
    • Fiches Métiers
  • Entreprises
  • Tests
  • offres recommandées
  • Se connecter
  • Déposez CV
  • Employeurs

    • Connexion recruteurs
    • Employeurs
    • Trouvez des CVs
    • Postez des offres
  • Développement
  • Réseaux et Systèmes
  • Digital
  • E-commerce
  • Marché de l’emploi
  • Conseils
  • Evénements
  • Design

Java 9 : get ready !

18/09/2017 par Team LesLeudis

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

 

Category: Développement, Evénements

About Team LesLeudis

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

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée.

Sidebar

Rechercher

Nos Meilleurs Articles

MOA et MOE

MOA / MOE : Quelles sont les différences ?

développeurs front end et backend

Développement front-end et back-end : Quelles différences ?

lignes de code Java

‘Java’ est-il le meilleur langage de programmation pour les débutants?

vb net ou c# comme langage de programmation

C# ou VB .NET, le choix du langage

Comment utiliser le framework React JS

1033853617

Les frameworks de programmation les plus populaires en France 

Les métiers du marketing digital

Les métiers du marketing digital les plus demandés en 2019

signe langage python sur ordinateur portable

Web Scraping avec python

757797865

Qu’est-ce que le DevOps et en quoi consiste ce métier ?

smartphone et ordinateur avec banniere sur kotlin comment langage de developpement pour android

Kotlin pour le développement Android

Jeunes stagieres informatiques dans le domaine de la robotique

Le guide ultime pour bien préparer son stage informatique

Pourquoi choisir symfony pour un projet web featured banner 800px

Pourquoi choisir Symfony pour un projet web ? 

Categories

  • Blockchain (7)
  • Conseils (40)
  • Contenu Top (13)
  • Design (42)
  • Développement (136)
  • Digital (347)
  • E-commerce (11)
  • Evénements (26)
  • Interviews (30)
  • Marché de l'emploi (41)
  • Marketing (98)
  • Réseaux et Systèmes (19)
  • SEO (41)
  • Web (160)

Nos Categories

Blockchain

Conseils

Contenu Top

Design

Développement 

Digital

E-commerce

Evénements

Interviews

Marché de l’emploi

Marketing

Réseaux et Systèmes

SEO

Web

Candidats

Emploi par région

Emploi par métier

Emploi par technologie

Emploi par industrie

Emploi par type de contrat

Tous les emplois

Fiches métiers informatiques

Nos Services

S’inscrire

Annonces

Évènements

Tests

Magazine

Salon LesJeudis

Support

Nous contacter

Vous êtes recruteur ?

A Propos

Conditions générales d’utilisation

Politique de confidentialité

Droit d’accès aux données 

personnelles

Social

Facebook

Twitter

Linkedi

Nos Categories

Blockchain

Conseils

Contenu Top

Design

Digital

E-commerce

Evénements

Interviews

Marché de l’emploi

Marketing

Réseaux et Systèmes

SEO

Web

Candidats

Emploi par région

Emploi par métier

Emploi par technologie

Emploi par industrie

Emploi par type de contrat

Tous les emplois

Fiches métiers informatiques

Support

Nous contacter

Vous êtes recruteur ?

A Propos

Conditions générales d’utilisation

Politique de confidentialité

Droit d’accès aux données 

personnelles

Social

Facebook

Twitter

Linkedi

Nos Services

S’inscrire

Annonces

Évènements

Tests

Magazine

Salon LesJeudis

Les Jeudis

© 2021 Groupe Les Jeudis