Arbeiten mit .NET/ Inhaltsverzeichnis
Bei diesem Projekt handelt es sich um eine Buchreihe zum Arbeiten mit dem .NET Framework. Die Bücher befassen sich mit jeweils einem Teilbereich der .NET-Programmierung.
Einführung
BearbeitenIn Buch Allgemeines erhalten Sie einführende Informationen über das .NET Framework und die Programmierung.
- Wozu eigentlich
In diesem Kapitel besprechen wir ein paar Vorteile, warum die Entwickler von Anwendungen mit .NET sinnvoll und erfolgreich programmieren können. - Lesehinweise
Dies informiert darüber, in welcher Reihenfolge die verschiedenen Bücher und Kapitel durchgearbeitet werden können.
Dieses Buch enthält allgemeine Hinweise zum .NET Framework (Ziel, Verwendung, Versionen) sowie zur Programmierung dafür. Diese Hinweise sind nützlich, wenn man die Zusammenarbeit der verschiedenen Teile verstehen will. Zum "Arbeiten mit .NET" genügt es in der Regel, diese kurz durchzulesen und sich nur mit einzelnen Abschnitten (z.B. einer IDE oder einem Download) genauer zu befassen.
Die folgenden Kapitel werden immer wieder benutzt, ohne dass die Verweise ständig wiederholt werden:
- .NET-Namenskomventionen – Regeln, nach denen Variable jeder Art bezeichnet werden sollen
- .NET-Hilfesystem – Tipps dafür, wo und wie Erläuterungen zum .NET Framework zu finden sind
Grundlagen
BearbeitenDie folgenden Bücher sind grundlegend für das Arbeiten mit .NET. Bitte beachten Sie, dass beim Lernen einer der Programmiersprachen immer wieder Fragen des Frameworks angesprochen werden und umgekehrt.
Das .NET-Framework
BearbeitenIn diesem Buch wird behandelt, wie das .NET Framework ins Betriebssystem „eingebunden“ wird und .NET-Programme ausführt. Außerdem bringt es einen Überblick über die Klassenbibliotheken.
Der Teil Basistechnologien behandelt einige Themen, die bei allen .NET-Programmiersprachen äußerst wichtig sind und sich sehr ähneln. In den Einzelbüchern (C#, VB.NET usw.) ist immer eine Zusammenfassung enthalten; die Einzelheiten sind hier zu finden.
Bei allen anderen Themen stöhnen Sie mit Sicherheit über zuviel Theorie. Besser ist es, einzelne Abschnitte durchzugehen, wenn Sie sich mit einem speziellen Thema gezielt befassen wollen oder müssen.
Objektorientierte Programmierung (OOP) unter .NET
BearbeitenDas .NET-Framework wurde vollständig nach den Prinzipien der objektorientierten Programmierung entwickelt. In diesem Buch werden diese Prinzipien erläutert, soweit es für das Arbeiten mit .NET erforderlich ist. Dieses Buch ersetzt kein OOP-Lehrbuch, sondern ist nur eine zielorientierte Einführung.
Um mit .NET arbeiten zu können, benötigt man eine der dazu passenden Programmiersprachen. Es ist nützlich, wenn man eine fremde Sprache lesen kann; dann kann man – weil alles mit den .NET-Klassen arbeitet – sich fremden Quelltext relativ einfach in die eigene Sprache übertragen. Es ist aber beileibe nicht notwendig.
Hier gibt es Einführungen in die verschiedenen Sprachen, die mit .NET arbeiten:
C#-Lehrbuch (C-Sharp)
BearbeitenDieses Buch enthält einen Programmierkurs für die Sprache C# (gesprochen: C-Sharp). Es behandelt alles, was zur Arbeit mit dem .NET Framework in C# erforderlich ist.
C++/CLI für .NET
BearbeitenMit C++/CLI wird eine von Microsoft entwickelte Variante der Programmiersprache C++ bezeichnet, die den Zugriff auf die .NET-Laufzeitumgebung mit speziellen Spracherweiterungen ermöglicht.
Bitte lassen Sie sich nicht verwirren: Weil der Schrägstrich in Kapitelnamen von Wikibooks eine besondere Bedeutung hat, benutzen wir dafür die Schreibweise "C++ für .NET". Damit ist immer die Variante C++/CLI gemeint.
Visual Basic .NET
BearbeitenDabei handelt es sich um eine Weiterentwicklung des "klassischen" Visual Basic, die auf das .NET Framework angepasst und damit vollständig objektorientiert ist.
- Lehrbuch
- 0. Einführung
- 1. Programmiertechniken
- 2. Konzepte der objektorientierten Programmierung
- 3. Einstieg in Windows Forms
- 4. Objektorientierte Programmierung
- 5. Schlusswort
- Anhang: Schlüsselwörter
- Druckversionen
Etwas Theorie
BearbeitenIn diesem Buch werden einzelne Kapitel aus den Grundlagen ausführlicher behandelt. Dabei werden die Inhalte genauer besprochen, als es für die Praxis eines Programmierers notwendig ist, und es wird auf Hintergründe eingegangen, die dem tieferen Verständnis dienen.
Weitere Sprachen
BearbeitenAuch für verschiedene der folgenden Sprachen könnte es Bücher geben:
- Boo
- Delphi.Prism
- F#
- J#
Themen
BearbeitenIn den folgenden Büchern werden verschiedene Einzelthemen behandelt. Jeder dieser Bereiche kann unabhängig von anderen benutzt werden. Die Kenntnis der .NET-Grundlagen und mindestens einer Programmiersprache wird vorausgesetzt.
Zugriff auf Dateien
BearbeitenDieses Buch behandelt den Zugriff auf verschiedene Arten von Dateien: Textdateien, XML, Binärdateien, Konfigurationen, Registry usw.
Entwurfsmuster
BearbeitenDieses Buch behandelt verschiedene fortgeschritte Programmiertechniken, mit denen bestimmte Anwendungen konzipiert werden können.
LINQ
BearbeitenDieses Buch behandelt die Verarbeitung von Daten mit LINQ.
Weitere Themen
BearbeitenFür die folgenden Bereiche sind ebenfalls eigene Bücher sinnvoll.
- Windows-Forms
- WPF / Silverlight
- WebForms (ASP.NET, ASP.NET MVC)
- Arbeiten mit lokalen Netzwerken
- Multithreading
- WebServices (ASMX), Remoting
- Windows Communication Foundation (WCF)
- Arbeiten mit Datenbanken (ADO.NET und Entity Framework)
- LINQ
- LINQ to Objects
- LINQ to DataSets (ADO.NET Disconnected Layer)
- LINQ to SQL (ADO.NET Connected Layer)
- LINQ to XML
- LINQ to Entities (Entity Framework)
- Erweitern von LINQ (Monads, Custom Extension-Methods)
- Multimedia / Grafik
- Lokalisierung
Ergänzung für Autoren
BearbeitenInformation und Diskussion
BearbeitenBei diesem Projekt handelt es sich um eine Buchreihe zum Arbeiten mit dem .NET Framework. Diskussionen sollten je nach Themenbereich getrennt geführt werden. Bitte beachtet auch die Arbeitsanleitung für Autoren unter Arbeiten mit .NET/ Gestaltung. |
Zur Buchreihe
BearbeitenWeitere Hinweise dazu finden sich hier:
- Inhaltsverzeichnis liefert die Übersicht über die Gliederung der Reihe sowie die Inhalte der einzelnen Bücher.
- Projektorganisation liefert Hinweise für Autoren zur Mitarbeit für diese Buchreihe.
- Gestaltung gibt eine Arbeitsanleitung für Autoren und erläutert, wie die Kapitel der einzelnen Bücher aussehen sollten, damit der ähnliche Eindruck den Zusammenhang der Reihe deutlich macht.
Zu jeder dieser Seiten gibt es eine Diskussionsseite zur Besprechung von Fragen.
Zu jedem Buch
Weitere Hinweise zu einem einzelnen Buch finden sich hier:
- Auf Diskussion:<Buchname> werden andere allgemeine Dinge besprochen.
- Inhaltsverzeichnis enthält die Gliederung des Buches.
- Projektorganisation liefert Hinweise für Autoren zur Mitarbeit an diesem Buch.
Zu jeder dieser Seiten gibt es eine Diskussionsseite zur Besprechung von Fragen. – Auf diese Seiten gehören Angaben, die sich nur auf dieses Buch beziehen. Was die gesamte Reihe oder mehrere Bücher betrifft, gehört zu den Hinweisen zur Buchreihe.
Mehrfach verwendete Kapitel
BearbeitenHier werden Kapitel aufgeführt, die in mehrere Bücher eingebunden werden können.
- Programmcode, der mehrfach benutzt wird:
- Einzelne Kapitel, die für mehrere Programmiersprachen geeignet sind:
- Arbeiten mit .NET: Sprachen: Grundlagen/ Die Main-Methode
- Arbeiten mit .NET: Sprachen: Grundlagen/ Die Klasse Program
- siehe auch den Abschnitt Datentypen
Die Kapitel dieses Abschnitts gehören sowohl zum OOP-Buch als auch zu jeder Programmiersprache.
- Der Vorteil von Objekten
- Ein erster Einblick
- Die Definition einer Klasse
- Ein bestimmtes Objekt
- Objekte benutzen
- Ein Basiskonstruktor
- Weitere Konstruktoren
- Ein Objekt zerstören
- Automatisch zerstören mit using
- Interne Felder
- Eigenschaften
- Methoden
- Ereignisse
- Zugriffsrechte
Die Kapitel dieses Abschnitts gehören zu jeder Programmiersprache. Soweit unter Arbeiten mit .NET: Grundlagen: Das Framework noch ein Abschnitt "Basistechnologien" eingebaut wird, gehören sie auch dorthin.
Die Kapitel dieses Abschnitts gehören zu jeder Programmiersprache. Sie sind wahrscheinlich auch in anderem Zusammenhang von Bedeutung.
- try-catch
- Exceptions
Materialien
BearbeitenIdeensammlung
BearbeitenHier stehen kurze Informationen, die noch "irgendwo" eingebaut werden können. Meistens gibt es das betreffende Kapitel noch nicht, aber die Informationen sollen nicht vergessen werden.
- Klassendefinition
Attribute sind bisher noch nirgends vorgesehen. Passen sie besser zu .NET oder zu den Programmiersprachen? Da sie unterschiedlichste Bedeutung haben, brauchen wir sicherlich mehrere Kapitel dafür.
- Groß- und Kleinschreibung
Das muss für jede Programmiersprache ausdrücklich erwähnt werden: zulässig oder nicht? Wie wird üblicherweise gearbeitet? Es steckt in den Namenskonventionen und bei Variablen; aber wo sollte gezielt darauf hingewiesen werden? Das muss doch ziemlich früh erfolgen, aber wo?
- Für das Kapitel "if-Verzweigungen"
Wenn der zu bearbeitende Teil nur aus einer einzigen Anweisung besteht, können die Klammern entfallen. Der folgende Ablauf ist mit dem vorstehenden Code identisch:
if (DateTime.Now.Hour < 12)
Console.Write("Guten Morgen, ");
else if (DateTime.Now.Hour < 18)
Console.Write("Grüß Gott, ");
else
Console.Write("Guten Abend, ");
Wir empfehlen aber, die Anweisungen zu if immer als Block mit {...} zu definieren:
- Es kann keine Fehler geben, wenn Klammern versehentlich vergessen werden.
- Spätere Änderungen des Codes durch weitere oder andere Anweisungen sind einfacher.
- Der Code ist klarer gegliedert.
Auch hier gilt: Ein "schöner" Code ist nicht immer kürzer, sondern er sollte gut lesbar sein.
- Für das Kapitel "switch-Verzweigungen"
int i = 3;
switch(i)
{
case 0:
// mach etwas für i=0
goto case 3;
case 1:
case 2:
// mach etwas für i=1 oder i=2
break;
case 3:
// mach etwas für i=3 und auch für i=0
break;
default:
// mach etwas in allen anderen Fällen
break;
}
Der komplette Code zu switch ist als Block in {...} zusammenzufassen. Jeder einzelne Fall wird mit case und einem Wert begonnen. Mehrere Werte können hintereinander abgefragt werden, aber nur einzeln (nicht als Wertebereich "von 10 bis 20"). Die Anweisungen für jeden Wert müssen mit break (oder einer anderen sinnvollen Sprunganweisung) beendet werden. Der default-Fall gilt für alle anderen, nicht ausdrücklich genannten Fälle. Die Reihenfolge der Fallunterscheidungen spielt übrigens keine Rolle.
- Für DateTime.ToString
Aufgabe: Hole den Wochentag mit dem lokalen Text.
Lösung 1 ist enthalten in Arbeiten_mit_.NET:_Grundlagen:_Datentypen/_Andere_Typen:
d0.ToString("dddd")
Lösung 2:
DateTime aday = DateTime.Now; string dayName = CultureInfo.CurrentCulture.DateTimeFormat.GetDayName( CultureInfo.CurrentCulture.Calendar.GetDayOfWeek(aday));
Veraltete Artikel
BearbeitenHier stehen Kapitel aus früheren Büchern zur Verfügung, die inzwischen gelöscht wurden. Diese Kapitel können bei Bedarf und Interesse übernommen und an passender Stelle eingearbeitet werden oder auch gelöscht werden, wenn der Inhalt verwendet worden ist.
- Einleitung
- Ein Beispielprogramm ehemals als "Spielwiese" bezeichnet
- Datentypen Details
- Konstanten
- Zugriffsmodifikatoren
- Dieses Buch ist noch vollständig erhalten; keine Kapitel wurden ausgelagert.