Après une longue traversée du désert, le monde .NET va sans doute enfin disposer d’un nouveau standard en matière de gestion des dépendances binaires. Ce standard n’est autre que NuGet (anciennement NuPack), issu de l’initiative des équipes Web Platform & Tools de chez Microsoft et des membres du Nu Project. Il vient jusque dans votre Visual Studio pour vous apporter le meilleur des librairies du monde Open Source en quelques clics.
Depuis de longues années, le monde Java possède un outil nommé Maven, qui, avec ses fichiers « pom.xml » permet de définir des packages et leurs dépendances (Maven fait aussi bien plus que cela). De plus il existe des implémentations reconnues de « repositories », véritables catalogues de composants publiquement accessibles avec Maven. D’un autre côté, on constate également le succès de la galerie Ruby Gems (http://rubygems.org) hébergeant pas moins de 1200 références. Pourquoi dans le monde Microsoft n’y-a-t-il pas d’équivalent ? Ce ne sont pas les tentatives qui ont manqué. Pour en citer quelques-unes : Nu, Refix, NPanday (intégration .NET dans le Maven de Java), HornGet, etc. Mais elles n’ont pas su s’imposer... Pourtant le besoin est là, dès lors que l’on veut industrialiser les développements, la question de la gestion des références et des packages se pose et chacun se retrouve à implémenter son propre système de gestion et de mutualisation des dépendances binaires, à un certain prix il faut le dire.
Vincent Labatut