Upload
votuong
View
223
Download
0
Embed Size (px)
Citation preview
Leibniz Universität IT Services | Anja Aue
C# - Einführung in die Programmiersprache
C# - Einführung | 26.06.12 Seite 2
Bücher und Weblinks
Bücher: RRZN-Handbuch: C# - Einführung Richtig einsteigen: Programmieren lernen mit Visual C#
2010; Fahnenstich & Haselier; Microsoft Press Deutschland Weblinks:
http://www.dreamincode.net/forums/forum/84-c/ http://www.csharpcourse.com/ http://www.uni-trier.de/index.php?id=22777 http://www.guidetocsharp.de/Default.aspx http://www.informit.com/library/library.aspx?
b=STY_Csharp_24hours
C# - Einführung | 26.06.12 Seite 3
.NET Architektur
C# VB.NET
Common Language Specification (CLS)
….
. NET Framework
Betriebssystem
Vis
ual S
tudi
o
C# - Einführung | 26.06.12 Seite 4
C# ...
ist eine objektorientierte Programmiersprache. hat Ähnlichkeiten mit C / C++ und enthält Elemente der Java-
Programmierung. wurde von Microsoft für die .NET-Welt entwickelt. ist als ISO/IEC 2370 zertifiziert. arbeitet ab der Version 4.0 mit dem .NET Framework 4.0
zusammen.
C# - Einführung | 26.06.12 Seite 5
Common Language Specification (CLS) ...
definiert einen Satz von Regeln, die jede Programmiersprache in der .NET-Welt einhalten muss. Diese Regeln gelten nur für Typen, auf die von außen zugegriffen werden muss.
integriert Code und Komponenten von verschiedenen Programmiersprachen . NET-Welt.
ist eine Teilmenge des Common Type Systems. Das Common Type System beschreibt alle Typen in der .NET-Welt als Objekte.
C# - Einführung | 26.06.12 Seite 6
.NET Framework ...
ist eine Entwicklungsplattform für .NET. wurde von Microsoft im Jahre 2000 eingeführt. unterstützt die Entwicklung von Windows-Anwendungen und
XML Web-Services. wird im Verzeichnis %systemroot% \ Microsoft.Net \ Framework
gespeichert. %systemroot% ist standardmäßig das Verzeichnis „Windows“.
wird seit dem 12.04.2010 in der Version 4.0 ausgeliefert.
C# - Einführung | 26.06.12 Seite 7
Aufbau des .NET Framework
Base Class Library
ADO.NET WCFWFXML
WPF
Windows FormASP.NET
Common Language Runtime (CLR)
.NE
T F
ram
ewor
k C
lass
Lib
rary
C# - Einführung | 26.06.12 Seite 8
Common Language Runtime ...
stellt eine Laufzeitumgebung zur Verfügung, in der Anwendungen kontrolliert ablaufen.
verwaltet Code, egal in welcher Programmiersprache der .NET Welt.
ist die Schnittstelle zwischen den Programm und des Betriebssystems.
ist vergleichbar mit der virtuellen Maschine von Java.
C# - Einführung | 26.06.12 Seite 9
.NET Framework Class Library ist ...
ist eine Sammlung von Klassen, Werttypen und Schnittstellen. Siehe http://msdn.microsoft.com/de-de/library/gg145045%28v=vs.110%29.aspx.
enthält vordefinierte Methoden, um zum Beispiel auf eine Konsole zu schreiben.
kann von allen Programmiersprachen der .NET-Welt genutzt werden.
C# - Einführung | 26.06.12 Seite 10
Entwicklungsumgebungen
Das .NET Framework SDK ist ein kommandozeilenorientiertes Werkzeug.
Microsoft Visual Studio wird von Microsoft in Abhängigkeit von verschiedenen Kostenmodellen bereit gestellt.
SharpDevelop ist eine OpenSource-Entwicklung für das Betriebssystem Windows.
Das Projekt „Mono“ portiert die .NET-Welt für Mac-Rechner und das Betriebssystem Unix / Linux.
C# - Einführung | 26.06.12 Seite 11
Visual Studio 2010 ...
bietet eine vollständige Entwicklungsumgebung für die verschiedenen Sprachen und Anwendungen der .NET-Welt.
benötigt mindestens das Betriebssystem Windows XP Service Pack 3.
gibt es als Komplett-Paket in verschiedenen kostenpflichtigen Versionen ( siehe ...visualstudio/products/features.aspx )
gibt es für die verschiedenen Sprachen / Anwendung als kostenfreie Version ( siehehttp://www.microsoft.com/germany/express)
C# - Einführung | 26.06.12 Seite 12
Visual Studio Express starten
Icon auf dem Desktop. Start - Programme.
C# - Einführung | 26.06.12 Seite 13
Neues Projekt anlegen
Datei – Neues Projekt. Link Neues Projekt auf der Startseite.
C# - Einführung | 26.06.12 Seite 14
Dialogfenster „Neues Projekt“ ...
wird nach der Auswahl einer Programmiersprache in den kostenpflichtigen Versionen geöffnet.
zeigt in der Express Version sofort die verschiedenen Anwendungsmöglichkeiten an.
In diesem Kurs wird die Vorlage Konsolenanwendung und in einem späteren Kapitel Windows Forms-Anwendung mit einem Mausklick ausgewählt. Durch einen Klick auf die Schaltfläche OK wird in Abhängigkeit der gewählten Vorlage ein Projekt-Gerüst angelegt.
C# - Einführung | 26.06.12 Seite 15
Die Konsolenanwendung ...
arbeitet mit der MS Eingabeaufforderung zusammen. wird heute noch bei der Programmierung im Bereich „Server“
etc. eingesetzt. nutzt keine Dialogfenster.
C# - Einführung | 26.06.12 Seite 16
Projekt-Gerüst in Visual Studio Express
C# - Einführung | 26.06.12 Seite 17
Rahmen von Visual Studio Express
Jede Windows-Anwendung wird durch einen Rahmen begrenzt.
Durch Ziehen der Maus bei gedrückt gehaltener linker Maustaste wird das Fenster der Anwendung vergrößert oder verkleinert.
C# - Einführung | 26.06.12 Seite 18
Die Titelleiste von Visual Studio Express
zeigt den Namen des Projekts und die genutzte Visual Studio Version als Information für den Nutzer an.
enthält das Systemmenü der Anwendung am linken Rand. In dem Menü werden Befehle zur Veränderung des Fensters und Schließen der Anwendung angeboten.
bietet am rechten Rand Schaltflächen zum Minimieren (Icon in der Taskleiste), Verkleinern / Maximieren (Vollbild) und Schließen der Anwendung an.
C# - Einführung | 26.06.12 Seite 19
Menüleiste von Visual Studio Express
Datei. Befehle zum Öffnen und Speichern des Projekts. Bearbeiten. Ansicht. Symbolleisten und weitere Fensterboxen ein- oder
ausblenden. Projekt. Elemente dem Projekt hinzufügen. Eigenschaften des
Projekts einstellen. Debuggen. Ausführen des Programms. Daten. Datenquellen für das Projekt einbinden. Extras. Optionen der Anwendung. Fenster. Anordnung der Fenster am Bildschirm. Hilfe.
C# - Einführung | 26.06.12 Seite 20
Befehle in der Menüleiste ...
werden durch ein Klick auf den Kategorie-Namen in einem Menü angezeigt.
sind manchmal nur in Abhängigkeit einer bestimmten Aktion aktiv.
haben am rechten Rand einen schwarzen Pfeil zum Öffnen eines Untermenüs.
können manchmal mit Hilfe einer Tastatur-Kombination gestartet werden.
C# - Einführung | 26.06.12 Seite 21
Symbolleisten von Visual Studio Express ...
zeigen häufig genutzte Befehle aus der Menüleiste mit Hilfe eines kleinen Symbols an.
sammeln Befehle zu einem Thema. werden mit Hilfe des Menübefehls Ansicht – Symbolleisten
eingeblendet. haben am linken Rand einen Anfasser zum Verschieben der
Leiste. haben am rechten Rand eine Schaltfläche nach unten, um
Symbole ein- oder auszublenden.
C# - Einführung | 26.06.12 Seite 22
Befehle in der Symbolleiste ...
werden durch ein Klick auf die Symbolschaltfläche gestartet. sind manchmal nur in Abhängigkeit einer bestimmten Aktion
aktiv. haben am rechten Rand einen schwarzen Pfeil zum Öffnen
eines Untermenüs.
C# - Einführung | 26.06.12 Seite 23
Projektmappen-Explorer ...
zeigt den Inhalt der Projektmappe an. bildet das Verzeichnis einer Projektmappe im Windows
Explorer ab. ist die Schaltzentrale eines Projekts.
C# - Einführung | 26.06.12 Seite 24
… hat am oberen Rand Schaltflächen, um ...
das Eigenschaftenfenster zu dem aktiven Element einzublenden.
Ordner wie bin oder debug im Projektmappen-Explorer anzuzeigen.
die Ansicht zu aktualisieren. und bei Auswahl einer Datei mit der Endung „.cs“ kann der
dazugehörige Code angezeigt werden.
C# - Einführung | 26.06.12 Seite 25
Projektmappe ...
enthält beliebig viele Projekte und Metadaten zum Konfigurieren und Erstellen von ausführbaren Anwendungen,
entspricht dem Wurzelverzeichnis in Windows Explorer. wird in einer Datei mit der Endung „.sln“ gespeichert. Die
globalen Optionen der Projektmappe werden in einer Datei mit der Endung „.suo“ gespeichert.
C# - Einführung | 26.06.12 Seite 26
Projekt ...
enthält Ordner und Programmdateien zur Lösung eines bestimmten Problems.
wird in Abhängigkeit der gewählten Vorlage erstellt. kann aus mehreren Dateien bestehen. hat die Dateiendung „.csproj“. Das aktive Projekt wird im Projektmappen-Explorer fett
geschrieben.
C# - Einführung | 26.06.12 Seite 27
Startprojekt
Auswahl der Projektmappe. Projekt – Startprojekt festlegen.
C# - Einführung | 26.06.12 Seite 28
Eigenschaftenfenster ...
zeigt bei Auswahl eines Elements im Projektmappen-Explorer den Pfad und den Namen des Elements an.
zeigt Attribute von Steuerelementen in Windows Forms an.
C# - Einführung | 26.06.12 Seite 29
Arbeitsbereich der Konsolenanwendung
C# - Einführung | 26.06.12 Seite 30
Arbeitsbereich
Anzeige von Elementen aus einem Projekt auf Registerkarten. Jede Registerkarte zeigt am oberen Rand den Namen des
Elements an. Ein farbiger Reiter kennzeichnet die aktive Registerkarte. Mit einem Klick auf das Kreuz wird eine Registerkarte
geschlossen.
C# - Einführung | 26.06.12 Seite 31
Codefenster zeigt ...
in dem linken Kombinationsfeld alle Klassen an. in dem rechten Kombinationsfeld alle Methoden in der
gewählten Klasse. darunter den dazugehörigen Code an. Der Code wird wie in
einem Texteditor eingegeben und bearbeitet.
C# - Einführung | 26.06.12 Seite 32
Generiertes Startprogramm für eine Konsole
using System;using System.Collections.Generic;using System.Linq;using System.Text;
namespace ConsoleApplication1{ class Program { static void Main(string[] args) { } }}
C# - Einführung | 26.06.12 Seite 33
Anweisungen in C#
Jede Anweisung endet mit einem Semikolon. Anweisungen werden mit Hilfe von Operatoren, Operatoren und
Schlüsselwörtern aus C# erstellt.
C# - Einführung | 26.06.12 Seite 34
using ...
Definition eines Gültigkeitsbereichs mit Hilfe eines Namens. Klassen aus diesen Bereich können in dem Programm genutzt werden.
Die Groß- und Kleinschreibung wird bei der Angabe des Namens beachtet.
System enthält Methoden zur Ein- und Ausgabe von Daten in die Eingabeaufforderung.
System.Text enthält Methoden zum Bearbeiten von Zeichenketten. Mit Hilfe des Punktes wird die Hierarchie der Bibliotheken untereinander dargestellt.
C# - Einführung | 26.06.12 Seite 35
namespace ConsoleApplication1{ }
Festlegung eines eigenen Namensraums, der Bezeichner organisiert und deren Gültigkeit festlegt.
Der automatisch generierte Namen kann vom Entwickler geändert werden.
Der Namensraum beginnt und endet mit einer geschweiften Klammern.
C# - Einführung | 26.06.12 Seite 36
class Programm { }
Definition einer Klasse. Die Klasse beginnt und endet mit den geschweiften Klammern. Eine Klasse hat Attribute und Methoden.
C# - Einführung | 26.06.12 Seite 37
Klassenmethode Main ...
ist bei einer Konsolenanwendung der Startpunkt. beginnt und endet mit den geschweiften Klammern. bekommt die Befehlszeilenargumente in einem Feld von
Strings übergeben. Der Parameter wird durch die runden Klammern im Anschluss an den Namen der Methode angegeben.
ist statisch. Die Methode existiert exakt einmal. gibt keine Werte an den Aufrufer zurück.
C# - Einführung | 26.06.12 Seite 38
Code hinzufügen
Die Einfügemarke wird in eine leere Zeile zwischen den geschweiften Klammern der Methode Main gesetzt. Es wird Programmcode für die Methode Main eingefügt.
Die Einfügemarke wird in eine leere Zeile zwischen den geschweiften Klammern der Klasse gesetzt. Der Klasse können Attribute und Methoden hinzugefügt werden.
C# - Einführung | 26.06.12 Seite 39
Code in der Klasse
class Program{ static void Main(string[] args) { string person; Console.WriteLine("Eingabe eines Namens"); person = Console.ReadLine(); Console.WriteLine("Hallo {0}",person); Pause(); // Warten auf Tastendruck } static void Pause() { Console.WriteLine("Irgendeine Taste"); Console.ReadKey(true); }}
C# - Einführung | 26.06.12 Seite 40
Kommentare ...
werden im Code standardmäßig grün dargestellt. werden vom Compiler überlesen. bieten Informationen für den Entwickler. Einzeilige Kommentare beginnen mit zwei Schrägstrichen
C# - Einführung | 26.06.12 Seite 41
Methoden
static. Die Methode existiert nur einmal.
void. Die Methode hat keinen Rückgabewerte.
Der Methodennamen gibt Auskunft über die Funktionalität. In den runden Klammern können Parameter für die Methode
angegeben werden. Die Parameter werden für den ordnungsgemäßen Ablauf benötigt. Main bekommt Befehl der Kommandozeile übergeben.
In den eckigen Klammern folgt der Code der Methode. Methoden werden mit ihren Namen aufgerufen.
static void Main(string[] args) { }static void Pause() { }
C# - Einführung | 26.06.12 Seite 42
Variablen ...
können einen beliebigen Wert in einem bestimmten Format speichern.
In diesem Beispiel kann eine Zeichenkette in der Variablen gespeichert werden.
string person;
C# - Einführung | 26.06.12 Seite 43
Ein- und Ausgabe in dem Programm
Console.WriteLine("Text"). Textausgabe auf die Konsole. Die Ausgabe wird mit einem Zeilenumbruch beendet. Der auszugebende Text wird durch Anführungsstriche begrenzt.
Console.ReadLine() liest Text von der Konsole ein. Die Eingabe wird mit Hilfe der Eingabetaste abgeschlossen.
Console.ReadKey(true) wartet auf den Druck einer Taste.
Kommentare beginnen mit zwei Schrägstrichen. Der Compiler überliest diesen Text. Kommentare sind Hilfen für den Entwickler.
C# - Einführung | 26.06.12 Seite 44
Intellisense bei der Eingabe
C# - Einführung | 26.06.12 Seite 45
Projekt speichern
Datei – Alles speichern speichert das gesamte Projekt.
In dem ersten Textfeld wird der Name des Projekts eingegeben. Der Projektmappenname in dem dritten Textfeld wird automatisch angepasst.
In dem zweiten Textfeld kann der Pfad zum Projekt mit Hilfe der Schaltfläche Durchsuchen angegeben werden.
Standardmäßig wird ein Verzeichnis für die Projektmappe erzeugt.
C# - Einführung | 26.06.12 Seite 46
Projekt ausführen
Symbol Debugging starten oder F5 startet das Programm in Visual Studio.
Das Programm wird automatisiert Zeile für Zeile abgearbeitet.
C# - Einführung | 26.06.12 Seite 47
Ablauf bei „unmanaged“ Code
Code .cs .NET Compiler
Common Intermediate Language
Bytecode
C# - Einführung | 26.06.12 Seite 48
Ablauf bei „managed“ Code
Code .cs .NET Compiler
Common Intermediate Language
Just-In-Time-CompilerCLR
Maschinen-code
C# - Einführung | 26.06.12 Seite 49
Zeilennummer anzeigen
Extras – Optionen. Alle Einstellungsmöglichkeiten werden angezeigt.
Ordner Text-Editor – Alle Sprachen – Allgemein öffnen. Aktivierung des Kontrollkästchens Zeilennummer im Bereich
Anzeigen.
C# - Einführung | 26.06.12 Seite 50
Einzelschrittmodus nutzen
Debuggen – Einzelschritt oder F11 durchlaufen das Programm Zeile für Zeile.
F11 führt eine Zeile aus und wartet auf den nächsten Tastendruck.
C# - Einführung | 26.06.12 Seite 51
Anzeige von Fehlern
Ansicht – Weitere Fenster – Fehlerliste.
C# - Einführung | 26.06.12 Seite 52
Optionen für Visual Studio
Extras – Optionen. Aktivierung des Kontrollkästchen Alle Einstellungen anzeigen.
C# - Einführung | 26.06.12 Seite 53
Auswahl des Standard-Speicherortes
Extras – Optionen. Alle Einstellungsmöglichkeiten werden angezeigt.
Ordner Projekte und Projektmappen öffnen. Mit Hilfe der Schaltfläche „Drei Punkte“ rechts von dem Textfeld
Projektspeicherort kann der gewünschte Ort ausgewählt werden.
C# - Einführung | 26.06.12 Seite 54
Optionen für die Projektmappe
Auswahl der Projektmappe im Projekt-Explorer. Projekt – Eigenschaften.
C# - Einführung | 26.06.12 Seite 55
Optionen für das Projekt
Auswahl des Projekts im Projekt-Explorer. Projekt – [Name]-Eigenschaften.
C# - Einführung | 26.06.12 Seite 56
Assembly ...
enthält die kompilierten (übersetzten) Projektdateien. enthält Informationen zu den enthalten Typen. kann mehrere Module enthalten. ist versioniert. hat die Endung „.exe“ oder „.dll“.
C# - Einführung | 26.06.12 Seite 57
Assemblyinformationen
Die Eigenschaften des Projekts sind geöffnet.
Klick auf die Schaltfläche Assemblyinformationen... im Ordner Anwendung.