C#
C# is a a managed, object-oriented programming language that is part of the .NET ecosystem. It is heavily inspired by Java.
.NET
.NET describes the Ecosystem that includes languages (C#, F#, VB, …), runtimes like the CLR (Common Language Runtime) and libraries like the BCL (Base Class Library).
Implementations of .NET include:
- .NET Framework: Runs on Windows
- .NET Core: New and open source
- Mono: Clean-room implementation of .NET, originally for linux
The future vision of it is to have only a single .NET SDK with one base class library and a unified toolchain.
Terminology:
- Nuget: C# package manager
- CLR: the core Common Language Runtime, analogous to the JVM in Java
- ASP.NET: Active Server Pages .NET. A web application framework.
dotnet cli
: your entry point, SDK, driver, javac, etc
dotnet new
: templatesdotnet run
: dev time compile and rundotnet publish
: ready up for deploy
.csproj
: XML file that contains the list of files in a C# project, references to
system assemblies and other settings. You get one .csproj
file per assembly and
the .sln
(solution file) ties together all the assemblies that make up the
project.