
Le nettoyage continue
Après la suppression de la méthode Reflection.getCallerClass, le nettoyage de classes et de méthodes dans le JDK 8 continue. Aujourd'hui, c'est l'interface sun.misc.Compare et la classe sun.misc.Sort qui sont supprimées (code review ici).
L'interface sun.misc.Compare offre une méthode de comparaison d'objets, prenant deux Object et renvoyant un int, possédant une signature très proche de l'interface java.util.Comparator. La classe sun.misc.Sort permet de trier un tableau passé en argument avec l'algorithme quicksort.
Mais pourquoi une telle suppression ?
Les développeurs du projet ont tout d'abord pensé à les mettre en @Deprecated, mais ont finalement statué qu'elles devaient être supprimées. La discussion complète autour de la suppression se trouve ici. Il faut dire qu'il y a un bogue important, de priorité 4, concernant la suppression de classes inutiles, puisque facilement remplaçables comme les deux présentées ici.
Les utilisateurs de sun.misc.Compare peuvent se tourner vers java.util.Comparator et ceux de sun.misc.Sort vers la méthode Arrays.sort.
Enfin, un nouvel utilitaire appelé jdeps arrive avec le JDK 8. Celui-ci permettra d'aider les développeurs à comprendre les dépendances statiques dans leurs projets et à identifier les usages des API non standards et internes au JDK, en tant que complément des warnings du compilateur. Vous trouverez le post associé à cet outil ici.
Il faut bien se rappeler que les classes définies dans les package sun.* sont internes à Oracle, ne sont pas portables entre les JVM et ne devraient pas être utilisées de manière publiques dans les applications.
Source :InfoQ
Et vous ?

Vous avez lu gratuitement 11 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.