Einige Hinweise zu den C#-Beispielen

 

Alle Beispiele dieser Website wurden mit dem C#-Compiler der Firma Microsoft aus der Visual Studio-Entwicklungsumgebung erstellt und getestet.

Bezüglich der benutzten C#-Version bedarf dies einiger Erläuterungen: Leider muss man akzeptieren, dass die Sprache C# seit ihrem Erscheinen im Jahre 2000 (ECMA-Norm 334 „C# Language Specification“) zahlreichen Modifikationen und größtenteils Ergänzungen unterworfen wurde. Aktuell notieren wir Version 6.0, die mit Visual Studio 2015 zur Auslieferung gelangt.

Für diese Website sind die Versionen 1.0 bis 3.0 relevant. Neben dem zentralen Sprachkern (C# 1.0) und wesentlichen Erweiterungen wie zum Beispiel dem Konzept der Generics (C# 2.0) kommt in der einen oder anderen Übung auch LINQ („Language Integrated Query“, C# 3.0) zum Einsatz. Wie bei der Rubrik „C++“ spielt auch in dieser Rubrik das algorithmische Durchdringen von Problemstellungen die Hauptrolle. Sprachliche Tuningmaßnahmen ab Version C# 4.0 und höher gehen da am eigentlichen Ziel dieser Website vorbei und bleiben deshalb größtenteils unberücksichtigt. Zusammenfassend kann man sagen, dass die vorgestellten Lösungen allesamt mit einem C# 3.0-kompatiblen Compiler zum Laufen gebracht werden können. Da in vielen Beispielen LINQ nicht verwendet wird, genügt dann sogar ein zur Version 2.0 kompatibler Übersetzer.

Die FCL (Framework Class Library) findet natürlich immer dann Verwendung, wenn sich die Aufgabenstellung mit ihrer Hilfe vereinfachen lässt. Die Klassen aus den FCL-Namensräumen wie etwa System und System.Collections, um nur zwei von ihnen exemplarisch zu nennen, werden intensiv eingesetzt.

Für die Bereitstellung der Beispielprogramme verweise ich auf meinen GitHub-Account https://github.com/peterloos. Zusätzlich achte ich darauf, dass pro Fallstudie alle Quellcodeanteile veröffentlicht sind, so dass es mit wenig Aufwand möglich sein sollte, das Beispielprogramm unter Beachtung der obigen Hinweise zum C#-Versionskonzept zusammenzubauen. Sollte eine Fallstudie mit den bereitgestellten Informationen partout nicht generierbar sein, dürfen Sie mir gerne eine entsprechende Nachricht zukommen lassen.