Du möchtest C# programmieren lernen, weißt aber nicht so wirklich, wo du anfangen sollst? Dann bist du bei dieser Tutorialreihe genau richtig! In den kommenden Beiträgen wirst du alle Grundlagen der Programmiersprache C# Schritt für Schritt kennenlernen. Die Reihe eignet sich also auch für absolute Einsteiger ohne jegliche Vorerfahrung.
Inhaltsverzeichnis
1. Was wirst du lernen?
Die erste Frage, die du dir womöglich an diesem Punkt stellt, ist:
Was werde ich eigentlich lernen?
Unsere Antwort: Du wirst in den kommenden Beiträgen alle wichtigen Grundlagen lernen, die du brauchst, um deine ersten kleinen Anwendungen in C# programmieren zu können.
Im heutigen Artikel werde ich dich bereits über die Installation der Entwicklungsumgebung bis hin zu deinem ersten Hello-World-Programm führen.
Danach wirst du dann unter anderem lernen, was Variablen und Datentypen sind und wie man den Programmablauf mit if-Statements oder switch-Blöcken steuern kann. Außerdem werden wir uns ansehen, wie verschiedene Arten von Schleifen in C# funktionieren und wie man diese in der Praxis einsetzt. Auch die Bedeutung von Methoden und Arrays, wie man diese verwendet und weitere Themen wirst du innerhalb dieser Tutorial-Reihe kennenlernen. Zu guter Letzt werde ich dich sogar an die objektorientierte Programmierung mit C# heranführen.
Am Ende wirst du also alle Grundlagen beherrschen, die du benötigst, um erste eigene Anwendungen in C# schreiben zu können.
2. Gründe für C# und die Möglichkeiten mit dieser Programmiersprache
Sehen wir uns zuvor aber noch kurz an, welche Gründe dafür sprechen, C# programmieren zu lernen? Denn du könntest ja auch jede beliebige andere Programmiersprache lernen.
C# ist eine sehr einsteigerfreundliche Programmiersprache. Da es sich dabei um eine sogenannte Allzweck-Programmiersprache handelt, kann man so gut wie alles mit C# programmieren, das man sich vorstellen kann.
Dazu gehören Videospiele, einfache Konsolenanwendungen, die lästige Alltagsaufgaben automatisieren, Anwendungen mit grafischen Benutzeroberflächen und Apps. Darüber hinaus ermöglicht es C#, für verschiedene Plattformen (z.B. Windows, MacOs, etc.) zu entwickeln, Webanwendungen für Windows Server und Windows Dienste zu schreiben und vieles mehr.
Die Programmiersprache eignet sich also auch ideal für Programmiereinsteiger, die sich zu Beginn noch etwas unsicher darüber sind, was sie später einmal umsetzen möchten. Mit dem Lernen von C# stehen dir also zahlreiche Türen offen.
Wenn du noch mehr allgemeine Informationen zur Programmiersprache C# haben möchtest, empfehle ich dir, zusätzlich auch diesen Artikel zu lesen: Vorstellung der Programmiersprache C#
3. Installation der Entwicklungsumgebung
Um in C# programmieren zu können, benötigen wir zunächst eine sogenannte Entwicklungsumgebung. Die Entwicklungsumgebung, die wir innerhalb dieser Tutorial-Reihe nutzen werden, ist Visual Studio. Du kannst aber auch jede beliebige andere Entwicklungsumgebung deiner Wahl verwenden.
Um Visual Studio zu installieren öffnen wir eine Suchmaschine unserer Wahl und tippen in das Suchfeld „Visual Studio“ ein:
Um Visual Studio direkt zu installieren, rufst du zunächst in einem Browser deiner Wahl die folgende Internetseite auf: https://visualstudio.microsoft.com/de/
Auf der Website angekommen stehen uns jetzt verschiedenen Arten von Visual Studio zur Auswahl. Die Version, die wir für dieses Tutorial nutzen werden, ist das normale Visual Studio. Dieses stellt eine komplette Entwicklungsumgebung dar, die es uns ermöglicht, zu programmieren, zu debuggen, zu testen und vieles mehr.
Visual Studio Code hingegen ist ein einfacher Code Editor und somit keine vollständig ausgereifte Entwicklungsumgebung wie das normale Visual Studio. Wir klicken deshalb also links bei Visual Studio auf den Button „Visual Studio herunterladen“:
Das obere Bild zeigt, dass uns an dieser Stelle noch drei weitere Versionen angezeigt werden: Die Community Edition, die Professional Edition und die Enterprise Edition.
Wir nutzen die Community Edition, da diese völlig kostenlos für Einzelentwickler, für die akademische Nutzung oder für Open-Source-Projekte ist. Sie eignet sich also ideal, um hobbymäßig damit zu arbeiten und zu lernen.
Nachdem wir also auf den Button geklickt haben, wird der Download für den Visual Studio Community Installer angestoßen. Sobald der Download erfolgreich abgeschlossen ist, klicken wir auf die heruntergeladene Datei, um den Visual Studio Installations-Assistenten zu öffnen:
Im folgenden führe ich dich nun Schritt für Schritt durch den Installations-Assistenten:
Daraufhin öffnet sich folgendes Fenster, auf welchem wir eine Komponentenauswahl treffen müssen:
Hier können wir jetzt die verschiedenen Komponenten auswählen, die mit Visual Studio installiert werden sollen. Hier setzen wir nun ein Häckchen bei ".NET Desktopentwicklung". Dadurch können wir dann mit der Programmiersprache C# sowohl WPF Anwendungen (Anwendungen mit grafischen Benutzeroberflächen) als auch einfache Konsolenanwendungen erstellen.
Solltest du auch Interesse daran haben, später eventuell eigene Videospiele mithilfe von Unity zu entwickeln, dann kannst du auch direkt weiter herunterscrollen und zusätzlich ein Häckchen bei "Spieleentwicklung mit Unity" setzen:
Sobald du alle Komponenten ausgewählt hast, klicke rechts unten auf den Button "Installieren".
Nachdem alles erfolgreich installiert wurde, wirst du darum gebeten, dich mit deinem Microsoft Account einzuloggen. Ganz unten hast du aber die Möglichkeit, auf den Link "Jetzt nicht, vielleicht später" zu klicken, um den Login zu umgehen:
Dir sollte aber bewusst sein, dass du spätestens nach 30 Tagen erneut dazu aufgefordert wirst, dich mit deinem Microsoft Account einzuloggen. Solch ein Microsoft Account kann aber vollkommen kostenlos erstellt werden.
Anschließend wirst du darum gebeten, ein Farbschema für die Entwicklungsumgebung auszuwählen:
Hier kannst du das Farbschema wählen, welches dir persönlich am meisten zusagt. Nachdem du dein Farbschema gewählt hast, musst du nur noch rechts unten auf den Button "Visual Studio starten" klicken. Der Installationsprozess ist damit erfolgreich abgeschlossen.
4. Das erste Projekt erstellen
An dieser Stelle ist es nun an der Zeit, unser erstes Projekt zu erstellen. Hierfür klicken wir in dem Fenster, dass sich nach der erfolgreichen Installation automatisch geöffnet hat, auf „neues Projekt erstellen“:
Daraufhin öffnet sich eine Liste mit verschiedenen Projektvorlagen. Da wir eine Konsolenanwendung erstellen möchten, wählen wir die Projektvorlage für Konsolenanwendungen aus.
Hier ist nun ganz wichtig, dass wir das Projekt mit C# umsetzen möchten und nicht mit Visual Basic. Dafür wählen wir oben unter „alle Sprachen“ nur C# aus:
Nun sehen wir nur noch die Projektvorlagen für C#, klicken also auf Konsolenanwendung und anschließend auf „Weiter“:
Jetzt müssen wir der Konsolenanwendung, also dem Projekt, noch einen Namen geben. Beispielhaft nenne ich es einmal TutorialProjektHelloWorld und klicke dann auf „weiter“.
An dieser Stelle werden wir noch darum gebeten, ein Zielframework auszuwählen. Wir wählen hier das .NET 5.0, welches die aktuelle Version vom .NET-Framework darstellt und klicken anschließend auf „Erstellen“:
Nach einer kurzen Ladezeit öffnet sich auch schon direkt unser Projekt und wir sehen den Code Editor:
Hinweis: Um den Text zu vergrößern, hält man die STRG-Taste gedrückt und scrollt dann mit dem Mausrad nach oben.
5. Das erste Programm
Wie wir sehen, wurde hier bereits etwas Code vorgeneriert. Hierbei handelt es sich bereits um das erste funktionsfähige Programm, dass wir jetzt zunächst einmal Schritt für Schritt unter die Lupe nehmen.
5.1. using System
Bei using System handelt es sich um eine sogenannte using-Direktive.
Eine using-Direktive verwendet das Programm, um einen sogenannten Namespace in ein Code-Dokument einzubinden. Ein Namespace kann man sich wie einen Ordner vorstellen, in welchem sich bereits vorprogrammierter Code befindet. Diesen Code können wir nutzen, um Anwendungen damit zu schreiben.
Wie wir sehen, ist der Namespace „System“ eingebunden. Ohne diesen könnten wir zum Beispiel nicht „Console.WriteLine“ verwenden. Die Console-Klasse und die WriteLine-Methode sind dann nämlich nicht mehr verfügbar, da sie im Namespace System enthalten sind.
5.2. Namespace TutorialProjektHelloWorld
Als nächstes folgt im Programmcode der Namespace TutorialProjektHelloWorld:
Dabei handelt es sich um den Namespace unseres Projekts. Diesen kann man sich also auch wieder wie einen Ordner vorstellen, in welchem sich der Code unseres Projekts befindet.
Man leitet ihn mit einer geschweiften Klammer ein und schließt ihn ebenfalls mit einer geschweiften Klammer. Alles, was sich zwischen diesen Klammern befindet, gehört zu dem Namespace TutorialProjektHelloWorld.
5.3. Die Klasse Program
Darin befindet sich die Klasse Program:
Doch was ist eine Klasse? Die Antwort auf diese Frage macht an dieser Stelle noch wenig Sinn, da man sie mit dem aktuellen Wissensstand noch nicht verstehen könnte.
Du musst zu dieser Zeit nur folgendes verstehen: Die Klasse Program stellt unser Programm dar. Das heißt, dass zwischen den geschweiften Klammern unser Hauptprogramm stattfindet.
5.4. Die Main-Methode
In dieser Klasse befindet sich nun eine Methode – die Main-Methode:
Doch was ist eigentlich die Main-Methode?
Die Main-Methode gibt es in jedem C#-Projekt. Sie ist der Startpunkt unseres Programms.
Das heißt: Würden wir unser Programm nun starten, würde dieses im Codeblock der Main-Methode anfangen, Befehle auszuführen.
Wichtig zu wissen ist also, dass das „static void Main“ mit dem dazugehörigen Codeblock der Startpunkt unseres Programms ist und wir darin Befehle schreiben können, die mit dem Programmstart ausgeführt werden.
5.5. Die Methode Console.WriteLine
Wie du außerdem sehen kannst, hat Visual Studio beim Erstellen des Projekts bereits automatisch einen Befehl geschrieben. Und zwar den Befehl Console.WriteLine mit dem Text „Hello World“:
Bei WriteLine handelt es sich um eine Methode aus der Klasse Console. Diese Methode nimmt einen Text als Parameter an, der in der Konsole ausgegeben wird. Wenn du bereits mit einer anderen Programmiersprache gearbeitet hast, wirst du das eventuell als den print-Befehl kennen.
5.6. Programm ausführen
Starten können wir das Programm mit einem Klick auf den Play-Button:
Durch das Programm wird der Text "Hello World!" nun auf der Konsole ausgegeben:
Wenn wir die Konsole wieder schließen möchten, drücken wir eine beliebige Taste auf der Tastatur.
Hinweis: Wenn sich bei dir die Konsole ohne Eingabe deinerseits sofort geschlossen haben sollte, nachdem die Ausgabe erschienen ist, kannst du noch Console.ReadKey() im Code ergänzen. Dadurch wartet das Programm explizit auf eine Eingabe des Nutzers.
6. Console.WriteLine im Detail erklärt
An dieser Stelle sehen wir uns nun einmal an, wie wir eine Ausgabe auf der Konsole selbst umsetzen können. Schließlich hat das Programm den Code, welchen wir gerade gesehen haben, schon automatisch vorgeneriert.
Damit du das Ganze auch selbst in der Praxis anwenden kannst, gehen wir den Console.WriteLine-Befehl jetzt nochmal Schritt für Schritt gemeinsam durch.
Im ersten Schritt steht das Wort "Console". Das ist die sogenannte Klasse, in der sich die WriteLine-Methode befindet. Anschließend darauf folgt ein Punkt, der es ermöglicht, in dieser Klasse auf etwas zuzugreifen. In unserem Fall ist das die WriteLine-Methode, die direkt hinter den Punkt folgt:
Den Methodennamen alleine hinzuschreiben, reicht allerdings noch nicht aus, um die Methode auch tatsächlich aufzurufen. Es muss hierfür nämlich noch ein rundes Klammerpaar auf den Namen der Methode folgen. Häufig ist es so, dass Visual Studio uns hierbei unterstützt und die Klammern direkt für uns setzt.
Zwischen den beiden Klammern können dann sogenannte Parameter übergeben werden. Speziell bei der WriteLine-Methode übergeben wir genau einen Parameter, nämlich den Text, den das Programm auf der Konsole ausgeben soll. Diesen Text bezeichnet man in der Programmierung als sogenannten String. Und Strings werden immer zwischen zwei Anführungszeichen geschrieben.
Das heißt: Möchtest du einen Textwert in C# übergeben, setzt du zwei Anführungszeichen und schreibst den gewünschten Text dazwischen.
Für unser Beispiel schreiben wir dort einmal „Hallo Welt!“ hinein.
Zu guter Letzt sehen wir nun hinter dem Aufruf von Console.WriteLine eine rote wellenförmige Unterstreichung:
Das liegt daran, dass wir an dieser Stelle noch kein sogenanntes Semikolon gesetzt haben. In C# ist es so, dass man nach jeder Anweisung ein Semikolon setzen muss. Ein Semikolon ist ganz einfach ein Strichpunkt (;).
Tipp: Wir können Console.WriteLine auch schneller aufrufen, indem wir cw eingeben und anschließend zweimal auf die Tab-Taste drücken.
Console.WriteLine sorgt außerdem immer für einen Zeilenumbruch.
Das heißt: Auf der Konsole wird nicht nur "Hallo Welt!" ausgegeben, sondern es wird zusätzlich auch noch ein Zeilenumbruch umgesetzt.
Wenn man nun also direkt danach eine weitere Anweisung schreibt, in welcher man die Methode Console-WriteLine ein zweites Mal aufruft, wird der durch diese zweite Methode übergebene String in der nächsten Zeile auf der Konsole ausgegeben:
Du hast heute also bereits deine ersten Anweisungen mit C# geschrieben und die ersten wichtigen Grundlagen gelernt, um mit dem C# Programmieren richtig durchzustarten.
In den kommenden Beiträgen werden wir weiter in die spannende Programmiersprache C# eintauchen. Du wirst also noch alle weiteren Grundlagen lernen, die du brauchst, um deine ersten Programme schreiben zu können.