J..NET. J.1 Überblick. Common Language Runtime Einheitliche Klassenbibliothek Visua l Studio.NET

Größe: px
Ab Seite anzeigen:

Download "J..NET. J.1 Überblick. Common Language Runtime Einheitliche Klassenbibliothek Visua l Studio.NET"

Transkript

1 J..NET J.1 Überblick J.1.1.NET Plattform: Framework & Tools Common Language Runtime Einheitliche Klassenbibliothek Visua l Studio.NET Building Block Services Ständig verfügbare Internet-Dienste (Code-Updates, Suc hdienste, Messenger) Infrastruktur He utige 2000-Pro duktfa milie (zukünftig.net Enterprise Servers) Devices Mobile Geräte, auf denen.net Anwendungen laufen (Handy, Handheld) Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 1

2 J.1.2.NET Framework Zielsetzung: zur Entwicklung von verteilten XML-basierten Web-Anwendungen, E-Commerce, Bankverkehr, Server- & Browsergestützte Dienste, Web-Services nach Vorstellungen von Microsoft,. Sprachbezogenen Merkmale des.net Frameworks: sprachunabhängig durch Common Type System, plattformunabhängig durch Zwischencode, sprachübergreifende Laufzeitumgebung, C# als neue, Java-ähnliche Sprache, Kommunikationstechnische Merkmale: Serialisierung von Objekten über XML Formate, Gekapselte Kommunikation über HTTP & XML, wesentliche Teile standardisiert durch ECMA, Entfernte Methodenaufrufe. Aktuell.Net Framework 3.0: in Windows Vista integriert, vollständiges Programmierpaket, Workflow Services, Communication Services, GUI-Services, Card Space als Meta Sicherheitssystem... Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 2

3 J.2 Common Language Runtime Compiler generieren Zwischencode: Oberon C# C++ Compiler Compiler Compiler ASM Code IL Code IL Code IL Code Common Language Runtime JIT Compiler Betriebssystem Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 3

4 Common Language Runtime (CLR): sprachübergreifende Laufzeitumgebung, sprachübergreifende Klassenbibliothek, erweiterbares Format für Meta-Daten, sprachübergreifendes Typsystem. IL=MSIL: Microsoft Intermediate Language, IL für eine abstrakte Stackmaschine, vgl. Java Virtuelle Maschine. Managed Code: automatische Freispeichersammlung (GC), wird unter Regie der CLR ausgeführt, Fehlerbehandlung (Exceptions), Sicherheitsprüfungen, Versionsprüfungen. Ausführung durch Execution Engine (EE): Exe-Datei: IL-Code + Stub zum Laden der EE, nach dem Laden wird native Code erzeugt, Codeerzeugung durch JIT-Compiler. Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 4

5 J.2.1 MSIL als Assemblersprache für Stackmaschine Im Vergleich mit reinen Assembler-Sprachen eher an höhere Programmiersprachen angelehnt:.assembly hello {.method public static void Main() il managed {.entrypoint.locals(int32 V_0) // lokale 'var' ldc.i4.2 // push '2' ldc.i4.3 // push '3' add // addiere stloc.0 // speichere in 'var' ldloc.0 // push var call void [mscorlib]system.console::writeline(int32) ret Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 5

6 J.2.2.NET Klassenbibliotheken Umfangreiche Bibliotheken, z.b. System: System.Web Services UI Description HtmlControls Discovery WebControls Protocols Caching Security Configuration SessionState System.WinForms Design ComponentModel System.Drawing Drawing2D Printing Imaging Text System.Data System.Xml ADO SQL XSLT Serialization Design SQLTypes XPath System Collections Configuration Diagnostics Globalization IO Net Reflection Resources Security ServiceProcess Text Threading Runtime InteropServices Remoting Serialization Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 6

7 J.2.3 Objektmodell im Common Type System Typen sind sprachübergreifend eindeutig: Typen im Namespace System Object Value Type Type Enum Struct Boolean Char Int32... String Array Exception... Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 7

8 Werte-Typen: primitive Datentypen, Aufzählungen und Records. Referenz-Typen: Arrays, Klassen, Interfaces, und Delegates. Vererbung: einfache Klassenvererbung, mehrfaches Subtyping durch Interfaces. Boxing: Umwandlung zwischen primitiven Datentypen und Objekten, Vergleichbar den Typklassen (Integer, Double,...) in Java. x 5 public static void main() { int x = 5; object o = x; int y = (int)o; o y 5 5 System.Int32 Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 8

9 J.2.4 Delegates: Vergleichbar mit Prozedurvariablen in Pascal: Delegate Variable referenziert einen Methoden-Stub mit dazu passender Parametersignatur, Auch Event Mechanismen können mit Delegates realisiert werden. Delegate Beispiel (keine Events): using System; delegate void Delg(string s); public class Example { private static void Func1(string s) { Console.WriteLine(s); private void Func2(string s) {Console.WriteLine(17); public static void Main() { Delg d1,d2; Example e=new Example(); d1 = new Delg(Func1); d1("hello world"); d2 = new Delg(e.Func2); d2("hello world"); Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 9

10 J.2.5 Meta-Daten & Reflection Modul: Ist ein Container für Typen (bzw. Klassen) und enthält: Meta-Daten = Typbeschreibungen/Symboltabellen, IL-Code der Typen (Intermediate Language). Meta-Daten: Destillat aus den Symboltabellen des Compilers, zugreifbar zur Laufzeit (Überprüfen von Casts..), einheitliches Format, vgl. Java Reflection. Attribute: eigene Meta-Daten für Klassen & Methoden, auslesbar über System.Reflection. Source Code, z.b. Visual Basic (application1.vb) Typ A {... Typ B {... Typ C {... Compiler (C#, Java, Oberon, C++, VB) Modul Typ A MSIL Typ B MSIL Typ C MSIL Metadaten für A, B, C Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 10

11 J.2.6 Assemblies Werden automatisch durch den Compiler erstellt (Kein Linker), Dot-NET Anwendungen bestehen aus Assemblies (~Komponenten): Etwa entsprechend einem traditionell durch den Linker hergestellten Load-Module. Assemblies sind Container für eines oder mehrere Module, Module sind nur innerhalb des Assemblies bekannt, Neuer Wein in alten Schläuchen, ein Manifest pro Assembly. JIT-Compiler: Nicht zu verwechseln mit dem Quellcode-Compiler für C#, Java, Visual Basic... erzeugt aus dem IL-Code in den Assemblies CPU-Code, Codeerzeugung Methode für Methode, JIT-Lag beim ersten Aufruf. Sicherheits- und Versionsprüfungen der CLR erfolgen auf Ebene der Assemblies (Bytecode-Verifier in Java VMs). Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 11

12 J.2.7 Quellcode-Übersetzung: Manifest beschreibt Assembly: Identität: Name, Version, Ländercode, zugehörige Modulliste & Attribute, exportierte Typen & Ressourcen, referenzierte Assemblies. Statisch referenzierte Assemblies: werden erst bei Bedarf geladen, zur Übersetzungszeit bekannt, csc /r:mylib.dll abc.cs Assemblies dynamisch ladbar: lokal oder aus dem Internet, AppDomain.Load, AppDomain.ExecuteAssembly Assembly (xyz.dll) Source Code, z.b. Visual Basic (application1.vb) Typ A {... Typ B {... Typ C {... Compiler (C#, Java, Oberon, C++, VB) Modul Manifest Typ A MSIL Typ B MSIL Typ C MSIL Metadaten für A, B, C Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 12

13 J.2.8 Assembly Kategorien Private Assemblies: Normalerweise nur von einer Anwendung nutzbar, typischerweise im Anwendungsverzeichnis, Identifikation anhand einfachen Namens, keine Versionsprüfung. Shared Assemblies: Installation in Global Assembly Cache, Sind global für alle Anwendungen, obligatorische Versionsprüfung. Strong Names für Shared Assemblies: Kein Austausch möglich, Version, Kultur, Name, Key. Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 13

14 J.2.9 Signieren von Assemblies Verfahren mit öffentlichen Schlüsseln. Öffentlichen Schlüssel im Manifest ablegen. Der rechtmässige Erzeuger signiert Dateien mit privatem Schlüssel. Mithilfe des öffentlichen Schlüssels kann die Echtheit der Signatur geprüft werden. Klienten speichern mit dem Namen auch den öffentlichen Schlüssel. Schlüsselpaar erzeugen: sn.exe k c:\outf Main Compiler Manifest Ref.: MyLib PK=34e25c Key-Pair Quellen MyLib Compiler Manifest PK=34e25c Strong Name Signature Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 14

15 J.2.10 Versionierung Version im Manifest: Major.Minor.Revision.Build Klient standardmäßig an Version gebunden, die sein Manifest referenziert: Anpassung durch CFG-Datei mögl. à Lösung des DLL-Problems Culture-Attribute für Lokalisierung Side-by-Side Execution: Veschiedene Versionen gleichzeitig ladbar, Festplattenplatz ist preiswert, => private Assemblies empfohlen. Abschaffung der DLL-Hölle. App.exe Ref-1: Calc.DLL acab57 Ref-2: AdvMath.DLL (private) Calc.DLL acab57 AdvMath.DLL Ref-1: ab8157 Calc.DLL ab8157 Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 15

16 J.3 Kommunikation J.3.1 Application Domains Mehrere Application Domains pro Prozeß möglich. Application Domains sind virtuelle Prozesse: eigener Adressraum, aber nur User Prozess, CLR abstrahiert von OS-Prozessen. Gegenseitige Isolierung von Anwendungen: Besser nur eine unmanaged Anwendung pro Domain; Aber mehrere managed Anwendungen. Assemblies: Mehrere pro Domain, Header-Information, Metainformation, IL Code. Marshaling Prozeß 1 Prozeß 2 AppDomain AppDomain AppDomain Objekt Objekt Objekt Marshaling Objekt Objekt Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 16

17 Marshalling für Aufrufe zwischen Application Domains. XML / SOAP als Serialisierungsformat. Marshal-By-Value: Kopie an Ziel senden (Standard), keine Verbindung zw. Kopie & Original, auto. Serialisierung mit Attribut Serializable, Einschränkung durch Var-Attr. NonSerialized, individuelle Serial. durch Interface ISerializable. Marshal-By-Reference: nur Referenz an Ziel senden keine Kopien, Verbindung zwischen Referenz & Original durch Stellvertreter-Objekt (Proxy). Implementierung durch Ableiten einer Klasse von System.MarshalByRefObject. Remoting erfolgt immer dann, falls Marshalling notwendig ist Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 17

18 J.3.2 Channel & Formatter Channel: bidirekt. Kommunikation zw. 2 Endpunkten, TcpChannel, HttpChannel & SmtpChannel, eigene Channels mögl. à IChannel. Formatter: definiert Wire-Format (Channel-Protokoll) Formate: Soap über HTTP à interoperabel Binary über TCP à schnell eigene Formate möglich à IFormatter wird vom Channel dynamisch angefordert. Serialisierung mithilfe der Metainformation im Assembly MyService MyObj HTTPChannel Winsock: Socket TCP:345 StackBuilderSink (URI:MyObj) MyObj CLR AppDomain User Prozeß BS Kern myhost.org Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 18

19 [Serializable] class Point : ISerializable { private int x,y; public void GetObjectData(SerializationInfo info, StreamingContext ctx) { Type t = this.gettype(); info.addvalue("x",x); info.addvalue("y",y); public void ToFile (string file) { FileStream fs = new FileStream(file,FileMode.Create); SoapFormatter form = new SoapFormatter(); form.serialize(fs,this); class FormatterTester { static void Main(string[] args) { Point p = new Point(); p.tofile("test.dat"); Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 19

20 J.3.3 Aktivierung von Objekten durch den Server Server meldet Objekt im System an und Klienten verbinden sich damit. SingleCall: für jeden Aufruf ein neues Objekt. Singleton: ein Objekt für alle Klienten. Server: public class ServerObject : MarshalByRefObject { public int print(string s) { public class MyServer { public static int Main(string [] args) { HttpChannel chan = new HttpChannel(999); ChannelServices.RegisterChannel(chan); RemotingConfiguration.RegisterWellKnownServiceType( typeof(serverobject), "myendpoint", WellKnownObjectMode.Singleton); Console.ReadLine(); Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 20

21 Klient: public class Client { public static int Main(string [] args) { ServerObject factory; string EP=" factory = (ServerObject) RemotingServices.Connect(typeof(ServerObject), EP); factory.print("hallo"); Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 21

22 J.3.4 Aktivierung von Objekten durch den Klienten Der Server meldet die Klasse im System an. Die Klienten können selbst Objekte erzeugen. Klient kann die Lebensdauer der Objekte steuern. Verbindungsorientiert (vgl. DCOM). Server: public class MyServer { public static int Main(string [] args) { HttpChannel chan = new HttpChannel(999); ChannelServices.RegisterChannel(chan); RemotingConfiguration.ApplicationName = myobj"; RemotingConfiguration.RegisterActivatedServiceType(typeof(ServerObject)); Console.ReadLine(); Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 22

23 Klient: public class Client { public static int Main(string [] args) { object[] attrs = new object[1]; Object[0] = new UrlAttribute(" ObjectHandle oh = Activator.CreateInstance("Server","ServerObject",attrs); if (oh!=null) { ServerObject so = (ServerObject)oh.Unwrap(); so.print("hallo"); Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 23

24 J.3.5 Lease Manager pro Domain Verwaltet die Lebenszeit der klientenaktivierten Objekte. Objekte deren Lebenszeit abgelaufen ist, werden der GC zugeführt. Verlängerung durch Sponsor oder via Methodenaufruf des Klienten. public class ServerObject : MarshalByRefObject { public int v=0; public override Object InitializeLifetimeService() { ILease lease = (ILease)base.InitializeLifetimeService(); if (lease.currentstate == LeaseState.Initial) { lease.initialleasetime = TimeSpan.FromSeconds(10); lease.sponsorshiptimeout = TimeSpan.FromSeconds(20); lease.renewoncalltime = TimeSpan.FromSeconds(20); return lease; Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 24

25 J.3.6 Proxy Transparent-Proxy (TP): Klient hat Zeiger auf TP, enthält Beschreibung der Methoden und Felder, kann nicht erweitert oder ersetzt werden, bei Remoting IMessage erzeugen und Invoke von Real-Proxy rufen. Real-Proxy: anpaßbar z.b. für Lastverteilung. K l i e n t P r o x y I M e s s a g e S i n k T r a n s p a r e n t P r o x y C h a n n e l S e r v e r m m t h A t h B I n v o k e S y n c P r o c e s s M e s s a g e v a r V R e a l P r o x y Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 25

26 J.3.7 Kontexte Zusätzliche Dienste für Objekte durch Kontextattribute. zwischen Kontexten ist Marshalling notwendig. ein oder mehrere Kontexte pro AppDomain. gruppiert zusammengehörige Objekte. AppDomain Marshaling Kontext 1 Kontext 2 Objekt Objekt Objekt Property Property Property Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 26

27 kontextfreie & kontextgebundene Objekte. kontextgebunde Obj. stets von System.ContextBoundObject abgeleitet. Kontext-Attribut: werden untersucht beim Erzeugen des Objektes, kontrollieren die Erzeugung von Kontexten, kein oder mehrere Attribute pro Objekt. Kontext-Property: zugreifbar über Namen: Thread.CurrentContext.GetProperty( name ) bieten in der Regel Funktionen zum Kontrollieren der Sinks, implementiert IContextProperty, passive Dienste für Typen. Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 27

28 Sink: aktive Dienste durch Abfangen von Nachrichten, erzwingt bestimmte Politik für einen Kontext, werden dynamisch erzeugt und installiert, verschied. Schnittstellen vordefiniert. verkettet mit anderen Sinks. ObjR ef prop1 prop2 TP RP Sink Sink Sink Sink For matter Compiler Chann els Ob ject Sink Sink Sink Sink prop3 prop4 Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 28

29 J.4 Web-Programmierung J.4.1 Active Server Pages Script-Code eingebettet in HTML-Seiten wird auf Server ausgeführt. Erzeugt dynamische HTML-Seiten für den Klienten. Skriptsprachen: VBScript & Jscript. Microsoft Web-Server notwendig. ASP-Dateien. Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 29

30 J.4.2 ASP.NET Web Applikationen Web Applikationen: ASPX-Dateien in Web-Server Verzeichnis, Code in separaten Dateien (*.cs, *.mod), Kompilation beim ersten Aufruf, Klient erhält nur HTML. Web Controls: laufen auf dem Server, ersetzen HTML Input-Tags, im Code über ID zugreifbar. Klient erzeugt Ereignis, Server verarbeitet es: Web Client Event Event Message Aufruf Event Handler Server Parse Message Event Handler Antwort Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 30

31 Beispiel.aspx: Page Inherits="SeiteBerechnen" Src="Simple.cs" %> <html> <head><title>asp.net Hypotheken Rechner</title></head> <body> <form runat="server"> <asp:button Text="knopf" OnClick="click" RunAt="server" id="button1" /> </form> </body> </html> Simple.cs: public class SeiteBerechnen : Page { protected Button button1; public void click(object sender, EventArgs e) { & Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 31

32 J.4.3 ASP.NET Web Dienste Web Dienste: ASMX-Dateien (*.asmx), Methoden mit Attribut WebMethod. plattform- u. sprachunabhängige Komponenten. Techniken: XML: Datenaustausch SOAP: Methodenaufruf WSDL: Beschreibung eines Dienstes DISCO: Erforschen eines bekannten URLs UDDI: Auffinden von Diensten (Verzeichnis) Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 32

33 Beispiel.asmx: WebService Language="C#" Class="MyService" %> using System; using System.Web.Services; public class MyService : WebService { [WebMethod] public int add(int a, int b) { return a+b; Methoden-Aufruf über HTTP: Verteilte Betriebssysteme, 2007/2008, P. Schulthess, VS, Universität Ulm J - 33

E.1 Objekt-Serialisierung

E.1 Objekt-Serialisierung E Überblick über die 13. Übung E Überblick über die 13. Übung E.1 Serialisierung (2) Objekt-Serialisierung Wie soll ein Objekt serialisiert werden? serveraktivierte Objekte IFormatter Schnittstelle stellt

Mehr

Ein einfacher Server. .NET Remoting. Klassentypen

Ein einfacher Server. .NET Remoting. Klassentypen Einführung - eine Klienten-Applikation kann mit einer Komponente interagieren die hinter einer Grenze liegt - Remoting ermöglicht eine Kommunikation von Komponenten Kontext-, Applikationsdomänen- (leichtgewichtiger

Mehr

Einführung in Microsoft.NET

Einführung in Microsoft.NET Einführung in Microsoft.NET Martin Saternus Martin Saternus Technical Student Consultant Microsoft Academic Program Microsoft Deutschland GmbH i-martsa@microsoft.com In diesem Vortrag Der Weg zu Microsoft.NET

Mehr

Microsoft.NET Überblick. Matthias Nübling

Microsoft.NET Überblick. Matthias Nübling Microsoft.NET Überblick Matthias Nübling Gliederung Was ist Microsoft.NET? Überblick wichtiger.net-technologien Common Language Runtime.NET Framework ADO.NET Windows Forms Web Forms mit ASP.NET Web Services

Mehr

Übung 1 mit C# 6.0 MATTHIAS RONCORONI

Übung 1 mit C# 6.0 MATTHIAS RONCORONI Übung 1 mit C# 6.0 MATTHIAS RONCORONI Inhalt 2 1. Überblick über C# 2. Lösung der Übung 1 3. Code 4. Demo C# allgemein 3 aktuell: C# 6.0 mit.net-framework 4.6: Multiparadigmatisch (Strukturiert, Objektorientiert,

Mehr

Gliederung. .NET Vision. Was ist Microsoft.NET? Microsoft.NET Überblick. Was ist Microsoft.NET? Überblick wichtiger.net-technologien.

Gliederung. .NET Vision. Was ist Microsoft.NET? Microsoft.NET Überblick. Was ist Microsoft.NET? Überblick wichtiger.net-technologien. Gliederung Microsoft.NET Überblick Matthias Nübling Was ist Microsoft.NET? Überblick wichtiger.net-technologien Common Language Runtime ADO.NET Windows Forms Web Forms mit ASP.NET Visual Studio.NET Was

Mehr

Microsoft.NET. InfoPoint 8. Juni 2005 Stefan Bühler

Microsoft.NET. InfoPoint 8. Juni 2005 Stefan Bühler Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler Inhalt Was ist.net Was steckt dahinter Warum ist.net so wie es ist Die Säulen von.net.net Framework 2.0 / VisualStudio 2005 Beispiel Referenzen & Links

Mehr

im Rahmen des Seminars - Programmiersprachen Markus Nestvogel

im Rahmen des Seminars - Programmiersprachen Markus Nestvogel C# im Rahmen des Seminars - Programmiersprachen Markus Nestvogel 2 Gliederung 1. Einführung 2. Microsoft.NET 3. C# 3 1 Einführung objektorientierte Programmiersprache für Microsoft.NET entwickelt Konkurrenz

Mehr

.NET Framework. 3. Das.NET Framework

.NET Framework. 3. Das.NET Framework 3. Das.NET Framework.NET Framework 3.1 Übersicht - 2002 von Microsoft bereitgestellt - Ziel: Entwicklung von Anwendungen (Windows, Web, Embedded,..) bequemer und sicherer zu machen und bestehenden Code

Mehr

Mircosoft DotNot. Verteilte Anwendungen the microsoft (cc) way. Verteilte Anwendungen (04/05) T.S. (JD)

Mircosoft DotNot. Verteilte Anwendungen the microsoft (cc) way. Verteilte Anwendungen (04/05) T.S. (JD) Mircosoft DotNot Verteilte Anwendungen the microsoft (cc) way 1 Die DotNet-Plattform Microsofts zukünftige Plattform für die Erstellung (verteilter) Anwendungen Zusammenfassung bestehender und zukünftiger

Mehr

Themen. Web Service - Clients. Kommunikation zw. Web Services

Themen. Web Service - Clients. Kommunikation zw. Web Services Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur

Mehr

Wiederholung: Beginn

Wiederholung: Beginn B) Webserivces W3C Web Services Architecture Group: "Ein Web Service ist eine durch einen URI eindeutige identifizierte Softwareanwendung, deren Schnittstellen als XML Artefakte definiert, beschrieben

Mehr

.NET Remoting. Softwareentwicklung mit MS.NET und C# Lokaler Proxy. Proxy. Remoting. .NET Remoting

.NET Remoting. Softwareentwicklung mit MS.NET und C# Lokaler Proxy. Proxy. Remoting. .NET Remoting Softwareentwicklung mit MS.NET und C# Lokaler Transparent Real.NET Remoting IMessage Ingo Rammer http://www.dotnetremoting.cc rammer@sycom.at Stack Builder Objekt Remoting Remoting ist der Zugriff auf

Mehr

Microsoft.NET und SunONE

Microsoft.NET und SunONE Microsoft.NET und SunONE, Plattformen und Application Service Providing Agenda Einordnung.NET und SunONE Kurzvorstellung Gegenüberstellung Zusammenfassung ASP (Application( Service Providing) ) und Ausblick

Mehr

Reflection. Arthur Zaczek. Nov 2014

Reflection. Arthur Zaczek. Nov 2014 Arthur Zaczek Nov 2014 1 Einleitung 1.1 Definition Reflection ist das Auslesen von Metainformationen über Klassen, deren Methoden & Eigenschaften zur Laufzeit. 1.2 Anwendungsfälle Analyse von Programmen

Mehr

WebService in Java SE und EE

WebService in Java SE und EE Schlüsselworte Java, JAX-WS, JAX-RS, JAXB, XML. Einleitung WebService in Java SE und EE Wolfgang Nast MT AG Ratingen Es werden die Mölichkeiten von WebServices in Java SE und EE, mit SOAP und REST gezeigt.

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In

Mehr

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,

Mehr

Vererbung & Schnittstellen in C#

Vererbung & Schnittstellen in C# Vererbung & Schnittstellen in C# Inhaltsübersicht - Vorüberlegung - Vererbung - Schnittstellenklassen - Zusammenfassung 1 Vorüberlegung Wozu benötigt man Vererbung überhaubt? 1.Um Zeit zu sparen! Verwendung

Mehr

D.1.NET-Anwendungen bauen und binden

D.1.NET-Anwendungen bauen und binden D Überblick über die 13. Übung D Überblick über die 13. Übung 1 Assemblies.NET Anwendungen bauen und binden Assemblies Anwendungskonfigurationsdatei Signieren, Versionierung Binden Advanced.NET Remoting

Mehr

Vorlesung AFCW, Microsoft.NET Wintersemester 2002/03. Völlig neue Systemstruktur als Antwort auf Java

Vorlesung AFCW, Microsoft.NET Wintersemester 2002/03. Völlig neue Systemstruktur als Antwort auf Java .NET Vorlesung Application Frameworks and Componentware Peter Sturm Universität Trier.NET Völlig neue Systemstruktur als Antwort auf Java Assembly = Komponente Zwischensprache (IL = Intermediate Language)

Mehr

7 Assemblies. Anwendungen (.exe) bzw. Anwendungskomponenten (.dll) für.net Portable Execution (PE) Files

7 Assemblies. Anwendungen (.exe) bzw. Anwendungskomponenten (.dll) für.net Portable Execution (PE) Files 7 Assemblies 8 Virtual Execution System VES Anwendungen (.exe) bzw. Anwendungskomponenten (.dll) für.net Portable Execution (PE) Files Teil der CLR Class Loader Metadaten (Manifest) zur Selbstbeschreibung

Mehr

C# im Vergleich zu Java

C# im Vergleich zu Java C# im Vergleich zu Java Serhad Ilgün Seminar Universität Dortmund SS 03 Gliederung Entstehung von C# und Java Überblick von C# und Java Unterschiede und Gemeinsamkeiten Zusammenfassung und Ausblick Entstehung

Mehr

ASP: Active Server Pages

ASP: Active Server Pages ASP: Active Server Pages Allgemeines: ASP ist die serverseitige Schnittstelle zu Skripten/Programmen ausgehend vom Microsoft-Internet- Information-Server (z.b. in Windows-Server enthalten) Skript- und

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Delegatesund Ereignisse

Delegatesund Ereignisse Delegatesund Ereignisse «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen Definition eines Ereignisses

Mehr

und die Programmiersprache C# Marcel Kulicke Mirijam Joka Sokenou

und die Programmiersprache C# Marcel Kulicke Mirijam Joka Sokenou .Net Framework und die Programmiersprache C# Marcel Kulicke Mirijam Joka Sokenou Das Menü für heute.net im Allgemeinen Architektur, Ausrichtung, Sexy Words C# samt Sprachkonstrukten Sprache, Compiler,

Mehr

3-schichtige Informationssystem-Architektur

3-schichtige Informationssystem-Architektur 3-schichtige Informationssystem-Architektur plattformunabhängig beliebige Endgeräte Client als Applikation & Applet XML über SOAP Standard plattformunabhängig objektorientierte Architektur multiuserfähig

Mehr

Einführung in Javadoc

Einführung in Javadoc Einführung in Javadoc Johannes Rinn http://java.sun.com/j2se/javadoc Was ist Javadoc? Javadoc ist ein Werkzeug, dass eine standardisierte Dokumentation für die Programmiersprache Java unterstützt. Vorteil:

Mehr

11.1 Indirektes Binden (3) 11.1 Indirektes Binden (4) Objektadapterkonfiguration. Unmittelbarer Vorteil des indirekten Bindens

11.1 Indirektes Binden (3) 11.1 Indirektes Binden (4) Objektadapterkonfiguration. Unmittelbarer Vorteil des indirekten Bindens 11.1 Indirektes Binden (3) Objektadapterkonfiguration Name wird bei Erzeugung vergeben wird genutzt u.a. für Property-Zugriffe Adapter-ID wird über Property konfiguriert Beispiel: MyAdapter.AdapterID=MyAdapter

Mehr

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen 9 3 Web Services 3.1 Überblick Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen mit Hilfe von XML über das Internet ermöglicht (siehe Abb.

Mehr

3.1 COM (2) 3.2 DCOM

3.1 COM (2) 3.2 DCOM 3 COM und DCOM 3.1 COM (2) 3.1 COM Component Object Model (Microsoft, 1992) Grundlage für allerlei Dienste: COM+, DCOM, OLE, OCX, ActiveX objektbasiertes Programmiermodell dynamisches Verbinden von Objekten

Mehr

360.NET. Jan Schenk Developer Evangelist Web/Live Microsoft Deutschland

360.NET. Jan Schenk Developer Evangelist Web/Live Microsoft Deutschland 360.NET Jan Schenk Developer Evangelist Web/Live Microsoft Deutschland Was ist.net? Eine Strategie Eine Plattform Eine Laufzeitumgebung Eine Software-Sammlung Ein Set von Services Warum so ein Framework?

Mehr

7..NET und Historie. 7.1 Historie. 7.1.1 COM - Grundlagen COM = Component Object Model, 1992

7..NET und Historie. 7.1 Historie. 7.1.1 COM - Grundlagen COM = Component Object Model, 1992 7..NET und Historie 7.1 Historie 7.1.1 COM - Grundlagen COM = Component Object Model, 1992 - sprachunabhängig (C++, Java, Basic,...). - Objekte in DLLs oder Programmen, Grundidee: Zusammenfassen von Funktionen

Mehr

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005 Praktikum Datenbanksysteme Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005 Tomcat-Installation $JAVA_HOME (z.b. /home/dbp00/j2sdk1.4.2) $CATALINA_HOME (/home/dbp00/jakarta-tomcat-4) Skripte zum Start/Stop:

Mehr

How To: Wie entwickle ich mit SharpDevelop Anwendungen für die PocketPC-Platform

How To: Wie entwickle ich mit SharpDevelop Anwendungen für die PocketPC-Platform How To: Wie entwickle ich mit SharpDevelop Anwendungen für die PocketPC-Platform 0. Benötigt werden folgende Softwarepakete:.NET Framework Software Development Kit (http://www.microsoft.com/downloads/details.aspx?familyid=4fe5bdb5-c7a7-4505-9927-2213868a325b&displaylang=en)

Mehr

CLR CIL MCS ECMA-335. Linux.Ne t. 2005 Albrecht Liebscher, Erlanger Linux Tage

CLR CIL MCS ECMA-335. Linux.Ne t. 2005 Albrecht Liebscher, Erlanger Linux Tage C# CLR CIL MCS ECMA-335 Linux.Ne t Was ist.net? Microsoft Homepage:.NET is the Microsoft Web services strategy to connect information, people, systems and devices through software. Mono Handbuch:.Net besteht

Mehr

Vorlesung Informatik II

Vorlesung Informatik II Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 02. JAVA: Erstes Programm 1 Das erste Java-Programm

Mehr

8.1.6.NET Remoting. C# ( Csharp, Cis ) : Referenzsprache für.net,

8.1.6.NET Remoting. C# ( Csharp, Cis ) : Referenzsprache für.net, 8.1.6.NET Remoting.Net ( dotnet ) : von Microsoft eingeführte Plattform für verteilte Anwendungen, virtuelle Maschine für die verteilte Ausführung von Programmen in unterschiedlichen Sprachen C# ( Csharp,

Mehr

SRH Hochschule Heidelberg

SRH Hochschule Heidelberg SRH Hochschule Heidelberg Fachbereich Informatik Vertriebssysteme / CRM Johannes Dipl. Inf. (FH) Hoppe Johannes Hoppe MSP WCF Vorlesung 25.03.2009 90 Minuten, 8 Teilnehmer Dipl. Inf. (FH) Johannes Hoppe

Mehr

Einführung in die Scriptsprache PHP

Einführung in die Scriptsprache PHP Herbst 2014 Einführung in die Scriptsprache PHP Wirtschaftsinformatik: 5. Semester Dozenten: Rainer Telesko / Martin Hüsler Fachhochschule Nordwestschweiz FHNW - Rainer Telesko / Martin Hüsler 1 Inhalt:

Mehr

Typumwandlungen bei Referenztypen

Typumwandlungen bei Referenztypen Typumwandlungen bei Referenztypen Genau wie es bei einfachen Typen Typumwandlungen gibt, gibt es auch bei Referenztypen Umwandlungen von einem Referenztypen in einen anderen Referenztypen, die wie bei

Mehr

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java Willkommen zur Vorlesung Objektorientierte Programmierung Vertiefung - Java Zum Dozenten Mein Name: Andreas Berndt Diplom-Informatiker (TU Darmstadt) Derzeit Software-Entwickler für Web- Applikationen

Mehr

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005 Das Software Studio Christian Efinger mobilepoi 0.91 Demo Version Anleitung Erstellt am 21. Oktober 2005 Kontakt: Das Software Studio Christian Efinger ce@efinger-online.de Inhalt 1. Einführung... 3 2.

Mehr

J.5 Die Java Virtual Machine

J.5 Die Java Virtual Machine Java Virtual Machine Die Java Virtual Machine 22 Prof. Dr. Rainer Manthey Informatik II Java-Compiler und Java Virtual Machine Quellcode-Datei class C... javac D.java Java-Compiler - Dateien class class

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

Befehlssatz zum High Speed Interface-88-USB (HSI-88-USB) (ab Firmware 0.71) (Version 1.2)

Befehlssatz zum High Speed Interface-88-USB (HSI-88-USB) (ab Firmware 0.71) (Version 1.2) Kurzbeschreibung: Befehlssatz zum High Speed Interface-88-USB (HSI-88-USB) (ab Firmware 0.71) (Version 1.2) Beim HSI-88-USB handelt es sich um ein Interface vom s88-rückmeldebus zum Universal Serial Bus

Mehr

Prof. W. Henrich Seite 1

Prof. W. Henrich Seite 1 Attribute Überblick - Attribute ermöglichen das Hinzufügen von benutzerdefinerbaren Informationen zur Klasse - analog der Sprache, Bsp.: ein schönes Auto - können zur Laufzeit abgefragt und ausgewertet

Mehr

Java und XML 2. Java und XML

Java und XML 2. Java und XML Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik Java und XML Hauptseminar Telematik WS 2002/2003

Mehr

Mobile und Verteilte Datenbanken

Mobile und Verteilte Datenbanken Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2013/2014 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Kommunikations-Middleware Bietet höhere Kommunikations-Dienste

Mehr

Factory Method (Virtual Constructor)

Factory Method (Virtual Constructor) Factory Method (Virtual Constructor) Zweck: Definition einer Schnittstelle für Objekterzeugung Anwendungsgebiete: Klasse neuer Objekte bei Objekterzeugung unbekannt Unterklassen sollen Klasse neuer Objekte

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Tafelübung 04 Referenzen, Overloading, Klassen(hierarchien) Clemens Lang T2 18. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/13 Organisatorisches Nächster Übungstermin

Mehr

Office Objektmodell (1)

Office Objektmodell (1) Office Objektmodell (1) Durch.NET Programme (z.b. Visual Basic) können Microsoft Office Anwendungen automatisiert werden. Diese Technik basiert auf den s.g. Interop-Assemblys das sind Sammlungen von Funktionen

Mehr

ObjectBridge Java Edition

ObjectBridge Java Edition ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente

Mehr

Der lokale und verteilte Fall

Der lokale und verteilte Fall Lokale Beans Der lokale und verteilte Fall RemoteClient Lokaler Client (JSP) RemoteSession/Entity-Bean Lokale Session/Entity-Bean 2 Lokale Beans Die bisher vorgestellten EJBswaren immer in der Lage auf

Mehr

Begleitendes Praktikum zur Vorlesung Künstliche Intelligenz

Begleitendes Praktikum zur Vorlesung Künstliche Intelligenz Begleitendes Praktikum zur Vorlesung Künstliche Intelligenz SS12 Kontakt Internet: http://cvpr.uni-muenster.de/teaching/ss12/ki/ RSS-Feed Kalender Dipl.-Math. Michael Schmeing m.schmeinguni-muenster.de

Mehr

Große Übung Praktische Informatik 1

Große Übung Praktische Informatik 1 Große Übung Praktische Informatik 1 2005-12-08 fuessler@informatik.uni-mannheim.de http://www.informatik.uni-mannheim.de/pi4/people/fuessler 1: Announcements / Orga Weihnachtsklausur zählt als Übungsblatt,

Mehr

Microsoft.NET Framework

Microsoft.NET Framework Microsoft.NET Framework Anita Sosnecki Universität Bonn Institut für Informatik Seminar Softwaretechnologie WS 2003 Übersicht Einleitung Was ist.net?.net Framework.NET Komponenten Assemblies Deployment

Mehr

Einleitung. Funktion. Panzenböck Phillipp. Download 13.05.2003. Installation. Testen. Konfiguration

Einleitung. Funktion. Panzenböck Phillipp. Download 13.05.2003. Installation. Testen. Konfiguration Panzenböck Phillipp 13.05.2003 Der Applikationsserver wird von einer in Schweden ansässigen Firma namens Ironflare entwickelt Orion ist das einzige Produkt dieser Firma Der Orionserver ist komplett in

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Auszug aus JAX-WS Folien

Auszug aus JAX-WS Folien Auszug aus JAXWS Folien Dieses Dokument ist ein Auszug aus unserem Skript zur Java Web Services Schulung. Es dient lediglich als Beispiel für unsere Kursunterlagen. Thomas Bayer Hauptstraße 33 75050 Gemmingen

Mehr

Java RMI Remote Method Invocation

Java RMI Remote Method Invocation Java RMI Remote Method Invocation Ziel: Aufruf von Instanzmethoden entfernter Objekte basierend auf Java. Paket: java.rmi und Unterpakete Topologie: RMI Registry RMI Server RMI Client Der Server registriert

Mehr

WPF Steuerelemente Listbox, ComboBox, ListView,

WPF Steuerelemente Listbox, ComboBox, ListView, WPF Steuerelemente Listbox, ComboBox, ListView, Dr. Beatrice Amrhein Überblick Einführung Listen ComboBox Tabellen 2 Einführung 3 Listen- und Tabellen-Elemente Listen und Tabellen-Elemente sind Steuerelemente,

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur Unterprogramme Unterprogramme sind abgekapselte Programmfragmente, welche es erlauben, bestimmte Aufgaben in wiederverwendbarer Art umzusetzen. Man unterscheidet zwischen Unterprogrammen mit Rückgabewert

Mehr

CORBA. Systemprogrammierung WS 2006-2007

CORBA. Systemprogrammierung WS 2006-2007 CORBA Systemprogrammierung WS 2006-2007 Teilnehmer: Bahareh Akherattalab Babak Akherattalab Inhaltsverzeichnis: Verteilte Systeme Vergleich zwischen lokale und verteilte Systeme Verteilte Anwendungen CORBA

Mehr

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit

Mehr

G.Net G.2 G.4. 1 Überblick. 2 Common-Language-Runtime. 2 Common-Language-Runtime (2) Neue Anwendungsplattform für alle Microsoft-Betriebssysteme

G.Net G.2 G.4. 1 Überblick. 2 Common-Language-Runtime. 2 Common-Language-Runtime (2) Neue Anwendungsplattform für alle Microsoft-Betriebssysteme 1 Überblick G.Net Neue Anwendungsplattform für alle Microsoft-Betriebssysteme inspiriert von der Java-Entwicklung Sprachunabhängigkeit dynamisches Code-Laden verteilte Anwendungen Integration der XML-Technologie

Mehr

PRODUKTINFORMATION LOCKING SYSTEM MANAGEMENT 3.3 BASIC BASIC ONLINE BUSINESS PROFESSIONAL STAND: FEBRUAR 2016

PRODUKTINFORMATION LOCKING SYSTEM MANAGEMENT 3.3 BASIC BASIC ONLINE BUSINESS PROFESSIONAL STAND: FEBRUAR 2016 LOCKING SYSTEM MANAGEMENT 3.3 BASIC BASIC ONLINE BUSINESS PROFESSIONAL STAND: FEBRUAR 2016 2 1.0... 3 1.1. LOCKING SYSTEM MANAGEMENT 3.3... 3 1.2. PRODUKTKURZBESCHREIBUNG... 4 2.0 PRODUKTUMFELD... 5 2.1.

Mehr

Java Webentwicklung (mit JSP)

Java Webentwicklung (mit JSP) Java Webentwicklung (mit JSP) SEW(3.Jg) Unterlagen zu Java Server-Pages Teil 1 Inhalt 1 Zielsetzung... 1 2 Webprojekt mit Netbeans... 2 2.1 Webprojekt erstellen... 2 2.1.1 Neues Projekt... 2 2.2 Aufbau

Mehr

Enterprise Application Integration Erfahrungen aus der Praxis

Enterprise Application Integration Erfahrungen aus der Praxis Enterprise Application Integration Erfahrungen aus der Praxis Teil 4: EAI und.net, EAI und J2EE Tutorial NODs 2002, Wolfgang Keller and Generali 2001, 2002, all rights reserved 1 Überblick EAI und....net

Mehr

License Management 1.0 - SDK

License Management 1.0 - SDK License Management 1.0 - SDK Inhalt Allgemeine Beschreibung... 2 Vorbereitungen... 2 Download aller nötigen Dateien und Dokumentationen... 2 Beantragung eines ValidationKeys... 2 Beantantragung einer Development-Lizenz...

Mehr

Flashfragen in ILIAS Test & Assessment. Helmut Schottmüller

Flashfragen in ILIAS Test & Assessment. Helmut Schottmüller Flashfragen in ILIAS Test & Assessment Helmut Schottmüller Flashfragen in ILIAS Test & Assessment Helmut Schottmüller Veröffentlicht Januar 2009 Copyright 2009 Helmut Schottmüller Inhaltsverzeichnis 1.

Mehr

Java Einführung Collections

Java Einführung Collections Java Einführung Collections Inhalt dieser Einheit Behälterklassen, die in der Java API bereitgestellt werden Wiederholung Array Collections (Vector, List, Set) Map 2 Wiederholung Array a[0] a[1] a[2] a[3]...

Mehr

Programmierung 2. Übersetzer: Code-Erzeugung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland.

Programmierung 2. Übersetzer: Code-Erzeugung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland. 1 Programmierung 2 Übersetzer: Code-Erzeugung Sebastian Hack hack@cs.uni-saarland.de Klaas Boesche boesche@cs.uni-saarland.de Sommersemester 2012 Bytecodes Der Java Übersetzer erzeugt keine Maschinensprache

Mehr

8a. Exkurs.NET. 8a.1.NET Architektur

8a. Exkurs.NET. 8a.1.NET Architektur 8a. Exkurs.NET Inhalt: 8a.1.NET Architektur 8a.2 Kooperation von Anwendungen über ADO -.NET 8a.3 Unterschiede gegenüber gewöhnlicher WIN32- Programmierung 1 8a.1.NET Architektur Bislang wurden die C/C++

Mehr

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen.

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Übersicht Struts Forms Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Allgemeines Autor: Sascha Wolski http://www.laliluna.de/tutorials.html

Mehr

Workflow, Business Process Management, 4.Teil

Workflow, Business Process Management, 4.Teil Workflow, Business Process Management, 4.Teil 24. Januar 2004 Der vorliegende Text darf für Zwecke der Vorlesung Workflow, Business Process Management des Autors vervielfältigt werden. Eine weitere Nutzung

Mehr

Java Reflection. Meta-Programmierung mit der java.lang.reflection API. Prof. Dr. Nikolaus Wulff

Java Reflection. Meta-Programmierung mit der java.lang.reflection API. Prof. Dr. Nikolaus Wulff Java Reflection Meta-Programmierung mit der java.lang.reflection API. Prof. Dr. Nikolaus Wulff Java Reflection Die Java Reflection API liefert per Introspection Informationen über Klassen => Meta-Daten.

Mehr

Spezifikation DPD und primetime WebService Shopfinder Gültig für Paketversender in Österreich. Version 3.3.0

Spezifikation DPD und primetime WebService Shopfinder Gültig für Paketversender in Österreich. Version 3.3.0 Spezifikation DPD und primetime WebService Shopfinder Gültig für Paketversender in Österreich Version 3.3.0 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis... 2 2 Allgemein... 3 2.1 Beschreibung... 3 3 Softwaretechnische

Mehr

Problemstellung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 24: Reflection 1. IDE und automatische Tests.

Problemstellung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 24: Reflection 1. IDE und automatische Tests. Universität Osnabrück 1 Problemstellung 3 - Objektorientierte Programmierung in Java Vorlesung 24: Reflection 1 SS 2006 Prof. Dr. Frank M. Thiesing, FH Osnabrück Um ein Objekt anzulegen, eine seiner Methoden

Mehr

Javakurs zu Informatik I. Henning Heitkötter

Javakurs zu Informatik I. Henning Heitkötter Javakurs zu Informatik I Arrays vergleichen Implementieren Sie folgende Methode, die prüft, ob die Elemente der beiden Arrays an jeder Position übereinstimmen: public static boolean identisch(int[] a,

Mehr

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum Starthilfe für C# Inhaltsverzeichnis Allgemeines... 2 Bezugsquellen... 2 SharpDevelop... 2.NET Runtime... 2.NET SDK... 2 Installation... 2 Reihenfolge... 2 Vorschlag für eine Ordnerstruktur... 3 Arbeit

Mehr

Daniel Warneke warneke@upb.de 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers

Daniel Warneke warneke@upb.de 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns Daniel Warneke warneke@upb.de 08.05.2006 Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns 1/23 Übersicht Einleitung / Motivation Design Patterns Beispiele Rolle des

Mehr

Übungen zu Softwaretechnik

Übungen zu Softwaretechnik Prof. Dr. Dr. h.c. M. Broy Lösungsblatt 11 Dr. H. Ehler, S. Wagner 23. Januar 2004 Übungen zu Softwaretechnik Aufgabe 16 Qualitätseigenschaften Broker-Pattern Beurteilen Sie das in Aufgabe 15 benutzte

Mehr

3. Auflage. O Reillys Taschenbibliothek. C# 5.0 kurz & gut. Joseph Albahari & Ben Albahari O REILLY. Aktualisierung von Lars Schulten

3. Auflage. O Reillys Taschenbibliothek. C# 5.0 kurz & gut. Joseph Albahari & Ben Albahari O REILLY. Aktualisierung von Lars Schulten O Reillys Taschenbibliothek 3. Auflage C# 5.0 kurz & gut O REILLY Joseph Albahari & Ben Albahari Aktualisierung von Lars Schulten Inhalt C# 5.0 kurz & gut... 1 Ein erstes C#-Programm... 2 Syntax... 5 Typgrundlagen...

Mehr

WCF Services in InfoPath 2010 nutzen

WCF Services in InfoPath 2010 nutzen WCF Services in InfoPath 2010 nutzen Abstract Gerade wenn man schreibend von InfoPath aus auf eine SQL-Server Datenbank zugreifen will, kommt man quasi um einen Web Service nicht herum. In diesem Post

Mehr

Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi 06.09.10 1

Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi 06.09.10 1 Kapitel 1 Einstieg in Java Dr. Elham Firouzi 06.09.10 1 1 : Einstieg in Java Einleitung Ein erstes Beispiel Berner Fachhochschule Entwicklung von Java-Programmen Applikationen Applets Vor und Nachteile

Mehr

Verteilte Systeme CS5001

Verteilte Systeme CS5001 Verteilte Systeme CS5001 Th. Letschert TH Mittelhessen Gießen University of Applied Sciences Client-Server-Anwendungen: Vom passiven (shared state) Monitor zum aktiven Monitor Monitor (Hoare, Brinch-Hansen,

Mehr

Objektbasierte Entwicklung

Objektbasierte Entwicklung Embedded Software Objektbasierte Entwicklung Objektorientierung in C? Prof. Dr. Nikolaus Wulff Objektbasiert entwickeln Ohne C++ wird meist C im alten Stil programmiert. => Ein endlose while-schleife mit

Mehr

Funktionserweiterungen, behobene Funktionseinschränkungen und Funktionseinschränkungen, EASY Starter V1.5

Funktionserweiterungen, behobene Funktionseinschränkungen und Funktionseinschränkungen, EASY Starter V1.5 Funktionserweiterungen, behobene Funktionseinschränkungen und Funktionseinschränkungen, Inhaltsverzeichnis 1. Funktionserweiterungen... 2 1.1. Produktidentifikation... 2 1.1.1. Lauffähig unter Windows

Mehr

Klassenbeziehungen & Vererbung

Klassenbeziehungen & Vererbung Klassenbeziehungen & Vererbung VL Objektorientierte Programmierung Raimund Kirner teilweise nach Folien von Franz Puntigam, TU Wien Überblick Arten von Klassenbeziehungen Untertypen versus Vererbung in

Mehr

1. Übung zu "Numerik partieller Differentialgleichungen"

1. Übung zu Numerik partieller Differentialgleichungen 1. Übung zu "Numerik partieller Differentialgleichungen" Simon Gawlok, Eva Treiber Engineering Mathematics and Computing Lab 22. Oktober 2014 1 / 15 1 Organisatorisches 2 3 4 2 / 15 Organisatorisches Ort:

Mehr

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke. 31.03.2003 J.M.Joller 1

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke. 31.03.2003 J.M.Joller 1 Web Services XML, WSDL, SOAP und UDDI Einblicke und Ausblicke 31.03.2003 J.M.Joller 1 Inhalt Architekturen Main Stream.NET J2EE und Applikations-Server Sicht der Anbieter Java J2EE J2EE versus.net Web

Mehr

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 7: Prozesse und Möglichkeiten

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 7: Prozesse und Möglichkeiten C# Programmierung Eine Einführung in das.net Framework C# Programmierung - Tag 7: Prozesse und Möglichkeiten 1/27/2012 1 Di Process-Class Callbacks DirectX Webservices ASP.NET C# 4 Tasks WP 7 Tag 7 Prozesse

Mehr

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP)

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP) Enterprise Applikation Integration und Service-orientierte Architekturen 09 Simple Object Access Protocol (SOAP) Anwendungsintegration ein Beispiel Messages Warenwirtschaftssystem Auktionssystem thats

Mehr

Das Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala

Das Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala Das Typsystem von Scala 1 Eigenschaften Das Typsystem von Scala ist statisch, implizit und sicher 2 Nichts Primitives Alles ist ein Objekt, es gibt keine primitiven Datentypen scala> 42.hashCode() res0:

Mehr

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. Einfache Ein- und Ausgabe mit Java 1. Hallo-Welt! Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. /** Die Klasse hello sendet einen

Mehr

Herausforderung: - Kommunikationsaufwand unterscheidet sich enorm gegenüber dem lokalen Fall, - Datenübertragung von Referenzen (Hüllenbildung),

Herausforderung: - Kommunikationsaufwand unterscheidet sich enorm gegenüber dem lokalen Fall, - Datenübertragung von Referenzen (Hüllenbildung), 9. Verteilte Objektsysteme 9.1 Grundidee Ausgangssituation: Programmierung objektorientierter Anwendungen. Verteilung der Objekte auf verschied. Rechner eines verteilten Systems: - verteilungs- und ortstransparenter

Mehr