Comme nous avons pu le voir dans un précédent article, Microsoft a réalisé un saut stratégique en proposant .Net Core, un framework open-source et multiplateforme. Si les intentions sont louables, nous avons souhaité vérifier la facilité d'installation de ce framework sur diverses plateformes. Nous vous en livrons ici l'essentiel.

.Net Core est un framework open source développé et maintenu par Microsoft qui permet de créer des applications multi plateformes. Nous reviendrons de manière détaillée dans de futurs articles sur ses spécificités. D’un point de vue pratique, il est souvent utilisé avec Visual Studio, l’IDE de Microsoft, pour profiter d’un confort de développement et de fonctionnalités avancées (autocomplétion, debug…). Malheureusement Visual Studio n’est pas multiplateforme…au contraire de son “petit frère” Visual Studio Code, gratuit, modulaire et installable quelle que soit votre machine. Si vous aimez les challenges, un simple éditeur de texte comme notepad peut suffire mais nous vous recommandons chaudement VSCode avec par exemple l’extension C#.

Voyons maintenant ensemble comment mettre en place un environnement de développement .Net Core sur Windows et Linux.

Installation sur Windows

Avant de développer en Dotnet core il faut installer le SDK Dotnet Core. Le plus simple est d’aller sur la page dédiée de microsoft. Si le lien n’est plus disponible, il suffit de demander à votre meilleur ami avec la recherche suivante « dotnet core sdk », il se fera un plaisir de vous donner l’adresse où vous pourrez télécharger et installer le SDK.

L’installation du SDK est assez simple, il suffit de suivre les étapes d’installation et de valider chaque étape.

Sur le dernier écran de l’installation veuillez remarquer les liens qui pourront vous être utiles pour commencer à développer et comprendre Dotnet Core.

.Net Core // Fenêtre d'installation du SDK .Net Core sous Windows
Fenêtre d’installation du SDK .Net Core sous Windows

Les liens en question :

Une fois l’installation terminée, ouvrez une fenêtre de commande et lancez l’instruction :

dotnet --version qui vous donnera la version de Dotnet Core installée

dotnet -h vous donnera une aide sur la commande

Exemple de création de « Hello world » en application Console

Tapez la commande :

dotnet new console -o PremiereApplicationConsole

Félicitations, vous venez de créer votre première application.

Le répertoire « PremiereApplicationConsole » a été créé et contient votre application.

Pour lancer l’application, allez dans le répertoire et tapez la commande : dotnet run

Création de votre première application MVC

Tapez la commande : dotnet new razor -o MonAppWeb

Allez dans le répertoire MonAppWeb et tapez dotnet run pour lancer l’application.

IIS express héberge l’application et vous pouvez accéder à votre page sur localhost:{le numéro de port indiqué} (ici le port est 5000).

Vous voilà maintenant fin prêts pour développer en .Net Core sur Windows !

Finalement la documentation de Microsoft est bien réalisée et balise assez facilement l’installation. Le processus ne pose pas de difficultés particulières et aucun bug ou subtilité ne vient entacher l’expérience utilisateur.

Microsoft remporte donc le premier point haut la main sur sa plateforme, passons maintenant à l’installation sur Linux et regardons ensemble si l’expérience d’installation de .Net Core est aussi fluide.

Installation sur Linux

Ubuntu

Le framework

L’installation de .Net Core sour Linux est assez simple. Microsoft détaille la procédure dans cet article : https://docs.microsoft.com/fr-fr/dotnet/core/linux-prerequisites?tabs=netcore2x

L’installation se fait très rapidement.

1ère étape:

Ajout du repos de fichiers Microsoft au système :

2ème étape:

Elle était facile à deviner, c’est la mise à jour des listes des fichiers des repos :

3ème étape:

Là aussi, pas de grand mystère étant donné les précédentes, on installe le .Net Core :

Pour l’installation il faut compter quelques minutes selon votre connexion Internet. Nous avons mis environ 4 minutes sur le réseau Wi-Fi invité de notre entreprise.

Pour ceux qui auraient lu l’article de Microsoft avant d’arriver ici, vous devez vous demandez: “quid du prérequis ?”.

Question légitime, s’il en est. Sur Ubuntu 16.0.4 tout le prérequis est là, inutile de s’en soucier.

A la fin de l’installation, pour vérifier qu’elle est fonctionnelle vous pouvez contrôler le numéro de version :

Premier projet

Pour contrôler que tout fonctionne, le mieux reste encore de créer et exécuter un premier projet.

Projet console:

Pour initier un projet console il suffit de taper en ligne de commande :

Attention : sans préciser de nom le projet prendra le nom du répertoire où vous vous situez.

En regardant dans le répertoire, on voit bien que dotnet a créé toute la structure nécessaire au projet.

Dans le Program.cs vous retrouverez le code du main habituel :

pour le builder il suffit d’un :

et pour l’exécuter il suffit d’un :

 

Projet ASP.Net :

On commence assez logiquement par :

Puis c’est exactement la même chose que pour un projet console :

Pour l’exécution, peut-être pensez vous que cela va être plus compliqué dans la mesure où le travail est assuré par IIS sous Windows. Et bien c’est aussi simple sous Linux, Microsoft utilise Kestrel :

Vous noterez que la console affiche les logs avec les requêtes que nous avons faites lors de nos tests.

Il n’y a pas que ces deux types de projets disponibles, avec la commande dotnet new vous verrez que Microsoft a prévu des patrons de projet pour Angular, React.js, React.js & Redux, etc…

Installation sur Amazon Linux

Amazon propose une version custom Linux. Cette version utilise le même package manager que Red Hat : yum. Malheureusement la procédure d’installation proposée par RedHat et Microsoft ne fonctionne pas. Nous vous proposons donc notre propre procédure. Évidemment, comme elle n’est pas officielle, nous déclinons toute responsabilité quant aux dégâts qu’elle pourrait faire sur votre système. Et de toute façon, nous déconseillons aux novices de s’y attaquer.

1ère étape : Installation du sdk .Net Core

Il faut télécharger le sdk sur le site de Microsoft. Le décompresser et l’ajouter dans le path.

Quelques conseils pour cette étape :

  • Vérifier le lien vers le téléchargement, car il change au fur et mesure des versions.
  • L‘export devra être fait à chaque connexion, donc il serait intelligent que vous l’ajoutiez dans votre fichier .bashrc

2ème étape : Le prérequis

Sur Amazon Linux, il manque la bibliothèque Libunwind. Il va donc falloir la télécharger, la générer/compiler et l’installer.

Les commandes pour la télécharger et la décompresser sont :

Ici aussi, faites attention au lien de l’archive qui peut changer avec le temps.

Pour la compiler, il faut un compilateur. Gcc fera l’affaire.

Pour la compiler, je vous conseille de faire un sudo -i car la compilation et l’installation auront besoin des droits administrateur plusieurs fois.

Il ne reste qu’une dernière étape, celle de faire les liens symboliques pour que le système sache où sont les résultats de la compilation et puisse les exécuter.

Maintenant vérifions ensemble que cela fonctionne :

Conclusion

Que cela soit sur Windows ou Linux, le SDK .Net core s’installe facilement. C’est un peu plus ardu sur un Linux exotique mais tout de même faisable sans être expert. Et c’est surtout assez rapide.

Attention quand vous demandez la version du .Net avec la commande: dotnet –version : c’est bien la version du SDK (2.1.4) que vous avez et pas celle du .Net Core (2.0.5). C’est un peu plus visible avec l’installation sur Windows.

Une fois l’installation accomplie, vous avez accès à une ligne de commande assez bien faite qui vous permet de créer un grand nombre de patrons de projets (la liste pouvant être élargie) et de les exécuter simplement. Votre code ne change pas d’un poil entre les différents OS, seules les option de compilation peuvent changer si vous voulez générer un exécutable autonome (pas une dll) spécialisé pour le runtime de l’OS.

Pour poursuivre votre exploration du .Net Core, nous vous invitons à surveiller le blog car d’autres articles vont bientôt arriver.

Le prochain traitera notamment de la migration d’un projet .Net vers .Net Core.

Dans le meme dossier

Laisser un commentaire

MERITIS ICI. ET LÀ.

Carte Meritis

Meritis Finance

5 – 7, rue d’Athènes
75009 Paris

+33 (0) 1 86 95 55 00

contact@meritis.fr

Meritis PACA

Les Algorithmes – Aristote B
2000 Route des Lucioles
06901  Sophia Antipolis Cedex

+33 (0) 4 22 46 31 00

contact@meritis-paca.fr

Europarc de Pichaury – Bâtiment B5
13290 Aix-en-Provence

+33 (0) 4 22 46 31 00

contact@meritis-paca.fr

Meritis Technologies

5 – 7, rue d’Athènes
75009 Paris

contact@meritis-technologies.fr

+33 (0) 1 86 95 55 00


Contactez-nous