Minimale Konsolenanwendung in .NET 6

Ab .NET 6 Preview 7 hat Microsoft die Projektvorlagen stark minimalisiert. Das Konsolenprojekt besteht nur noch aus einer Codezeile.

In Pocket speichern vorlesen Druckansicht 4 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Dr. Holger Schwichtenberg

Ab .NET 6 Preview 7 hat Microsoft die Projektvorlagen stark minimalisiert. Das Konsolenprojekt besteht nur noch aus einer Codezeile.

Wer in Visual Studio 2022 (ab Preview 3) ein .NET 6-Konsolenprojekt oder mit dem .NET 6 SDK via dotnet new console ein neues Konsolenprojekt anlegt, reibt sich erstmal die Augen, denn man bekommt nur noch eine Codezeile und eine Kommentarzeile:

// See https://aka.ms/new-console-template for more information
Console.WriteLine("Hello, World!");

im klassischen .NET Framework sah ein Konsolenprojekt noch so aus (ähnlich in .NET Core und .NET 5):

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ITVisions
{
class Program
{
static void Main(string[] args)
{
}
}
}

Microsoft will in .NET 6 zeigen, wie schlank man in C# mittlerweile programmieren kann:

  • Seit C# 9 kann man auf Main() verzichten (Top-Level Statements)
  • Seit C# 10 kann man auch auf die Namensraum-Importe für häufig genutzte Namensräume verzichten (Implicit Namespace Imports). Welche Namensräume das sind, findet man hier.

Auch in dem neuen, minimalen C# 10-Konsolenprojekt kann man auf die Kommandozeilenparameter zugreifen: args ist jetzt eine "unsichtbare" deklarierte Variable.

Console.WriteLine(args.Length);

Ich bin kein Fan von diesem Minimalismus und der args-"Magie", aber ich kann akzeptieren, wenn Microsoft zeigen möchte, dass ein Projektstart in .NET genauso einfach ist wie in node.js und anderen Sprachen/Frameworks.

Ich würde mir nur wünschen, dass es (wie früher in Webprojekten) eine Projektvorlagenauswahl für Entwickler gibt, also "Minimal Console Project" und "Full Console Project" und Microsoft nicht weiter dazu auffordert, den alten Ansatz aus dem Tutorial herauszukopieren.

Natürlich ist es leicht möglich, sich selbst eine entsprechende Projektvorlage für Visual Studio zu erstellen. Aber beispielsweise in C#-Grundlagenschulungen wird es nicht einfacher, wenn erstmal die mit C# und Visual Studio unerfahrenen Teilnehmer*innen meine Projektvorlage installieren müssen. ()