πŸ“–C# Grundlagen

πŸ’¬ Klassendiskussion

  • Welche Sprachen kennt ihr?

  • Wie unterscheiden sie sich?

    • Syntax

    • Kompiliert vs. Interpretiert -> Was bedeutet das?

    • Objektorientiert vs. Prozedural -> Was ist der Unterschied?

  • Welches ist "die beste" Sprache?

Sprachverwandtschaften

Viele Sprachen haben sehr Γ€hnliche Syntax. Nachfolgend stehen einige Konstrukte von C/C++, Java, VB und C# im Vergleich.

Eigenschaften von C#

πŸ’¬ Typsicherheit

// Beispiel 1
int intNumber = 12000;
long longNumber = intNumber;
// Beispiel 2
long longNumber = 12000;
int intNumber = longNumber;

Funktionieren die beiden Beispiele? Warum? Warum nicht?

Einsatzbereich

C# ist sehr vielseitig einsetzbar. FrΓΌher war es eher auf Desktopanwendungen fΓΌr die Windowsplattform fokussiert, heute ist es mit .NET Core universell einsetzbar.

Desktop

Mit WinForms, WPF oder Konsolenanwendungen kΓΆnnen mit C# und dem .NET Framework seit eh und je Desktopanwendungen entwickelt werden. Sie sind noch immer weit verbreitet.

Mit Frameworks wie Mono und Avalonia kΓΆnnen auch Desktop Apps fΓΌr Linux und macOS in C# entwickelt werden.

Web

Seit Microsoft .NET Core lanciert hat, welches neben Windows auch unter Linux und macOS lΓ€uft, eignet sich C# noch mehr fΓΌr die Programmierung von Web-Backends und REST APIs.

Mobile

Mit Xamarin kΓΆnnen mobile Apps fΓΌr Android und iOS in C# entwickelt werden. FrΓΌher kostete eine Lizenz etwa CHF 1500.- pro Entwickler pro Jahr. Das war vielen kleineren Herstellern zu viel. Seit Microsoft Xamarin 2016 aufgekauft hat, steht es den Entwicklern kostenlos zur VerfΓΌgung und wird von Microsoft selbst weiterentwickelt. Damit entwickelt man sogenannte Cross-Platform Native Apps. Die Apps werden zu plattformspezifischem Maschinencode kompiliert und laufen auf den Plattformen dann wie native Apps.

IoT & Embedded

Da .NET Core sogar auf ARM Prozessoren lΓ€uft, kann es auch fΓΌr die Entwicklung auf kleinen Prozessoren wie dem Raspberry Pi verwendet werden. Dies ermΓΆglicht die Realisation vieler IoT Anwendungen mit C#.

πŸ“– C# Syntax

Lies das folgende Dokument (ab Kapitel 2.) durch, um deine Kenntnisse mit der C# Syntax aufzufrischen.

C# Syntax Grundlagen

ErgΓ€nzung: String Interpolation

var i = 5;
var s = $"Die Zahl ist {i}.";

Last updated