Domanda potezialita del c#

c# è:
- orientato agli oggetti, come python
- strutturalmente simile a c e c++, quindi a molti altri linguaggi
- compilato, al contrario, python, è interpretato
- generalmente più lento di python
- tipizzato staticamente,
- generalmente più performante di python
 
C# in realtà non è un linguaggio che viene compilato in nativo, come C e C++. Si tratta di un "linguaggio intermedio" (MSIL, Microsoft Intermediate Language), infatti ha bisogno del CLR (Common Language Runtime) per poter essere eseguito (il .Net framework).

Ci puoi scrivere applicazioni desktop o può essere utilizzato in backend. Se sei sotto Linux è un pò scomodo, anche se la situazione è migliorata rispetto ad anni fa. Inoltre puoi anche sviluppare applicazioni mobile (utilizzando Xamarin).

Puoi iniziare dalla doc ufficiale: https://docs.microsoft.com/it-it/dotnet/csharp/programming-guide/
Ho risposto proprio ad un utente prima, in questo topic: https://www.inforge.net/forum/threads/imparare-a-programmare.598858/#post-5138102

@nobody I exe arriviamo un pò tardi in realtà
 
  • Mi piace
Reazioni: JunkCoder
@DispatchCode mi ha preceduto nella dovuta correzione che stavo scrivendo riguardo ad MSIL, che concordo a pieno.

Aggiungo che grazie a mono e .NET core e' sempre piu' facile sviluppare applicazioni cross-platform con C#, che a vari livelli viene supportato per Windows, MacOS, Linux e Android. Il supporto pieno al 100% e' ovviamente solo su Windows per via del .NET Framework completo.
Ci puoi fare molte cose, viene di piu' usato per sviluppare applicazioni desktop ed alcuni videogame (non l'engine vero e proprio ma per programmare eventi, azioni e altro), piu' recentemente anche per app mobile.
 
  • Mi piace
Reazioni: DispatchCode
in verità dall'uscita di .net core è possibile pubblicare assembly self-packed quindi sono una sorta di compile nativo anche se in verità è solo una mini sdk embeddata


Tra le altre cose dette dai due sopra di me, all'uscita della prossima versione .NET Core (6.0) ci sarà una svolta decisiva per il C# .NET dove si punterà sempre di più all'unificazione del C#, in più ci saranno moltissimi cambiamenti per Blazor tra cui un nuovo WebClient tipo electron per Blazor/WASM che renderà electron completamente inutile visto che già adesso è merd*