In diesem Seminar wird C# 4.0 und die Integration in Visual
Studio 2010 umfassend und kompakt vorgestellt. Es richtet sich vor allem an Programmierer
mit C++-Erfahrung und zeigt die Unterschiede zwischen C# und C++.
Die Inhalte können an die Wünsche der Teilnehmer angepasst
werden.
|
Zielgruppe:
|
C++-Programmierer
und Software-Entwickler, die den vollen Umfang von C# lernen wollen. |
|
|
Voraussetzungen:
Gute Kenntnisse und mehrjährige Erfahrung in C++ |
|
|
Vortrag
mit vielen Übungen, in denen die Teilnehmer praxisnahe Programme entwickeln. |
|
Manuskript: |
Ausführliche
und detaillierte Schulungsunterlagen (ca. 200 Seiten) |
|
Ort
und Zeit: |
Dieses
Seminar wird als Firmenseminar (inhouse) angeboten. |
|
Dauer: |
5 Tage |
|
Dozent: |
Prof. Richard Kaiser führt
seit vielen Jahren Seminare zu den Themen Programmierung/Software-Entwicklung
für Firmen durch (Referenzen).
Er ist der Verfasser der Bücher „C++ mit
Microsoft Visual C++ 2008“ und „C++ mit dem
Borland C++Builder“ und ist Mitglied im DIN
Normierungsausschuss Informationstechnik NI-22. |
Kontakt: training @ rkaiser . de
, www.rkaiser.de
R. Kaiser, Schwärzlocher Straße 53, 72070 Tübingen, Tel. 07071-41598
Ein einführendes Beispiel
Der Quelltexteditor und IntelliSense
Ein- und mehrzeilige Textboxen, Label
ListBoxen und ComboBoxen
Buttons und Ereignisse
CheckBoxen, RadioButtons, GroupBox und Panel
Hauptmenüs und Kontext-Menüs
Standarddialoge
Variablen: Feld- und Instanzvariablen, Lokale Variablen,
Typ-Inferenz mit var
Ganzzahldatentypen (int, char usw.), implizite
Konversionen, checked Kontext
Der Datentyp bool
Gleitkommadatentypen: float, double und Decimal (ein
präziser Gleitkommatyp)
Elementare Anweisungen (if, for, while usw.)
Der integrierte Debugger
Funktionen, Werte-, ref- und out-Parameter, Default-Argumente,
benannte Parameter
Einfache Verweisklassen, Instanz-Elemente, Garbage
Collection und statische Elemente
Die Verwendung der .NET-Bibliotheken (z.B. Math)
Gleitkommadatentypen, Decimal für
exakte kaufmännische Rechnungen
Konstanten und readonly
Feldvariable
Wertetypen, Werte- und Verweissemantik, Aufzählungstypen
Die String-Klasse string
Überladene Methoden und Operatoren
Assemblies – Anwendungen und DLLs
Namensbereiche
Präprozessor-Direktiven
Ausdrücke
Eindimensionale Arrays und die foreach-Anweisung
Array-Funktionen für Verzeichnisse und Dateien
Die Basisklasse Array
Parameter-Arrays
Sequentielle Collection-Klassen (List<T>, Queue<T>,
LinkedList<T>)
Generische Dictionaries, HashSet<T> und SortedSet<T>
Binärdateien und Textdateien
XML-Dateien
Serialisierung mit BinaryFormatter. SoapFormatter und XmlSerializer
Felder und Methoden
Der Gültigkeitsbereich von Klassenelementen
Objekte, Datenkapselung und die Zugriffsrechte private und public
Datenkapselung mit Properties (Eigenschaften)
Der Aufruf von Methoden und der this-Verweis
Konstruktoren, der Standardkonstruktor,
Objektinitialisierer, this-Konstruktorinitialisierer
Finalisierer
Statische Elemente, Konstruktoren und Klassen
OO-Analyse und Design: Der Entwurf von Klassen
Die Elemente von abgeleiteten Klassen
Zugriffsrechte auf die Elemente von Basisklassen
Die Basisklasse System.Object
und ihre Methoden
Vererbung bei Formularen in Forms-Anwendungen
OO-Design: Vererbung und „ist ein“-Beziehungen
OO-Design: Komposition und „hat ein“-Beziehungen
Konversionen zwischen abgeleiteten
Klassen
Vererbung bei Werteklassen
Virtuelle Funktionen (new und
override), späte Bindung und
Polymorphie
Abstrakte Klassen und Methoden
Typprüfungen mit is und Typkonversionen mit as
Versiegelte (sealed) Klassen und Methoden
Die try-Anweisung
Die Basisklasse Exception
Einige vordefinierte Exceptions
throw-Anweisungen
Exceptions und Intellisense
Selbstdefinierte Exception-Klassen
Die Freigabe von Ressourcen, try-finally und die using-Anweisung
Die Protokollierung von Exceptions in einem EventLog
Die Definition und Implementation
Beispiele: IComparable,
IEnumerable, IClonable, IFormatable
Delegat-Typen und –Instanzen
Ereignisse (events)
Selbst definierte Komponenten und ihre Ereignisse
Anonyme Methoden
Lambda-Ausdrücke
Laufzeit-Typinformationen der Klasse Type
Reflektion mit der Klasse Assembly
Dynamisch erzeugte Datentypen und Plugins
Vordefinierte Attribute
Selbstdefinierte Laufzeitattribute
Generische Klassen
Typparameter-Einschränkungen (Constraints)
Aus XML-Dateien Hilfedateien im CHM-Format erzeugen
Multithreading mit der Klasse BackgroundWorker
Ereignisbasierte asynchrone Programmierung
Sleep und Threads
Kritische Abschnitte und die Synchronisation von Threads
Die Visual
Studio Tools für Office 2003/2007/2010
Microsoft.Office.Interop
Aus XML-Dateien Hilfedateien im CHM-Format erzeugen
Stand: 1.1.2012