C# - Überblick

Willkommen, angehende Programmierer! Als Informatiklehrer mit jahrelanger Erfahrung freue ich mich darauf, Euch durch die aufregende Welt von C# zu führen. Macht Euch keine Sorgen, wenn Ihr noch nie eine Zeile Code geschrieben habt – wir beginnen ganz am Anfang und bauen Euer Wissen schrittweise auf. Tauchen wir ein!

C# - Overview

Was ist C#?

C# (ausgesprochen "C sharp") ist eine moderne, objektorientierte Programmiersprache, die von Microsoft entwickelt wurde. Sie ist darauf ausgelegt, einfach, leistungsstark und flexibel zu sein, was sie zu einer hervorragenden Wahl für Anfänger und erfahrene Entwickler gleichermaßen macht.

Stellen Euch C# als Schweizer Army Knife für Programmierer vor – es kann fast alles! Von der Erstellung von Desktopanwendungen über die Erstellung von Websites bis hin zur Entwicklung von Spielen, C# hat Euch abgesichert.

Eine kurze Geschichte

C# wurde Anfang der 2000er Jahre geboren, von Anders Hejlsberg (wenn Ihr mich fragt, ein Programmiergenie) und seinem Team bei Microsoft geschaffen. Sie wollten die Leistungsfähigkeit von C++ mit der Einfachheit von Visual Basic kombinieren, und voilà – C# war geboren!

Warum sollte man C# lernen?

  1. Vielseitigkeit: Wie bereits erwähnt, kann C# für verschiedene Arten von Anwendungen verwendet werden.
  2. Grosse Community: Es gibt eine riesige Community von C#-Entwicklern, die Euch helfen können.
  3. Arbeitschancen: Viele Unternehmen verwenden C#, daher kann das Lernen dieser Sprache Türen zu aufregenden Karriereaussichten öffnen.
  4. Anfängerfreundlich: Trotz seiner Leistungsfähigkeit ist C# relativ einfach zu erlernen, insbesondere mit einem freundlichen Guide wie mir!

Euer erstes C#-Programm

Lassen wir uns Euer erstes C#-Programm schreiben! Macht Euch keine Sorgen; es wird einfach und spaßig sein.

using System;

class HelloWorld
{
static void Main()
{
Console.WriteLine("Hello, World!");
}
}

Lassen wir das auseinandernehmen:

  1. using System; lässt unser Programm wissen, dass es das System-Namespace verwenden soll, das grundlegende Funktionalitäten enthält.
  2. class HelloWorld definiert eine Klasse namens HelloWorld. Denkt Euch eine Klasse als einen Behälter für unseren Code.
  3. static void Main() ist der 起点 unseres Programms. Jedes C#-Programm braucht eine Main-Methode.
  4. Console.WriteLine("Hello, World!"); gibt den Text "Hello, World!" in der Konsole aus.

Wenn Ihr dieses Programm ausführt, werdet Ihr "Hello, World!" auf dem Bildschirm sehen. Gratulation! Ihr habt gerade Euer erstes C#-Programm geschrieben.

Starke Programmierfunktionen von C

C# ist vollgepackt mit leistungsstarken Funktionen, die es zum Vergnügen machen zu arbeiten. Lassen wir uns einige dieser Funktionen ansehen:

1. Objektorientierte Programmierung (OOP)

C# ist um das Konzept von "Objekten" aufgebaut. Denkt Euch ein Objekt als eine virtuelle Darstellung einer realen Weltentität. Zum Beispiel, wenn wir ein Spiel erstellen, könnten wir Objekte für Spieler, Gegner und Gegenstände haben.

Hier ist ein einfaches Beispiel einer Klasse, die ein Auto darstellt:

public class Car
{
public string Make { get; set; }
public string Model { get; set; }
public int Year { get; set; }

public void StartEngine()
{
Console.WriteLine("Vroom! The car is starting.");
}
}

In diesem Beispiel haben wir eine Car-Klasse mit Eigenschaften (Make, Model, Year) und einer Methode (StartEngine) definiert. Wir können ein Car-Objekt wie folgt erstellen und verwenden:

Car myCar = new Car();
myCar.Make = "Toyota";
myCar.Model = "Corolla";
myCar.Year = 2022;
myCar.StartEngine(); // Ausgabe: Vroom! The car is starting.

2. Typsicherheit

C# ist eine statisch typisierte Sprache, was bedeutet, dass Ihr den Typ einer Variablen angeben müsst, bevor Ihr sie verwendet. Dies hilft dabei, Fehler frühzeitig zu fangen und macht Euren Code zuverlässiger.

int age = 25; // age kann nur ganzzahlige Werte enthalten
string name = "John"; // name kann nur Text enthalten
bool isStudent = true; // isStudent kann nur true oder false sein

3. Müllsammlung

In C# müsst Ihr Euch nicht darum kümmern, Speicher freizugeben, wenn Ihr ihn nicht mehr verwendet. Die Sprache hat einen integrierten Müllsammler, der automatisch ungenutzte Objekte bereinigt, was die SpeicherVerwaltung zum Kinderspiel macht.

4. LINQ (Language Integrated Query)

LINQ ist eine leistungsstarke Funktion, die es Euch ermöglicht, Daten mit einer SQL-ähnlichen Syntax abzufragen und zu manipulieren. Es ist wie eine Superkraft, um mit DatenSammlungen leicht zu arbeiten!

List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var evenNumbers = numbers.Where(n => n % 2 == 0);
foreach (var num in evenNumbers)
{
Console.WriteLine(num); // Ausgabe: 2, 4, 6, 8, 10
}

5. Asynchrone Programmierung

C# macht es einfach, asynchronen Code zu schreiben, was es Eurem Programm ermöglicht, mehrere Aufgaben gleichzeitig auszuführen, ohne zu frieren.

async Task DownloadFileAsync(string url)
{
using (var client = new HttpClient())
{
string content = await client.GetStringAsync(url);
Console.WriteLine($"Downloaded {content.Length} characters");
}
}

Methoden in C

Methoden sind wie die Verben der Programmierung – sie sind, wo die Aktion stattfindet! Lassen wir uns einige häufige Methodentypen in C# ansehen:

Methodentyp Beschreibung Beispiel
Instanz-Methode Gehört zu einer ObjektInstanz myCar.StartEngine();
Statische Methode Gehört zur Klasse selbst Math.Round(3.14);
Void-Methode Gibt keinen Wert zurück void PrintMessage() { ... }
Rückgabemethode Gibt einen Wert zurück int Add(int a, int b) { return a + b; }
Asynchrone Methode Wird asynchron ausgeführt async Task DownloadFileAsync() { ... }
Erweiterungsmethode Fügt Funktionionalität zu bestehenden Typen hinzu string.IsNullOrEmpty(myString)

Schlussfolgerung

Gratulation! Ihr habt gerade Eure ersten Schritte in die Welt der C#-Programmierung getan. Wir haben die Grundlagen behandelt, von der Erstellung Eures ersten "Hello, World!"-Programms bis zum Verständnis einiger leistungsstarker Funktionen von C#.

Denkt daran, das Lernen zu programmieren ist wie das Lernen einer neuen Sprache – es dauert Zeit und Übung. Lass Euch nicht entmutigen, wenn nicht alles sofort klar wird. Experimentiert, schreibt Eure eigenen Programme und vor allem: Habt Spaß!

In unserem nächsten Unterricht tauchen wir tiefer in die C#-Syntax ein und fangen an, komplexere Programme zu erstellen. Bis dahin, weiter codieren und neugierig bleiben!

Credits: Image by storyset