Thema: Aspekt-orientierte Entwicklung: Einführung

Größe: px
Ab Seite anzeigen:

Download "Thema: Aspekt-orientierte Entwicklung: Einführung"

Transkript

1 Thema: Aspekt-orientierte Entwicklung: Einführung Student: Doris Tchouaffé Studiengang: Master Technische Informatik Matrikelnummer: Betreuer: Prof. Dr. Hans W. Nissen Abgabedatum:

2 Inhaltsverzeichnis INHALTSVERZEICHNIS...2 ABSTRAKT EINFÜHRUNG IN ASPEKTORIENTIERUNG PROBLEME DER OBJEKTORIENTIERTE PROGRAMMIERUNG (OOP) QUERSCHNEIDENDEN ANFORDERUNGEN Code-Verstreuung (Code Scattering) Code Vermischung (Code Tangling) WAS IST EIN ASPEKT? AOP BEGRIFFE JOINPOINT POINTCUT ADVICES WEAVERS IMPLEMENTIERUNGSSTRATEGIE VON ASPEKTE STATISCHE WEAVING DYNAMISCHE WEAVING IMPLEMENTIERUNG DER AOP AN DEM BEISPIEL VON ASPECTJ EINFÜGEN EINES CONCERNS OHNE AOP IN MAIN-KLASSE EINFÜGEN EINES CONCERNS MIT AOP IN MAIN-KLASSE SCHLUSSBETRACHTUNG...19 ANHANG A: LITERATURVERZEICHNIS...20 ANHANG B: ABBILDUNGSVERZEICHNIS...21

3 Abstrakt Abstrakt Diese Ausarbeitung umfasst die Einführung in die Aspektorientierte Programmierung (AOP). Der Aspektorientierte Programmierung ist heute bereits in der Softwaretechnik im Einsatz und kein theoretischer Ansatz mehr. Sie wurde von der Firma Xerox PARC durch Gregor Kickzales im 1996 entwickelt. Sie bringt ein neues Prinzip, welches besagt, dass unterschiedliche Funktionalitäten (Concerns) unabhängig voneinander implementieren werden soll (Separation of Concerns). So werden Probleme, die aus Code Scattering (wenn z.b. sich redundante Code im verschiedenen Module wieder findet) und Code Tangling (wenn z.b. fachlichen Code durch Blöcke mit technischer Code vermischt ist) entstehen, vermieden. Damit ist es möglich gut wartbaren und wieder verwendbaren Programmcode zu schreiben. Ein Aspekt besteht aus Pointcut und Advices. Redundanten Code Blöcke werden in der AOP innerhalb der Advices beschrieben. Die Pointcuts beschreiben die Schnittpunkte zwischen denen die Advices eingefügt werden. Das Verweben (Der Prozess des Einfügens der Advices) von Aspekten mit dem Code geschieht über den Weaver. Die Aspekte können sowohl vor dem Compilervorgang (statisch) als auch zur Laufzeit (dynamisch) bestimmt werden. Einige Weaver wie z.b. AspectJ für Java, die in der Entwicklungsumgebung Eclipse durch das Plug-in AJDT integriert sind, existieren als Open Source Software: Microsoft Dot Net besitzt auch Weavers, wie z.b. AspectDNG. 3

4 Abstrakt Liste der vorhanden Weavers für verschiedene Sprachen: C: Aspect-C C++: Aspect-C ++. C#, VB.NET: AspectDNG Java: AspectJ, JAC, JBoss AOP PHP: phpaspect Die Arbeit gliedert sich in 5 Kapitel: Das erste Kapitel besteht aus der Einführung in Aspektorientierung. In diesem Kapitel wird zuerst die Aspektorientierung definiert. Danach werden Probleme der objektorientierten Programmierung, welche die Aspektorientierung lösen soll, beschrieben. Weiterhin wird der Begriff Aspekt definiert. Im zweiten Kapitel werden die Konstrukte der AOP beschrieben. Das Ziel des dritten Kapitels ist die Implementierungsstrategie von Aspekte. Sie ist in zwei Teile aufgegliedert: a) Statische Weaving b) Dynamische Weaving Das Kapitel vier behandelt einen Beispielfall mit AspectJ. Im fünften Kapitel gehe ich auf meine persönlichen Erfahrungen, die ich im Verlauf der Ausarbeitung gesammelt habe. 4

5 1. Einführung in Aspektorientierung 1. Einführung in Aspektorientierung Das Ziel der Softwareentwicklung ist, eine Software so zu schreiben, dass sie erweiterbar und wartbar bleibt. Beim Entwurf eines Programms, ist der Entwickler häufig mit diesen quer schneidenden Funktionalitäten konfrontiert. Dies macht die Entwicklung und die Wartung einer Software aufwändig und somit teurer. Querschneidende Funktionalitäten sind Teilcode eines Programms, die sich über verschiedene Komponenten verteilt, da diese sich nicht kapseln lassen. Dazu gehören z.b. Logging, Tracing, Sicherheitsprüfungen wie Authentisierung, Persistence. Die aspektorientierte Programmierung soll eine Lösung für diese Probleme der Modularisierung bringen, indem die nicht fachlichen (querschneidenden) Funktionalitäten von den fachlichen unabhängig voneinander implementiert werden. Bei der Generierung des lauffähigen Programms wird durch das Weben (weaving) der fachliche Code mit den querschneidenden Funktionalitäten zusammenfügt. Aspektorientierte Programmierung ist wie Objektorientiertes Programmieren eine Art Programmierstil. Sie ist keine Programmiersprache sondern eine Erweiterung dieser Probleme der Objektorientierte Programmierung (OOP) Eine erste Technik war die prozedurale Programmierung, bei den verschiedenen Funktionen als modulare, teilweise wieder verwendbare Prozeduren gekapselt werden. Die objektorientierte Programmierung hat in den letzten Jahren neue Konzepte, zur Strukturierung von Software eingeführt. Der Programmcode (Prozeduren) werden in Klassen gekapselt. Sog. fachliche Klassen sollen ein Objekt aus der realen Welt repräsentieren. Die Klassen die aus Eigenschaften (das sind Attribute und Methoden) bestehen, sollen z.b. die fachlichen Anforderungen erfüllen. 5

6 1. Einführung in Aspektorientierung Mit der Zerlegung in Klassen mit ihren Anforderungen (Modularisierung) wird die Gesamtaufgabe in Teile gegliedert, die dann unabhängig voneinander gewartet werden können. Die Problematik der OOP tritt bei Anforderungen auf, die die gesamte Software durchdringen und sich somit nicht kapseln lassen. Diese heißen querschneidenden Anforderungen (Crosscutting Concerns). Die Implementierung solche Anforderungen führen zu Problemen wie Code Verstreuung (Code Scattering) (Abb.1.1) und Code Vermischung (Code Tangling) (Abb.1.2). Dadurch wird eine saubere Modularisierung verhindert Querschneidenden Anforderungen Querschneidenden Anforderungen sind Teilcode eines Programms, die sich nicht kapseln lassen. Man unterscheidet zwischen Code Verstreuung (Code Scattering) und Code Vermischung. (Code Tangling) [3] Code-Verstreuung (Code Scattering) Code Scattering trifft auf, wenn eine Anforderung über mehrere Module verstreut ist. Scattering führt meistens zu redundanten Code-Blöcken in allen betroffenen Modulen und damit zu einer schlechten Wartbarkeit. Will man eine Änderung in einem Module vornehmen, ist es kaum möglich zu verfolgen, in welchen Modulen eine bestimmte Funktionalität implementiert ist. Dies kann zu einer schlechte Lesbarkeit und hohen Fehlerquote des Programms führen. Die Abbildung 1.1 zeigt das Scattering: Hier ist der Belang Persistence verstreut, d.h. er ist in allen Modulen implementiert und eine Änderung führt dazu, dass alle Module geändert werden müssen, was somit wartungsaufwändig ist und eine hohe Fehlerquote verursacht. 6

7 1. Einführung in Aspektorientierung Abbildung 1.1. Verstreuung (Scattering) innerhalb Module (Klassen) einer Software Code Vermischung (Code Tangling) In einem Modul sind verschiedene Anforderungen durcheinander vertreten. Dadurch ist das Modul schlecht wieder verwendbar. Die Abbildung 1.2 illustriert ein Beispiel für Code Tangling: In diesem Modul sind neben der Fachlogik auch noch Security-, Persistence- und Logging - Funktionalität implementiert. 7

8 1. Einführung in Aspektorientierung Abbildung 1.2. Vermischung (Tangling) innerhalb eines Moduls (Klasse) einer Software 1.3. Was ist ein Aspekt? Die allgemeine Definition des Begriffs Aspekt lässt sich nicht direkt auf die Bedeutung des Begriffs innerhalb der AOP übertragen. In der Literatur sind folgende Erklärungen zu finden: Nach Langenscheidt sind die Begriffe Sichtweise, Gesichtspunkt ein Synonym. [12] Nach dem Duden bedeutet Aspekt Ansicht, Gesichtspunkt. [13] 8

9 1. Einführung in Aspektorientierung Nach Gradecki, A structure analogous to a Java class that encapsulates joinpoints, pointcuts, advice and inter-type declaration [1]. Nach Filman, An aspect is a modular unit designed to implement a concern. An aspect definition may contain some code [ ] and the instruction on where, when and how to invoke it [2] Auch wenn dies unterschiedliche Definitionen sind, schließen diese sich nicht aus. Gradecki beschreibt aus welchen Komponenten ein Aspekt besteht, schränkt dies jedoch auf die Java-Welt ein. Dazu ist (in Einführung) erwähnt, dass die AOP für verschiedene Programmiersprachen eingeführt wurde. Auch müssen Aspekte nicht unbedingt einer objektorientierten Software unterliegen, sondern können auch auf prozeduraler Ebene angewandt werden. Filman beschreibt in seiner Definition einen Aspekt in seiner Funktionsweise. Somit ist ein Aspekt eine modulare Einheit ähnlich wie einer Klasse. Die wie erwähnt aus den Komponenten joinpoints, poincuts, advice and inter-type declaration bestehen, zu den im folgenden die relevanten Komponenten poincuts, advice beschrieben werden: Die advices beschreiben zum einen die Concerns (Codeblöcke, die die quer schneidenden Anforderungen beschreib en) die innerhalb der Software an mehreren Stellen eingefügt werden sollen. Es gibt drei Arten von Advices: Around, After und Before. Diese werden in Kapitel 2.3 beschrieben. Die poincuts beschreiben die Schnittpunkte innerhalb des zugrunde liegenden Programmcodes. Sie enthalten ein Muster (Pattern) die eine Menge von Klassen und deren Methoden oder Zuweisungen von Variablen des Programmcodes 9

10 1. Einführung in Aspektorientierung beschrieben, in denen die entsprechenden Concerns eingefügt werden. Zu diesen wird in Kapitel 2.2 noch eingegangen. Abbildung 1.3. Beispiel eines Aspekts in Java mit AspectJ Die Abbildung 1.3 zeigt, dass ein Aspekt aus Konstrukte wie Pointcut und Advice besteht. Diese werden im nächsten Kapitel noch genauer erklärt. 10

11 2. AOP Begriffe 2. AOP Begriffe 2.1. Joinpoint Ein Joinpoint ist ein bestimmter Punkt oder eine Stelle eines Programms, an denen die querschneidenden Funktionalitäten in den Programmcode eingewoben werden sollen. Dazu gehören: das Aufrufen einer Methode, ein Zugriff auf eine Variable, das Behandeln einer Exception oder das Initialisieren des Objektes über den Konstruktor. Die Abbildung 2.1 zeigt zwei Joinpoints von der Klasse Angestellte: Der erste Joinpoint ist hier die Ausführung der Methode setjob() und der zweite der Zugriff auf das Attribut job. Abbildung 2.1. Joinpoints von der Klasse Angestellte 2.2. Pointcut Ein Pointcut beschreibt eine Menge von Joinpoints innerhalb der Software. Ein Beispiel für den ersten oben beschriebenen Joinpoint ist folgender von Pointcut: 11

12 2. AOP Begriffe Abbildung 2.2. Definition eines Pointcut Die Abbildung 2.2 zeigt die Definition eines Pointcut. Den Ausdruck nach dem doppelten Punkt ist die Definition des Pointcut mypointcut() Dieser wird bei einem Aufruf auf die Methode setjob der Klasse Angestellter ausgelöst Advices Wie schon in Kapitel 0 angesprochen beschreiben die Advices den Concern also der Codeblock der zwischen den Joinpoints eingefügt werden soll Man unterscheidet 3 Typen von Advice: Before Advice: Der Concern wird vor dem Methodenaufruf eingefügt After Advice: Der Concern wird nach dem Methodenaufruf eingefügt Around Advice: Der Concern sowohl vor als auch nach dem Methodenaufruf eingefügt. Die Stelle in der der Methodenaufruf innerhalb des Concerns ausgeführt werden soll, wird mit dem Schlüsselwort proceed beschrieben Weavers Weaving oder Verweben ist das Weben des Hauptcodes mit den Aspekten. Es wird zwischen statische Weaving und dynamische Weaving unterscheiden. Diese soll im folgenden Kapitel beschrieben werden. 12

13 3. Implementierungsstrategie von Aspekte 3. Implementierungsstrategie von Aspekte In der Aspekt orientierte Programmierung, gibt es zwei Arten von Weaving: das statische- und das dynamische-weaving statische Weaving Beim statischen Weaving findet das Weben von Aspekte mit den Modulen (Hauptprogramm) vor dem Kompiliervorgang statt z.b. AspectJ, C#, AspectDNG JBoss AOP 3.2. dynamische Weaving Beim dynamischen Weaving findet das Weben zur Laufzeit statt. Bei dieser Art von Weaving können zusätzlichen Aspekte zur Laufzeit mit dem Hauptcode eingewoben werden z.b. bei dem Framework JAC (Java Aspect Component) 13

14 4. Implementierung der AOP an dem Beispiel von AspectJ 4. Implementierung der AOP an dem Beispiel von AspectJ In diesem Abschnitt wird gezeigt, wie man das Problem der Querschneidende Funktionalitäten mit AOP lösen kann. Mit Hilfe von Weaver AspectJ (AspectJ ist eine Aspekt-orientierte Erweiterung von Java.) wird ein Programm mit Aspekten zusammengefügt. Im folgendem Bespiel wird eine Klasse TestMain mit zwei Methoden und eine Main() Methode erstellt, die das Ausführen des Programms ermöglicht. Die Klasse ist von den querschneidenden Funktionalitäten bereinigt, diese werden in den folgenden Beispiel-Aspekten in Abbildungen 4.3 und 4.4 beschrieben. Abbildung 4.1. Die Klasse TestMain ohne Aspekte 14

15 4. Implementierung der AOP an dem Beispiel von AspectJ Nach dem Ausführen des Programms hat man folgendes Ergebnis in der Konsole Ausgabe: Abbildung 4.2a. Ergebnis der Klasse TestMain Nun will man in der Klasse TestMain Aspekte wie Logging (Abbildung 4.3) und Tracing (Abbildung 4.4) einführen. Aspekte werden in Java wie Klassen programmiert. Zuvor soll jedoch kurz das Einfügen eines Concerns an hand eines Beispiels ohne AOP erläutert werden Einfügen eines Concerns ohne AOP in Main-Klasse Wenn man in der Main-Klasse (Abbildung 4.1) messen will, wie lange es gedauert hat, bis alle Methoden des Programms ausgeführt werden, wird für jede Methode der Klassen mit folgendem Code ausgestattet. Nach dem Ausführen des Programms hat man folgendes Ergebnis in der Konsole Ausgabe: 15

16 4. Implementierung der AOP an dem Beispiel von AspectJ Abbildung 4.2b. Ergebnis der Klasse TestMain 4.2. Einfügen eines Concerns mit AOP in Main-Klasse Man kann das Problem des obigen Beispiels als Aspekt (siehe Abbildung 4.3) lösen, indem man dieses unabhängig von dem Hauptprogramm implementiert. Abbildung 4.3. Aspekt Tracing Will man weitere Aspekte in dem Programm hinzufügen, kann dieser auch getrennt implementiert werden. Abbildung 4.4 zeigt ein Bespiel über einen Logging Concern. 16

17 4. Implementierung der AOP an dem Beispiel von AspectJ Abbildung 4.4. Aspekt Logging 17

18 4. Implementierung der AOP an dem Beispiel von AspectJ Mit Hilfe des Weavers, werden die Aspekte in das Hauptprogramm eingewoben (Abbildung 4.5). Die folgende Konsole-Ausgabe erfolgt bei Ausführen der Main- Methode und dem Einbinden der beiden Bespiel-Aspekte: Abbildung 4.5. Ergebnis TestMain mit Aspekt Logging und Tracing Die Abbildung 4.5 zeigt das Ergebnis der Testmain Methode mit den eingewobenen Aspekten. Die Konsole-Ausgaben Hallo und Ja sind ursprünglich innerhalb der TestMain Klasse implementiert. Alle weiteren Ausgaben sind durch Auslösen der Advices der Aspekte ausgegeben wurden. 18

19 5. Schlussbetrachtung 5. Schlussbetrachtung Diese Ausarbeitung zeigt erstmalig einen kleinen Einblick in die AOP. Die AOP ist keine neue Programmiersprache, sondern eine konzeptionelle Erweiterung schon Bestehender. In einem kundenorientierten Softwareprojekt ist durchaus der Vorteil darin zu sehen, dass damit eine Trennung der fachlichen und technischen Logik ermöglicht wird. Dadurch, dass bestimmte technisch orientierte Codeblöcke wie Logging oder Persistenzhaltung von Daten nicht mehr in jeder Klasse redundant implementiert werden müssen, wird der Codeaufwand kleiner und somit übersichtlicher und leichter zu warten. Flexibel ist die AOP, weil technische Anforderungen selbst implementiert werden können. (Was diverse Applikation Server Technologien wie EJBs Enterprise Java Beans aus dem J2EE Standard nicht ermöglichen.) Nachteil ist, dass die AOP mit ihre Notation für verschiedene Programmiersprachen in einem Team neu erlernt werden muss. 19

20 Anhang A: Literaturverzeichnis Anhang A: Literaturverzeichnis [1] Joseph D. Gradecki und Nicholas Lesiecki:. Mastering AspectJ: Aspect- Oriented Programming in Java, John Wiley and Sons, [2] Robert E Filman, Tzilla Elrad, Siohbán Clarke und Mehmet. Aksit Aspect- Oriented Software Development, Addison-Wesley, [3] Ramnivas Laddad: AspectJ in Action, Practical Aspect-Oriented Programming, Manning Publications 2003 [4] Ramnivas Laddad, JavaWorld.com, 01/18/02 [5] Lars Wunderlich: AOP Aspektorientierte Programmierung in der Praxis, Software & Support, 2005 [6] Tzilla Elrad, Robert E. Filman, Atef Bader: Aspect-oriented programming - introduction , Handout [7] Tzilla Elrad, Mehmet Aksit, Gregor Kiczales, Karl J. Lieberherr, Harold Ossher: Discussing aspects of AOP , Handout [9] Gregor Kiczales, Erik Hilsdale, Jim Hugunin, Mik Kersten, Jeffrey Palm, William G. Griswold: Getting started with ASPECTJ , Handout [10] Andrés Díaz Pace, Marcelo Campo: Analyzing the role of aspects in software design , Handout [11] Gail C. Murphy, Robert J. Walker, Elisa L. A. Baniassad, Martin P. Robillard, Albert Lai, Mik Kersten: Does aspect-oriented programming work? 75-77, Handout [12] Götz, Dieter und Hans Wellmann, Hrsg Großwörterbuch Deutsch als Fremdsprache. Berlin und München: Langenscheidt. [13] DUDEN: Rechtschreibung, 21., völlig neu bearbeitete und erweiterte Auflage Band 1, hrsg. von der Dudenredaktion; Dudenverlag; Mannheim, Leipzig, Wien, Zürich 20

21 Anhang B: Abbildungsverzeichnis Anhang B: Abbildungsverzeichnis Abbildung 1.1. Verstreuung (Scattering) innerhalb Module (Klassen) einer Software Abbildung 1.2. Vermischung (Tangling) innerhalb eines Moduls (Klasse) einer Software... 8 Abbildung 1.3. Beispiel eines Aspekts in Java mit AspectJ Abbildung 2.1. Joinpoints von der Klasse Angestellte Abbildung 2.2. Definition eines Pointcut Abbildung 4.1. Die Klasse TestMain ohne Aspekte Abbildung 4.2a. Ergebnis der Klasse TestMain Abbildung 4.2b. Ergebnis der Klasse TestMain Abbildung 4.3. Aspekt Tracing Abbildung 4.4. Aspekt Logging Abbildung 4.5. Ergebnis TestMain mit Aspekt Logging und Tracing

Aspektorientierte Programmierung (aspect-oriented programming, AOP)

Aspektorientierte Programmierung (aspect-oriented programming, AOP) Aspektorientierte Programmierung (aspect-oriented programming, AOP) Abstract Die aspektorientierte Programmierung ist ein neues Programmierparadigma, das die Probleme und Nachteile, die aus der prozeduralen

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

Robot Karol für Delphi

Robot Karol für Delphi Robot Karol für Delphi Reinhard Nitzsche, OSZ Handel I Version 0.1 vom 24. Januar 2003 Zusammenfassung Nach der Einführung in die (variablenfreie) Programmierung mit Robot Karol von Freiberger und Krško

Mehr

Prinzipien Objektorientierter Programmierung

Prinzipien Objektorientierter Programmierung Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................

Mehr

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte

Mehr

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 22

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 22 Kapitel 19 Vererbung, UML Seite 1 von 22 Vererbung - Neben der Datenabstraktion und der Datenkapselung ist die Vererbung ein weiteres Merkmal der OOP. - Durch Vererbung werden die Methoden und die Eigenschaften

Mehr

SEP 114. Design by Contract

SEP 114. Design by Contract Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit

Mehr

Einführung in Eclipse und Java

Einführung in Eclipse und Java Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik

Mehr

Objektorientierte Programmierung OOP

Objektorientierte Programmierung OOP Objektorientierte Programmierung OOP Objektorientierte Programmierung OOP Ronja Düffel WS2012/13 08. Oktober 2013 Objektorientierte Programmierung OOP Objektorientierte Programmierung Objektorientierte

Mehr

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {... PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

Software Engineering Klassendiagramme Assoziationen

Software Engineering Klassendiagramme Assoziationen Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

PHP Kurs Online Kurs Analysten Programmierer Web PHP

PHP Kurs Online Kurs Analysten Programmierer Web PHP PHP Kurs Online Kurs Analysten Programmierer Web PHP Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses PHP Modul 1 - Einführung und Installation PHP-Umgebung Erste Lerneinheit Introduzione

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Klassendiagramme Ein Klassendiagramm dient in der objektorientierten Softwareentwicklung zur Darstellung von Klassen und den Beziehungen,

Mehr

Grundlagen von Python

Grundlagen von Python Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren

Mehr

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 4 Die Datenbank Kuchenbestellung In diesem Kapitel werde ich die Theorie aus Kapitel 2 Die Datenbank Buchausleihe an Hand einer weiteren Datenbank Kuchenbestellung

Mehr

5.2 Neue Projekte erstellen

5.2 Neue Projekte erstellen 5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort

Mehr

Was meinen die Leute eigentlich mit: Grexit?

Was meinen die Leute eigentlich mit: Grexit? Was meinen die Leute eigentlich mit: Grexit? Grexit sind eigentlich 2 Wörter. 1. Griechenland 2. Exit Exit ist ein englisches Wort. Es bedeutet: Ausgang. Aber was haben diese 2 Sachen mit-einander zu tun?

Mehr

Übungen zur Softwaretechnik

Übungen zur Softwaretechnik Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 9 17. Dezember 2002 www4.in.tum.de/~rumpe/se

Mehr

Qt-Projekte mit Visual Studio 2005

Qt-Projekte mit Visual Studio 2005 Qt-Projekte mit Visual Studio 2005 Benötigte Programme: Visual Studio 2005 Vollversion, Microsoft Qt 4 Open Source s. Qt 4-Installationsanleitung Tabelle 1: Benötigte Programme für die Qt-Programmierung

Mehr

Code wiederverwenden: Objektorientierte Programmierung (OOP) sinnvoll nutzen Roland Wagner Automatisierungstreff IT & Automation 2015

Code wiederverwenden: Objektorientierte Programmierung (OOP) sinnvoll nutzen Roland Wagner Automatisierungstreff IT & Automation 2015 Code wiederverwenden: Objektorientierte Programmierung (OOP) sinnvoll nutzen Roland Wagner Automatisierungstreff IT & Automation 2015 CODESYS a trademark of 3S-Smart Software Solutions GmbH Agenda 1 Warum

Mehr

Exception Handling, Tracing und Logging

Exception Handling, Tracing und Logging Exception Handling, Tracing und Logging Proseminar Objektorientiertes Programmieren mit.net und C# Tomas Ladek Institut für Informatik Software & Systems Engineering Agenda Exceptions Allgemeines Implementierung

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

Leichte-Sprache-Bilder

Leichte-Sprache-Bilder Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen

Mehr

! " # $ " % & Nicki Wruck worldwidewruck 08.02.2006

!  # $  % & Nicki Wruck worldwidewruck 08.02.2006 !"# $ " %& Nicki Wruck worldwidewruck 08.02.2006 Wer kennt die Problematik nicht? Die.pst Datei von Outlook wird unübersichtlich groß, das Starten und Beenden dauert immer länger. Hat man dann noch die.pst

Mehr

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen Alexander Schunk Henry Trobisch Inhalt 1. Vergleich der Unit-Tests... 2 2. Vergleich der Codeabdeckungs-Tests... 2 3. Vergleich

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

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008 Konzeption und Implementierung einer automatisierten Testumgebung, 10. Dezember 2008 1 Gliederung Einleitung Softwaretests Beispiel Konzeption Zusammenfassung 2 Einleitung Komplexität von Softwaresystemen

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

macs Support Ticket System

macs Support Ticket System macs Support Ticket System macs Software GmbH Raiffeisenstrasse 8 78658 Zimmern ob Rottweil Tel. (0741)9422880 1 ALLGEMEIN... 3 2 ABLAUF TICKET-SYSTEM... 4 2.1 Ticket Erstellung... 4 2.2 Ablauf... 4 2.3

Mehr

Microsoft Access 2013 Navigationsformular (Musterlösung)

Microsoft Access 2013 Navigationsformular (Musterlösung) Hochschulrechenzentrum Justus-Liebig-Universität Gießen Microsoft Access 2013 Navigationsformular (Musterlösung) Musterlösung zum Navigationsformular (Access 2013) Seite 1 von 5 Inhaltsverzeichnis Vorbemerkung...

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Vermeiden Sie es sich bei einer deutlich erfahreneren Person dranzuhängen, Sie sind persönlich verantwortlich für Ihren Lernerfolg. 1 2 3 4 Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg. Gerade beim Einstig in der Programmierung muss kontinuierlich

Mehr

Gruppenrichtlinien und Softwareverteilung

Gruppenrichtlinien und Softwareverteilung Gruppenrichtlinien und Softwareverteilung Ergänzungen zur Musterlösung Bitte lesen Sie zuerst die gesamte Anleitung durch! Vorbemerkung: Die Begriffe OU (Organizational Unit) und Raum werden in der folgenden

Mehr

Tutorial. In diesem Tutorial möchte ich die Möglichkeiten einer mehrspracheigen Web-Site erläutern.

Tutorial. In diesem Tutorial möchte ich die Möglichkeiten einer mehrspracheigen Web-Site erläutern. Tutorial In diesem Tutorial möchte ich die Möglichkeiten einer mehrspracheigen Web-Site erläutern. Zu Beginn müssen wir uns über die gewünschten Sprachen Gedanken machen. Zum einem, da eine professionelle

Mehr

Proseminar: Website-Managment-System. NetObjects Fusion. von Christoph Feller

Proseminar: Website-Managment-System. NetObjects Fusion. von Christoph Feller Proseminar: Website-Managment-System NetObjects Fusion von Christoph Feller Netobjects Fusion - Übersicht Übersicht Einleitung Die Komponenten Übersicht über die Komponenten Beschreibung der einzelnen

Mehr

infach Geld FBV Ihr Weg zum finanzellen Erfolg Florian Mock

infach Geld FBV Ihr Weg zum finanzellen Erfolg Florian Mock infach Ihr Weg zum finanzellen Erfolg Geld Florian Mock FBV Die Grundlagen für finanziellen Erfolg Denn Sie müssten anschließend wieder vom Gehaltskonto Rückzahlungen in Höhe der Entnahmen vornehmen, um

Mehr

Step by Step Webserver unter Windows Server 2003. von Christian Bartl

Step by Step Webserver unter Windows Server 2003. von Christian Bartl Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird

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

iloq Privus Bedienungsanleitung Schließanlagen Programmierung Version 1 - Copyright 2013

iloq Privus Bedienungsanleitung Schließanlagen Programmierung Version 1 - Copyright 2013 iloq Privus Schließanlagen Programmierung Version 1 - Copyright 2013 Kurth Electronic GmbH Kommunikations- & Sicherheitssysteme / Im Scherbental 5 / 72800 Eningen u. A. Tel: +49-7121-9755-0 / Fax: +49-7121-9755-56

Mehr

Microsoft SharePoint 2013 Designer

Microsoft SharePoint 2013 Designer Microsoft SharePoint 2013 Designer Was ist SharePoint? SharePoint Designer 2013 Vorteile SharePoint Designer Funktionen.Net 4.0 Workflow Infrastruktur Integration von Stages Visuelle Designer Copy & Paste

Mehr

Beschaffung mit. Auszug aus dem Schulungshandbuch: Erste Schritte im UniKat-System

Beschaffung mit. Auszug aus dem Schulungshandbuch: Erste Schritte im UniKat-System Beschaffung mit Auszug aus dem Schulungshandbuch: Erste Schritte im UniKat-System Stand: 31. Oktober 2014 Inhaltsverzeichnis 1 Erste Schritte im UniKat-System... 2 1.1 Aufruf des Systems... 2 1.2 Personalisierung...

Mehr

Menü auf zwei Module verteilt (Joomla 3.4.0)

Menü auf zwei Module verteilt (Joomla 3.4.0) Menü auf zwei Module verteilt (Joomla 3.4.0) Oft wird bei Joomla das Menü in einem Modul dargestellt, wenn Sie aber z.b. ein horizontales Hauptmenü mit einem vertikalen Untermenü machen möchten, dann finden

Mehr

Die Lernumgebung des Projekts Informationskompetenz

Die Lernumgebung des Projekts Informationskompetenz Beitrag für Bibliothek aktuell Die Lernumgebung des Projekts Informationskompetenz Von Sandra Merten Im Rahmen des Projekts Informationskompetenz wurde ein Musterkurs entwickelt, der den Lehrenden als

Mehr

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was

Mehr

ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN. Der Zauberwürfel-Roboter. Paul Giese. Schule: Wilhelm-Raabe-Schule

ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN. Der Zauberwürfel-Roboter. Paul Giese. Schule: Wilhelm-Raabe-Schule ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN Der Zauberwürfel-Roboter Paul Giese Schule: Wilhelm-Raabe-Schule Jugend forscht 2013 Kurzfassung Regionalwettbewerb Bremerhaven

Mehr

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel ralf_gitzel@hotmail.de

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel ralf_gitzel@hotmail.de EJB Beispiel JEE Vorlesung 10 Ralf Gitzel ralf_gitzel@hotmail.de 1 Stundenkonzept Gemeinsame Übung Stoff der letzten Stunde wird gemeinsam in einem Beispiel umgesetzt Details werden nochmals erklärt bzw.

Mehr

Lokale Installation von DotNetNuke 4 ohne IIS

Lokale Installation von DotNetNuke 4 ohne IIS Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation

Mehr

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista Allgemeines: Bitte lesen Sie sich diese Anleitung zuerst einmal komplett durch. Am Besten, Sie drucken sich diese Anleitung

Mehr

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos in Verbindung mit der Webshopanbindung wurde speziell auf die Shop-Software shop to date von DATA BECKER abgestimmt. Mit

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

Java Enterprise Architekturen Willkommen in der Realität

Java Enterprise Architekturen Willkommen in der Realität Java Enterprise Architekturen Willkommen in der Realität Ralf Degner (Ralf.Degner@tk-online.de), Dr. Frank Griffel (Dr.Frank.Griffel@tk-online.de) Techniker Krankenkasse Häufig werden Mehrschichtarchitekturen

Mehr

Das Leitbild vom Verein WIR

Das Leitbild vom Verein WIR Das Leitbild vom Verein WIR Dieses Zeichen ist ein Gütesiegel. Texte mit diesem Gütesiegel sind leicht verständlich. Leicht Lesen gibt es in drei Stufen. B1: leicht verständlich A2: noch leichter verständlich

Mehr

Dokumentation von Ük Modul 302

Dokumentation von Ük Modul 302 Dokumentation von Ük Modul 302 Von Nicolas Kull Seite 1/ Inhaltsverzeichnis Dokumentation von Ük Modul 302... 1 Inhaltsverzeichnis... 2 Abbildungsverzeichnis... 3 Typographie (Layout)... 4 Schrift... 4

Mehr

Klausur Software-Engineering SS 2005 Iwanowski 23.08.2005

Klausur Software-Engineering SS 2005 Iwanowski 23.08.2005 Klausur Software-Engineering SS 2005 Iwanowski 23.08.2005 Hinweise: Bearbeitungszeit: 90 Minuten Erlaubte Hilfsmittel: im Anhang, sonst keine Bitte notieren Sie Ihre Antworten ausschließlich auf dem Aufgabenblatt!

Mehr

Meet the Germans. Lerntipp zur Schulung der Fertigkeit des Sprechens. Lerntipp und Redemittel zur Präsentation oder einen Vortrag halten

Meet the Germans. Lerntipp zur Schulung der Fertigkeit des Sprechens. Lerntipp und Redemittel zur Präsentation oder einen Vortrag halten Meet the Germans Lerntipp zur Schulung der Fertigkeit des Sprechens Lerntipp und Redemittel zur Präsentation oder einen Vortrag halten Handreichungen für die Kursleitung Seite 2, Meet the Germans 2. Lerntipp

Mehr

Produktvorstellung: CMS System / dynamische Webseiten. 1. Vorwort

Produktvorstellung: CMS System / dynamische Webseiten. 1. Vorwort ALEX IT-Service Ihr IT Servicepartner»ALEX-IT Service«16341 Panketal an unsere Kundschaft Ihr Zeichen, Ihre Nachricht Unser Zeichen Telefon, Name Datum CMS 13.01.2010 Produktvorstellung: CMS System / dynamische

Mehr

1. Einführung. 2. Weitere Konten anlegen

1. Einführung. 2. Weitere Konten anlegen 1. Einführung In orgamax stehen Ihnen die gängigsten Konten des Kontenrahmens SKR03 und SKR04 zur Verfügung. Damit sind im Normalfall alle Konten abgedeckt, die Sie zur Verbuchung benötigen. Eine ausführliche

Mehr

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.

Mehr

TYPO3 Super Admin Handbuch

TYPO3 Super Admin Handbuch TYPO3 Super Admin Handbuch Erweiterung News Für das System der Maria Hilf Gruppe Version 02 09.03.10 Erstellt durch: NCC Design Florian Kesselring Zeltnerstraße 9 90443 Nürnberg 1 Inhaltsverzeichnis Inhalt

Mehr

Kommunikations-Management

Kommunikations-Management Tutorial: Wie kann ich E-Mails schreiben? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory E-Mails schreiben können. In myfactory können Sie jederzeit schnell und einfach E-Mails verfassen egal

Mehr

Kommunikations-Management

Kommunikations-Management Tutorial: Wie importiere und exportiere ich Daten zwischen myfactory und Outlook? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory Daten aus Outlook importieren Daten aus myfactory nach Outlook

Mehr

Einfügen von Bildern innerhalb eines Beitrages

Einfügen von Bildern innerhalb eines Beitrages Version 1.2 Einfügen von Bildern innerhalb eines Beitrages Um eigene Bilder ins Forum einzufügen, gibt es zwei Möglichkeiten. 1.) Ein Bild vom eigenem PC wird auf den Webspace von Baue-die-Bismarck.de

Mehr

Letzte Krankenkassen streichen Zusatzbeiträge

Letzte Krankenkassen streichen Zusatzbeiträge Zusatzbeiträge - Gesundheitsfonds Foto: D. Claus Einige n verlangten 2010 Zusatzbeiträge von ihren Versicherten. Die positive wirtschaftliche Entwicklung im Jahr 2011 ermöglichte den n die Rücknahme der

Mehr

Einleitung: Frontend Backend

Einleitung: Frontend Backend Die Internetseite des LSW Deutschland e.v. hat ein neues Gesicht bekommen. Ab dem 01.01.2012 ist sie in Form eines Content Management Systems (CMS) im Netz. Einleitung: Die Grundlage für die Neuprogrammierung

Mehr

extreme Programming (XP) Hermann Götz Sergij Paholchak Agenda Was ist XP? Grundprinzipien Der Entwicklungsprozess Die Projektplanung Praktiken Vorteile und Nachteile Wann macht XP Sinn für ein Projekt?

Mehr

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,

Mehr

So geht s Schritt-für-Schritt-Anleitung

So geht s Schritt-für-Schritt-Anleitung So geht s Schritt-für-Schritt-Anleitung Software WISO Mein Büro, WISO Angebot und Rechnung Thema E-Mailversand scheitert nach Programmupdate Version/Datum V 14.00.08.300 Es kann unter bestimmten Voraussetzungen

Mehr

Eigenen Farbverlauf erstellen

Eigenen Farbverlauf erstellen Diese Serie ist an totale Neulinge gerichtet. Neu bei PhotoLine, evtl. sogar komplett neu, was Bildbearbeitung betrifft. So versuche ich, hier alles einfach zu halten. Ich habe sogar PhotoLine ein zweites

Mehr

Anzeige von eingescannten Rechnungen

Anzeige von eingescannten Rechnungen Anzeige von eingescannten Rechnungen Wenn Sie sich zu einer Eingangsrechnung die eingescannte Originalrechnung ansehen möchten, wählen Sie als ersten Schritt aus Ihrem Benutzermenü unter dem Kapitel Eingangsrechnung

Mehr

Pädagogik. Melanie Schewtschenko. Eingewöhnung und Übergang in die Kinderkrippe. Warum ist die Beteiligung der Eltern so wichtig?

Pädagogik. Melanie Schewtschenko. Eingewöhnung und Übergang in die Kinderkrippe. Warum ist die Beteiligung der Eltern so wichtig? Pädagogik Melanie Schewtschenko Eingewöhnung und Übergang in die Kinderkrippe Warum ist die Beteiligung der Eltern so wichtig? Studienarbeit Inhaltsverzeichnis 1. Einleitung.2 2. Warum ist Eingewöhnung

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr

Java Script für die Nutzung unseres Online-Bestellsystems

Java Script für die Nutzung unseres Online-Bestellsystems Es erreichen uns immer wieder Anfragen bzgl. Java Script in Bezug auf unser Online-Bestell-System und unser Homepage. Mit dieser Anleitung möchten wir Ihnen einige Informationen, und Erklärungen geben,

Mehr

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2 EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0 EDV Kurs 13/2 Inhaltsverzeichnis 1 Objekte... 1 2 Klassen... 3 2.1 Beziehungen zwischen Klassen... 4 2.1.1 Vererbung... 4 2.1.2

Mehr

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup. 04.06.2005 Conrad Kobsch

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup. 04.06.2005 Conrad Kobsch Ein Blick voraus des Autors von C++: Bjarne Stroustrup 04.06.2005 Conrad Kobsch Inhalt Einleitung Rückblick Nur eine Übergangslösung? Was würde C++ effektiver machen? Quelle 2 Einleitung Wo steht C++,

Mehr

IRF2000 Application Note Lösung von IP-Adresskonflikten bei zwei identischen Netzwerken

IRF2000 Application Note Lösung von IP-Adresskonflikten bei zwei identischen Netzwerken Version 2.0 1 Original-Application Note ads-tec GmbH IRF2000 Application Note Lösung von IP-Adresskonflikten bei zwei identischen Netzwerken Stand: 27.10.2014 ads-tec GmbH 2014 IRF2000 2 Inhaltsverzeichnis

Mehr

Was ich als Bürgermeister für Lübbecke tun möchte

Was ich als Bürgermeister für Lübbecke tun möchte Wahlprogramm in leichter Sprache Was ich als Bürgermeister für Lübbecke tun möchte Hallo, ich bin Dirk Raddy! Ich bin 47 Jahre alt. Ich wohne in Hüllhorst. Ich mache gerne Sport. Ich fahre gerne Ski. Ich

Mehr

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun Java Projekt Schiffe Versenken mit GUI 1. Über den Autor: Name: Marija Matejic Matrikelnummer: 9352571 E-mail: marijamatejic@yahoo.com

Mehr

Das System sollte den Benutzer immer auf dem Laufenden halten, indem es angemessenes Feedback in einer angemessenen Zeit liefert.

Das System sollte den Benutzer immer auf dem Laufenden halten, indem es angemessenes Feedback in einer angemessenen Zeit liefert. Usability Heuristiken Karima Tefifha Proseminar: "Software Engineering Kernkonzepte: Usability" 28.06.2012 Prof. Dr. Kurt Schneider Leibniz Universität Hannover Die ProSeminar-Ausarbeitung beschäftigt

Mehr

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. ewon - Technical Note Nr. 003 Version 1.2 Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. Übersicht 1. Thema 2. Benötigte Komponenten 3. Downloaden der Seiten und aufspielen auf

Mehr

Microsoft Dynamics NAV 2013 R/2 Installationsanleitung. Inhalt: Begleitmaterial des ERP Übungsbuchs:

Microsoft Dynamics NAV 2013 R/2 Installationsanleitung. Inhalt: Begleitmaterial des ERP Übungsbuchs: Begleitmaterial des ERP Übungsbuchs: Arbeiten mit den Windows Client von Microsoft Dynamics NAV 2013 R/2 Microsoft Dynamics NAV 2013 R/2 Installationsanleitung Inhalt: 0.1 Installation von Microsoft Dynamics

Mehr

AOSTA. Aspects in Operating Systems: Tools and Applications

AOSTA. Aspects in Operating Systems: Tools and Applications AOSTA Aspects in Operating Systems: Tools and Applications Michael Engel, Philipps-Universität Marburg AG Verteilte Systeme engel@informatik.uni-marburg.de Aspektorientierung in 5 Minuten ;-) Crosscutting

Mehr

Einstellungen in MS-Word - Schnellzugriffsleiste -

Einstellungen in MS-Word - Schnellzugriffsleiste - - Schnellzugriffsleiste - Anpassen der Schnellzugriffsleiste Zusätzlich zum Menüband (Multifunktionsleiste) existiert eine Schnellzugriffsleiste die man sich selbst konfigurieren kann Schaltfläche "Office"

Mehr

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Inhaltsverzeichnis 1. Anmeldung... 2 1.1 Startbildschirm... 3 2. Die PDF-Dateien hochladen... 4 2.1 Neue PDF-Datei erstellen... 5 3. Obelix-Datei

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005 Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der

Mehr

Microsoft PowerPoint 2013 Folien gemeinsam nutzen

Microsoft PowerPoint 2013 Folien gemeinsam nutzen Hochschulrechenzentrum Justus-Liebig-Universität Gießen Microsoft PowerPoint 2013 Folien gemeinsam nutzen Folien gemeinsam nutzen in PowerPoint 2013 Seite 1 von 4 Inhaltsverzeichnis Einleitung... 2 Einzelne

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

Einen Wiederherstellungspunktes erstellen & Rechner mit Hilfe eines Wiederherstellungspunktes zu einem früheren Zeitpunkt wieder herstellen

Einen Wiederherstellungspunktes erstellen & Rechner mit Hilfe eines Wiederherstellungspunktes zu einem früheren Zeitpunkt wieder herstellen Einen Wiederherstellungspunktes erstellen & Rechner mit Hilfe eines Wiederherstellungspunktes zu einem früheren Zeitpunkt wieder herstellen 1 Hier einige Links zu Dokumentationen im WEB Windows XP: http://www.verbraucher-sicher-online.de/node/18

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

Mehr

Theoretische Grundlagen der Informatik WS 09/10

Theoretische Grundlagen der Informatik WS 09/10 Theoretische Grundlagen der Informatik WS 09/10 - Tutorium 6 - Michael Kirsten und Kai Wallisch Sitzung 13 02.02.2010 Inhaltsverzeichnis 1 Formeln zur Berechnung Aufgabe 1 2 Hamming-Distanz Aufgabe 2 3

Mehr

So richten Sie Outlook Express ein. Einrichten von Outlook Express (hier am Beispiel von Outlook Express 6) für den Empfang meiner E-Mails

So richten Sie Outlook Express ein. Einrichten von Outlook Express (hier am Beispiel von Outlook Express 6) für den Empfang meiner E-Mails Artikel-ID Produktkategorien Datum: 545 PowerWeb Pakete Premium Pakete WebVisitenkarte A / C / M 25.11.2004 So richten Sie Outlook Express ein Einrichten von Outlook Express (hier am Beispiel von Outlook

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

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

Geld Verdienen im Internet leicht gemacht

Geld Verdienen im Internet leicht gemacht Geld Verdienen im Internet leicht gemacht Hallo, Sie haben sich dieses E-book wahrscheinlich herunter geladen, weil Sie gerne lernen würden wie sie im Internet Geld verdienen können, oder? Denn genau das

Mehr