Voilà une question qu'on m'a dejà posé plusieurs fois inbox et que j'aimerai clarifier dans ce post une fois pour tous.
C# c'est le langage de pointe, je dis bien de point de microsoft dotnet et surtout actuellemet Microsoft dotnet core, connaissez vous l'histoire de la plateforme Microsoft dotnet?
en passant, j'ai fait tout un article en anglais ici pour les débutant pour parler de dotnet core et son processur de compilation et d'execution, cet artivcle a été lu par beaucoup beaucoup de monde surtout que c'est en anglais, lisez le c'est assez digeste.
Pour ceux qui ne savent pas de quoi dotnet s'agit, eh bien c'est simplement la plateforme mis sur pied par le géant Microsoft pour construire tout type d'application, je dis tout type d'application, aupravant c'était une plateforme uniquement fait pour les applications sur windows et on avait pour cela donet framework ou .net framework et c'était une plateforme multi-langage donc on pouvait cumulativement utiliser : c#, F#, vb.net etc.. pour coder les applications sur dotnet framework, en fait un langage supporté par dotnet framework était par la suite traduit en IL (Intermediate Language un peu comme le bytecode de java quoi) avant d'etre compilé en runtime (au moment d'éxécution) par le compilateur de dotnet appellé CLR(Common Language Runtime), du coup on pouvait écrire une bibliothèque en un langage de dotnet par exemple en vb.net et puis l'utilisé par exemple dans du code c#, ou F# etc.. et vice versa.
Microsoft avait lancé c# dans la melé pour attirer dejà les codeurs habitués à C et C++ car qui vient de ces langages se retrouvent complètement à la maison, mais aussi c# est presque du Java, mais du Java très très bien fait avec des syntaxes intuitifs et simples pour le developpeur comparativement à java qui est sa copie, du coup c# est aimé par les develppeurs qui l'apprecient beaucoup, ceux qui viennent de java(comme moi à mes débuts et venant de C car j'ai commencé mes premiers pas dans le code par le C en faculté), une fois dans c# c'est difficile de ne pas l'aimer, surtout quand on utilise dans dotnet c'est super... c'est tellement super que c'est devenu en quelques années le langage clé de toute la suite dotnet et d'ailleur microsoft a lancé il y a quelques années dotnet core qui est une solution multiplateforme c'est à dire tu code en c# et ton application non seulement peut fonctionner sur windows, mais aussi sur linux et Mac et dans le cloud..wouah.. vous avez compris? et c# c'est le langage presque obbligatoire de dotnet core... on peut donc faire quoi avec?.
-Application desktop, ce que vous appellez application lourd, les windows form, les applications comme word, excel, les navigateurs comme chrome, mozilla, bref tout ce que vous pouvez installé dans un PC sont des applications desktop, dans dotnet framework on fait ce type d'application avec les windows form, ou avec les WPF (Windows Presentation Fondation)
-Application Mobile, oui avec Xamarin et maintenant devenu MAUI, on crée tranquillement une app semi-hybride avec c# et d'une pierre on fait deux app : android et ios avec un seul et meme code
-Les applications web, les sites web si vous voulez, pour cela il y a asp.net core MVC ou asp.net core Rest API, donc vous pouvez créer un site complet avec c# plus performante que ce qu'on fait en PHP, Java, Python etc.. vous pouvez melanger le HTML avec du code c# comme en php en utilisant les razor page, c'est super simple et beau il faut y essayer.
-Les SPA(Single Page Application), oui, avec du c# on fait actuellement du frontend aussi, au meme titre que React, Angular et vuejs, pas besoin de connaitre javascript, si vous connaissez c# ça suffit vous pouvez faire un frontend SPA complet avec Blazor client et server, justement Microsoft c'est le tout premier qui est entrain d'exploiter les web assembly standardisé par le w3c pour permettre d'executer du code non javascript dans les navigateur et du coup avec blazor, vous ecrivez votre code en c#, qui sera traduit en web assembly, et puis executé dans le navigateur au meme titre que Javascript.
-Les applications Cloud, c'est à dire des applications qui peuvent s'executer seulement dans un environement cloud comme les serverless (FAAS = Function as service), c'est à dire vous ecrivez juste votre bout de code c#, vous mettez dans le cloud et c'est le cloud qui s'occupe de l'executer en fonction de l'objectif que vous voulez atteindre avec ce bout de code, donc vous n'avez pas besoin d'une infrastructure pour l'heberger ce code hein, aussi avec c# vous faites des applications qui peuvent fonctionner dans des environnement à container comme docker, kubernetes hein...
-Service Windows, savez vous que dans votre machine windows là il y a des applications que vous ne voyez pas, invisible qui effectuent des taches au quotidien dans votre machine sans que vous ne le sachiez?, si vous installer WAMP ou XAMP par exemple pour faire du php, eh bien il vous creéz une application service windows, c'est ça qui fait tourner mysql, phpmyadmin, apache etc... hein
-Les WCF oui les windows communication fondation, c'st à dire des api basé sur le protocolle SOAP qui est un concurent de REST API qui lui va sur HTTP, WCF peut aller sur HTTP mais aussi sur autre protocolle..
-les jeux video, c'est le langage utilisé par le framework Unity le number one des jeux video de toute sorte que j'ai d'ailleur longuement parlé ici avec code de jeux à l'appui, c'est egalement le langage de monogame donc je parlais hier avec demo de deux super jeux pour android
-- berf--- on peut faire tout.. c'est quand meme windows, et détrompez vous, en entreprise les serveur à 80% sont windows, vous entendrez dire windows server 2003, 2005, 2008, 2012... 2019 etc... WINDOWS est comme android en entreprise, c'est incontournable, donc dans le c# il y a toujours toujours du boulot c'est pourquoi microsoft est combattu et on le combattait avant car il n'etait pas open source, actuellement il a tout mis open source et pas moyen de le combattre.
Voilà j'espères que vous avez pigé quelque chose dans ce discourt de c#
Bon coding
LarrySig Guest
24.05.2024, 18:18
Post: Comment fonctionnent Internement les guichets automatiques ?
Orvilledop Guest
22.05.2024, 00:57
Post: Comment fonctionnent Internement les guichets automatiques ?
Orvilledop Guest
15.05.2024, 16:04
Post: Comment fonctionnent Internement les guichets automatiques ?
Franck Guest
14.05.2024, 19:34
Post: Comment deployer un site web statique sur github?