♦️
ICT-BZ: Modul 318 - Objektbasiert programmieren mit Komponenten
  • Intro
  • πŸ—“οΈKursplanung und Organisation
  • πŸ› οΈInfrastruktur und Tools
  • ❓FAQ
    • ❓.NET Desktop Development in Visual Studio nachinstallieren
    • ❓WinForms DataGridView
  • Tag 1
    • πŸ“–C# Grundlagen
    • πŸ’‘Γœbung C# Grundlagen
    • πŸ“–OOP Grundlagen
      • πŸ“–πŸ’‘ Exkurs: Objektdiagramm
    • πŸ’‘Methodik & Prozessmodelle
    • πŸ“–Vorgehensweisen
    • ❓Visual Studio & WinForms
    • πŸ’‘πŸ“– Aufgabensammlung
  • Tag 2
    • πŸ“–UI, UX, Usability
    • πŸ“–Analyse & Design
    • πŸ’‘Projektanforderungen analysieren
    • πŸ’‘Mockup Erstellen
  • Tag 3 - 4
    • πŸ“–Code QualitΓ€t
    • πŸ“–πŸ’‘ Coderichtlinien
    • πŸ“–Testing
      • ❓Testplan: Praxisbeispiel
      • ❓Testprotokoll: Praxisbeispiel
    • ❓Debugging
  • Projektarbeit
    • πŸ’‘Anforderungen und Dokumentation
      • SwissTransport API
    • πŸ› οΈProjektsetup
    • ❓Git Commit und Push in Visual Studio
    • πŸŽ“Bewertungsraster
    • 🚩Projektabgabe
      • πŸš©πŸ“– Binaries, Installer & GitHub Release
Powered by GitBook
On this page
  • πŸ’¬ Klassendiskussion
  • Sprachverwandtschaften
  • Eigenschaften von C#
  • πŸ’¬ Typsicherheit
  • Einsatzbereich
  • Desktop
  • Web
  • Mobile
  • IoT & Embedded
  • πŸ“– C# Syntax
  • ErgΓ€nzung: String Interpolation
Export as PDF
  1. Tag 1

C# Grundlagen

PreviousWinForms DataGridViewNextÜbung C# Grundlagen

Last updated 3 years ago

πŸ’¬ 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.

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

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.

ErgΓ€nzung: String Interpolation

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

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

Mit 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.

πŸ“–
Mono
Avalonia
Xamarin
656KB
03_CSharp-Syntax-Grundlagen.pdf
pdf
C# Syntax Grundlagen