Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:

Ähnliche Präsentationen


Präsentation zum Thema: "Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:"—  Präsentation transkript:

1

2 Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle: http://msdn.microsoft.com /en- us/library/zw4w595w.aspx http://msdn.microsoft.com /en- us/library/zw4w595w.aspx.NET Framework 4.0 siehe http://msdn.microsoft.com/en- us/library/ff361664(v=VS.100).aspx http://msdn.microsoft.com/en- us/library/ff361664(v=VS.100).aspx bzw..NET Framework 4.5 siehe http://msdn.microsoft.com/en- us/library/ff361664.aspx http://msdn.microsoft.com/en- us/library/ff361664.aspx Entwicklungsumgebung Visual Studio 2010 bzw. 2012: http://msdn.microsoft.com/en- us/vstudio/

3 Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 3 C#-Grundlagen s.a. http://msdn.microsoft.com/en-us/library/z1zx9t92.aspx http://msdn.microsoft.com/en-us/library/z1zx9t92.aspx Objektorientierte Sprache (keine Mehrfachvererbung, aber es können mehrere Schnittstellen implementiert werden) Klasse Object ist Wurzel aller Klassen Interfaces Properties (get/set) Garbage Collector Generische Methoden und Typen, Iteratoren Delegates Attribute (Metadaten zu Typen) Zeiger möglich, aber nicht unbedingt üblich Keine Headerdateien

4 Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 4 Quelle: http://msdn.microsoft.com/en-us/library/z1zx9t92.aspxhttp://msdn.microsoft.com/en-us/library/z1zx9t92.aspx Quellcode wird beim Kompilieren in einen Intermediate Language (IL)-Code (sprachunabhängig) übersetzt und mit Ressourcen und Metadaten etc. in eine ausführbare Datei (Assembly) gespeichert. Bei der Ausführung wird die Assembly (Zwischencode) just-in- time durch die CLR in die Maschinensprache der CPU übersetzt.

5 Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 5 C# (1): Klassen public class K { public string Zeichenkette; public K() { Zeichenkette = " blabla " ; } public void Methode() { … } } Eigenschaften (properties) public string Bezeichnung { get { return Zeichenkette; } set { Zeichenkette = value; } } Vererbung (nur bei Klassen, nicht bei struct ) und Polymorphismus siehe http://msdn.microsoft.com/en-us/library/ms173149.aspx http://msdn.microsoft.com/en-us/library/ms173149.aspx und http://msdn.microsoft.com/en-us/library/ms173152.aspxhttp://msdn.microsoft.com/en-us/library/ms173152.aspx Containerklassen ( Collections ) und Iteratoren array, ArrayList, List, dictionary, foreach

6 Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 6 C# (2): Schnittstellen (interfaces) Zusammenfassung von (automatisch öffentlichen) Methoden, Eigenschaften und Ereignissen ohne Implementierung; Eine oder mehrere Klassen oder Strukturen enthalten die Implementierung. Sie erben vom interface. Delegaten (Delegatentyp) Eine Klasse, die einen Verweis auf eine oder mehrere Methoden enthalten kann Deklaration des Delegatentyps MeinDelegat mit Signatur: public delegate int MeinDelegat (string Text); Instanziierung: MeinDelegat md = new MeinDelegat(DelegatmethodeX); MeinDelegat md = DelegatmethodeX; // seit C# 2.0 auch möglich Aufruf: md("blabla");

7 Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 7 C# (3): Ereignis (event) s.a. http://msdn.microsoft.com/en-us/library/awbftdfh.aspxhttp://msdn.microsoft.com/en-us/library/awbftdfh.aspx Prinzip: Der Herausgeber verfügt über ein event und löst es aus. Der Abonnent behandelt das Ereignis durch Ereignishandlermethoden. Ereignisse basieren auf dem EventHandler-Delegaten public delegate void EventHandler(object sender, EventArgs e); und der EventArgs-Klasse. Die Herausgeberklasse deklariert ein event: public event EventHandler Aktion; Abonnent fügt Methode hinzu: Objekt.Aktion += Ereignishandlermethode; Herausgeber löst das Ereignis aus: Aktion(this, …);

8 Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 8 Solution 1_C-Sharp-Grundlagen: A_Konsolenanwendung B_Listen C_Interface D_Delegate E_EventOhneDaten F_EventMitDaten Übung 1: Konsolenanwendung in C# Schreiben Sie ein C#-Programm mit Events und Delegaten: Es gibt Teilnehmerobjekte und ein Verwaltungsobjekt. Wenn die Teilnehmer sich anmelden, ändert sich ihr Status (angemeldet = 1). Wenn der Anmeldeschluss erreicht ist, löst das Verwaltungsobjekt ein Event aus, wodurch bei allen Teilnehmern der Status auf 2 gesetzt wird (im Sinne einer Anmeldebestätigung).


Herunterladen ppt "Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:"

Ähnliche Präsentationen


Google-Anzeigen