80 votes

Pourquoi projeter Jigsaw

Le système de gestion des paquets de Java m'a toujours semblé simple et efficace. Il est fortement utilisé par le JDK lui-même. Nous l'avons utilisé pour imiter le concept d'espaces de noms et de modules.

Qu'est-ce que le puzzle de projet tente de remplir?

Sur le site officiel,

L'objectif de ce projet est de concevoir et d'implémenter un système de modules standard pour la plate-forme Java SE et de l'appliquer à la plate-forme elle-même et au JDK.

101voto

duffymo Points 188155

Jigsaw et OSGi pour essayer de résoudre le même problème: comment faire pour permettre à plus de gros-grain modules d'interagir tout en protégeant leurs internes.

Dans le Puzzle de l'affaire, le plus grossier grain modules incluent des classes Java, les paquets et leurs dépendances.

Voici un exemple: Spring et Hibernate. Les deux ont une dépendance à une 3ème partie JAR CGLIB, mais ils utilisent différents, des versions incompatibles de ce POT. Que pouvez-vous faire si vous comptez sur la norme JDK? Y compris la version Printemps veut sauts de mise en veille prolongée et vice-versa.

Mais, si vous avez un niveau supérieur modèle comme le Puzzle, vous pouvez facilement gérer les différentes versions d'un POT dans les différents modules. Pensez à eux comme de plus haut niveau des paquets.

Si vous construisez Printemps à partir de la source GitHub vous allez les voir, trop. Ils ont refait le cadre de sorte qu'il se compose de plusieurs modules: de base, de la persistance, etc. Vous pouvez choisir l'ensemble minimal de module et les dépendances de votre application à vos besoins et ignorer le reste. Il sert à être un simple Ressort POT, avec tous les .les fichiers de classe à elle.

45voto

Peter Lawrey Points 229686

D'après nos informations, l'objectif est de rendre le JRE plus modulaire. C'est-à-dire que des bocaux plus petits sont facultatifs et / ou que vous ne pouvez télécharger / mettre à niveau que les fonctionnalités dont vous avez besoin.

Son pour le rendre moins gonflé et vous donner la possibilité de supprimer des modules hérités que la plupart des gens n'utilisent peut-être pas.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X