Voir le flux RSS

Hinault Romaric

.NET Core Tools : dotnet new et ses nouveaux modèles de projet

Noter ce billet
par , 10/03/2017 à 06h05 (171 Affichages)
Microsoft vient de publier la première version stable des outils pour .NET Core avec Visual Studio 2017. Je suis assez satisfait de la direction emprunter par la firme et la philosophie derrière le développement de .NET Core et les outils pour le framework.

À titre de rappel, .NET Core est développé en open source et est multiplateforme. La plateforme peut fonctionner sur Windows, Linux ou encore Mac. Elle a été développée pour être indépendante de tout EDI, notamment Visual Studio.

C’est pour cela que cette dernière offre le CLI (command-line interface) pour le développement d’applications .NET Core. Le CLI s’appuie sur shared SDK component. Il s’agit de la couche primaire sur laquelle peuvent se greffer d’autres outils de haut niveau comme les environnements de développement intégrés, les orchestrateurs de build, etc. Le shared SDK component offre la compilation, la publication, la génération des packages NuGet, etc.

Nom : p3-arch.png
Affichages : 50
Taille : 19,1 Ko

En procédant ainsi, n’importe quel éditeur est en mesure d’implémenter assez facilement une prise en charge de .NET Core. De plus quelle que soit la plateforme, ces outils fonctionnent de la même manière.

Couplé avec Visual Studio Code, par exemple, vous avez le nécessaire pour créer des applications .NET Core sous Windows, Linux et Mac.

Pour créer et exécuter un hello word, il suffisait d’exécuter les commandes suivantes :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
dotnet new
dotnet restore
dotnet run
Les développeurs du CLI sont allés plus loin en intégrant de nombreux templates. En exécutant simplement les commandes suivantes :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Dotnet new mvc
Dotnet restore 
Dotnet run
J’obtiens une application .NET Core MVC prête à être utilisée. Pour obtenir la liste des templates disponibles, utilisez la commande :

Dotnet new -all

Nom : cli1.png
Affichages : 47
Taille : 60,5 Ko

Comme vous pouvez le remarquer, vous avez à votre disposition des templates pour créer des applications de type console, des applications Web MVC, des tests unitaires et bien plus. Vous avez le choix entre C# et F# comme langage de programmation. Par défaut, le langage C# est utilisé.

La commande dotnet new nécessite des arguments et des options :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Dotnet new [arguments][options]
Le seul argument actuel est <template> qui représente le nom du template que vous devez utiliser. Supposons que je veux créer un projet MVC et je ne connais pas les options. Je peux utiliser la commande suivante :

Nom : cli2.png
Affichages : 49
Taille : 64,9 Ko

Les options les plus intéressantes sont :

  1. -lang pour le langage de programmation à utiliser;
  2. -n le nom du projet (nom du répertoire qui sera créé et du fichier .csproj);
  3. -f pour choisir la version du framework .NET Core à utiliser (entre la 1.0 et la 1.1)


Pour créer une application console F# dans le répertoire par défaut, je peux utiliser la commande suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
dotnet new console -lang f#
Pour créer le projet Blog.Web, avec le template MVC et le langage F#, la commande sera la suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
dotnet new mvc -lang f# -n Blog.Web
Pour créer le projet de test unitaire Xunit Blog.Test en utilisant la version 1.0 de .NET Code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
dotnet new xunit --f netcoreapp1.1 –n Blog.Test
Dotnet offre de nombreuses autres commandes très utiles pour le développement d’une application. Il s’agit notamment de :

  • dotnet restore pour restaurer les packages NuGet dans une application ;
  • dotnet run pour lancer le débogage d’une application ;
  • dotnet test pour exécuter des tests unitaires.


Nom : cli3.png
Affichages : 47
Taille : 14,2 Ko

Ça peut être révoltant pour certains d’avoir à utiliser la ligne de commande. Mais, pour moi, c’est la meilleure option pour rende la plateforme indépendante de tout outil de haut niveau. C’est ce qui est fait dans les langages récents comme Go ou encore Rust. Par ailleurs, avec un EDI comme Visual Studio, vous n’avez pas besoin d’utiliser l’invite de commandes.

Envoyer le billet « .NET Core Tools : dotnet new et ses nouveaux modèles de projet » dans le blog Viadeo Envoyer le billet « .NET Core Tools : dotnet new et ses nouveaux modèles de projet » dans le blog Twitter Envoyer le billet « .NET Core Tools : dotnet new et ses nouveaux modèles de projet » dans le blog Google Envoyer le billet « .NET Core Tools : dotnet new et ses nouveaux modèles de projet » dans le blog Facebook Envoyer le billet « .NET Core Tools : dotnet new et ses nouveaux modèles de projet » dans le blog Digg Envoyer le billet « .NET Core Tools : dotnet new et ses nouveaux modèles de projet » dans le blog Delicious Envoyer le billet « .NET Core Tools : dotnet new et ses nouveaux modèles de projet » dans le blog MySpace Envoyer le billet « .NET Core Tools : dotnet new et ses nouveaux modèles de projet » dans le blog Yahoo

Commentaires

  1. Avatar de Felykanku
    • |
    • permalink
    je ne pense pas - pour le fait que les versions precedentes soient instables - que maintenir une version stable soit une issue favorable du fait que le monde actuel est dynamique.