Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

32
Microsoft .NET Seminar „Verteilte Systeme“ Thomas Bischoff

Transcript of Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

Page 1: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

Microsoft .NET

Seminar „Verteilte Systeme“

Thomas Bischoff

Page 2: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 2 / 29

Inhaltsübersicht

1. Was ist .NET?

2. Architektur

3. Bestandteile

4. .NET versus J2EE

Page 3: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 3 / 29

Inhaltsübersicht

1. Was ist .NET?

2. Architektur

3. Bestandteile

4. .NET versus J2EE

Page 4: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 4 / 29

Was ist .NET?

Kombination aus:- Web Services- .NET Enterprise Server- .NET Framework

Page 5: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 5 / 29

Inhaltsübersicht

1. Was ist .NET?

2. Architektur

3. Bestandteile

4. .NET versus J2EE

Page 6: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 6 / 29

.NET – Architektur

Page 7: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 7 / 29

Inhaltsübersicht

1. Was ist .NET?

2. Architektur

3. Bestandteile

4. .NET versus J2EE

Page 8: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 8 / 29

Bestandteile - .NET Framework

Page 9: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 9 / 29

Framework – Namensräume, Klassen

Hierarchische Aufteilung vorgefertigter Methoden, Funktionen sowie Variablen für alle .NET- tauglichen Programmiersprachen

Aufteilung nach Anwendungen

Page 10: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 10 / 29

Bestandteile – Common Language Runtime

Laufzeitsystem für alle von .NET unterstützten Sprachen

Speicherverwaltung Prozess – und Threadmanagement Durchsetzung der

Sicherheitsmechanismen Auflösen der Bezüge auf andere

Komponenten

Page 11: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 11 / 29

Laufzeitsystem - Funktionsweise

Page 12: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 12 / 29

Laufzeitsystem - Funktionsweise

Namespace Calculator {using System;public class Calc {

public Calc() {}public int Add( int x, int y) {

return x+y;}public static int Main(string[] args) {

calc c new Calc();int ans = c.Add(10, 48);

Console.WriteLine("10+48= {0}.“, ans);return 0;

}}}

Module Module1Class Calc

public Function Add(ByVal x As Integer, ByVal y As Integer) As Integer

return x+yEnd Function

EndClassSub Main()

Dim ans As IntegerDim c As New Calc()ans = c.Add(10,48)

Console.WriteLine("10+48 = {0}.", ans)

End SubEnd Module

Page 13: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 13 / 29

Laufzeitsystem - Funktionsweise

.method public hidebysig instance int32 Add(int32 x, int32 y) il managed

{//Code size 8 (0x8).maxstack 2.locals ([0] int32 V_0)IL_0000: ldarg.1IL_0001: ldarg.2IL_0002: addIL_0003: stloc.0IL_0004: br.sIL_0006IL_0006: ldloc.0IL_0007: ret

} //end of method Calc::Add

.method public hidebysig instance int32 Add(int32 x, int32 y) il managed

{//Code size 11 (0xb).maxstack 2.locals init ([0] int32 Add)IL_0000: nopIL_0001: ldarg.1IL_0002: ldarg.2IL_0003: add.ovfIL_0004: stloc.0IL_0005: nopIL_0006: br.sIL_0008IL_0008: nopIL_0009: ldloc.0IL_000a: ret

} //end of method Calc::Add

Page 14: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 14 / 29

Laufzeitsystem - MSIL

Manifest• refernziert andere verwandte Dateien

Typ-Metadatei• beschreiben alle verwendeten Typen (Klassen,

Strukturen, Aufzählungen,…)

• beschreiben Members der Typen

MSIL-Code Resource

• Bilder,...

Page 15: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 15 / 29

Laufzeitsystem - Merkmale

Common Type System: Konzept für Datentypen, welches von Programmier- sprachen unabhängig ist

JIT- Compiler: übersetzt MSIL- Code in zielmaschinenabhängige Maschinen- sprache

Garbage Collector: Speicherverwaltung Ausnahmebearbeitung

Page 16: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 16 / 29

Bestandteile – Web Services

Bereitstellung von Softwarelösungen via Internet durch Zugriff auf sprachunabhängige Assemblys unter Verwendung von HTTP, HTTP GET, HTTP POST, SOAP

Übertragung als XML, früher SDL

Page 17: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 17 / 29

Bestandteile –Enterprise Server

BizTalk Server 2000:• Integrationsserver zum Vereinen

verschiedener Standards für den InformationsaustauschOrchestration: Erstellung von Workflows durch

Verknüpfung verschiedener Plattformen, Anwendungen und Diensten

Messaging: Informationsaustausch zwischen Anwendung und Dienst

Page 18: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 18 / 29

Bestandteile –Enterprise Server

SQL Server 2000 Exchange 2000 Server Host Integration Server 2000 Internet Security and Acceleration Server

2000 (ISA Server)• Datenbankanbindung an das Internet

Page 19: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 19 / 29

Inhaltsübersicht

1. Was ist .NET?

2. Architektur

3. Bestandteile

4. .NET versus J2EE

Page 20: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 20 / 29

.Net vs. J2EE

- Komplettprodukt der Firma Microsoft

- Bestandteile:- .NET Framework

- Laufzeitsystem

- Enterprise Server

- Web Service

- Architektur der Firma Sun, IBM,…

- Bestandteile:- Java Sprachsystem

- Client – Modell über HTTP

- Middle-Tier (EJB)

- Programmer Enterprise API

Page 21: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 21 / 29

Laufzeitumgebung.Net vs. J2EE

Common Language Runtime1. Übersetzung des

Programmcode in MSIL

2. Übersetzung in ausführbaren Code abhängig von der Zielhardware

Java Virtual Machine1. Übersetzung des

Programmcodes in einen Zwischencode

2. Übersetzung erfolgt direkt, ohne Anpassung

Page 22: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 22 / 29

Neutralität.Net vs. J2EE

gebunden an das Microsoft Betriebssystem .NET

Plattform unabhängig, weder an Hard- noch an Software gebunden

Page 23: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 23 / 29

Web Services, Zusammenarbeit.Net vs. J2EE

offene Standards:• XML

• SOAP

• HTTP strenge Technologie-

unabhängigkeit

Standards:• IIOP

• EJB

• Java-RMI an komplette J2EE-

Umgebung gebunden

kein einheitlicher Standard in der Implementierung

Page 24: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 24 / 29

Framework - Support.Net vs. J2EE

einheitliche Hierarchie in den Namenräumen

Arbeiten mit unterschiedlichen Treiberversionen möglich

je nach Entwickler unterschiedliche Hierarchien in den Packages

Page 25: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 25 / 29

Sprachunterstützung.Net vs. J2EE

durch einheitlichen Zwischencode MSIL von Programmier-sprachen unabhängig

festgelegt auf Java Interaktion mit C(++)

durch JNI (Java native Interface)

durch CORBA Implementierung

Page 26: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 26 / 29

Austauschbarkeit.Net vs. J2EE

durch strenge Reglementierung der Schnittstellen sind Komponenten austauschbar

verschiedene J2EE-Systeme müssen durch unterschiedliche Implementierungen oder Zusammen-stellungen nicht zusammen passen

Page 27: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 27 / 29

.Net vs. J2EE: Gemeinsamkeiten

in Webseite eingebetteter Code• Java-Applets

Dynamische Webseitengestaltung• ASP.NET (Active Server Pages)

• JSP (Java Server Pages)

Idee des Web-Service

Page 28: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 28 / 29

.Net vs. J2EE: Gemeinsamkeiten

Übersetzung in Zwischencode• JVM (Java Virtual Machine)

• CLR (Common Language Runtime) Sicherheit:

• Kryptographie Funktionen zur sicheren Datenübermittlung

• Zugriffsschutz für Codeteile• Java: Security Manager

• .NET: Code Access Security

Page 29: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET 29 / 29

.Net vs. J2EE: In J2EE fehlende Komponenten

Firewall-Funktion Caching von HTML Seiten Programmiertool eCommerce Framework Business to business orchestration

Page 30: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET

Verwendete Literatur TROELSEN, Andrew: C# und die .NET-Plattform, mitp-

Verlag Bonn, 1. Auflage 2002 VASTERS, OELLERS, JAVIDI, JUNG, FREIBERGER,

DePETRILLO: Microsoft .net Crashkurs, Microsoft Press Deutschland, 2001

LOVISCACH, SCHULZ, VIOLKA: Sunspiration .NET und SunONE im Plattformvergleich, CT magazin für computer technik, H8752, 4/2002

SIERING, Peter: Das Microsoft-Internet .Net und was dranhängt, CT magazin für computer technik, H8752, 4/2002

PROSISE: Entwicklerbuch Microsoft .NET, Microsoft Press Deutschland, 2002

Page 31: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET

Verwendete Internetdokumente

http://www.dotnetextreme.com/gen.asp http://www.objectwatch.com/FinalJ2EEandDotNet.doc

Page 32: Microsoft.NET Seminar Verteilte Systeme Thomas Bischoff.

.NET

ENDE

Der Vortrag über .Net ist nun zu ende.

Ich bedanke mich recht herzlich für Ihre Aufmerksamkeit!

Thomas Bischoff