Hochschule Furtwangen
|
|
- Monika Schuster
- vor 8 Jahren
- Abrufe
Transkript
1 Hochschule Furtwangen Seminar Aktuelle Themen der Informatik Ausarbeitung Tools für Aspekt-orientierte Programmierung Harald Schwecht, CN
2 Inhaltsverzeichnis 1. Einleitung Begriffserklärung Core Concern Crosscutting Concern Phasen der Aspekt-Orientierung Identifikation Separation Integration Schwierigkeit der Anforderungs-Separation Separation von Crosscutting Concerns durch AOP Grundlegendes zu AOP Elemente von AOP Join Points Pointcuts Advices Inter-type Declarations Aspekte AOP Tools & Frameworks Unterscheidungsmerkmale verschiedener AOP Lösungsansätze AspectC/C AspectJ AOP-Beispiel ActiveAspect Asbro AspectWerkz JBoss AOP Spring AOP weitere AOP Tools Übersicht Syntax Überblick Sprach-Mechanismus Fazit Quellen
3 1. Einleitung Wieso ist AOP derart nützlich? AOP ist Programmierung basierend auf der Identifizierung und Erzeugung von Aspekten. Wichtig ist das Verständnis der zugrunde liegenden AOP-Konzepte und wie AOP Objektorientierte Programmierung und -Designs ergänzt, um Java Code wartbarer und robuster zu gestalten. AOP ersetzt oder verlagert nicht die OOP, sondern ergänzt sie. Aus diesem Grund kann man AOP als den nächsten natürlichen Schritt der Software-Entwicklung über die OOP hinaus betrachten. Mit konventionellen Objekt-orientierten Techniken sind logisch zusammengehörige Softwareelemente oft nicht modularisierbar. Eine schlechte Modularisierung zieht einige negative Effekte nach sich, auf die diese Ausarbeitung ebenfalls hindeuten soll. Um die Modularisierung zu fördern, existieren unterschiedlich ausgeprägte Werkzeugen für die Softwareentwicklung. Diese werden im Einzelnen besprochen und die unterschiedlichen Selektionssprachen und Adaptionsmechanismen verglichen, sowie ihre Eigenschaften aufgeführt. 3
4 2. Begriffserklärung 2.1. Core Concern Core Concerns (engl. core concern, "Kernfunktionalität") sind die eigentliche Kernlogik (Packages, Classes oder Source Code) des Programms, sozusagen die reine Unternehmenslogik Crosscutting Concern In der AOP stößt man oft auf den Begriff Crosscutting Concerns (=CCC, "übergreifende Anforderung", quer schneidende Kernfunktionalität). Solche CCC wären z.b. Anforderungen wie Fehlerbehandlung, Performance, Sicherheit, Transaktions-Management oder Logging. Sie sind zur eigentlichen Kernlogik des Programms "orthogonal" zu betrachten. Sie schneiden diese somit (engl. crosscut) und lassen sich nicht eindeutig einem Software Modul zuordnen Phasen der Aspekt-Orientierung Die Aspektorientierung kann man in drei grundlegende Phasen unterteilen: Identifikation Separation Integration 3.1. Identifikation Nutzung verschiedener Verfahren zur Erkennung von Core- und Crosscutting Concerns Separation Definition, modularer Entwurf und Implementation aller Concerns. Modular implementierte Core Concerns werden Komponenten genannt. Crosscutting Concerns werden demzufolge als die eigentlichen Aspekte bezeichnet. Zusätzlich werden in dieser Phase notwendige Integrationsregeln definiert, bevor es in die Integrationsphase geht Integration Die in der Separationsphase definierten Regeln dienen nun dem Zusammenfügen der Concerns (implementierte Komponenten und Aspekte) zum Gesamtsystem. Ein prägnanter Begriff in der AOP bezeichnet speziell die Integration, dieser lautet "Weaving" (= das Weben) und beschreibt bildlich das Vorgehen in der Integration. 4. Schwierigkeit der Anforderungs-Separation Wieso geschieht das Vermischen von Anforderungen bei der OOP? Zum einen weil die OOP Partitionierungs- und Modularisierungs-Mechanismen liefert, welche lediglich auf Zustände bzw. Daten und Verhalten basieren. Zum anderen weil Verfahren existierender Programmiersprachen und -designs keine brauchbaren Instrumente bieten, um auf einfache Weise Crosscutting Concerns sauber zu trennen. Diese Module liegen in der OOP ungekapselt, verstreut im ganzen Code. Diese Tatsache wirkt sich somit negativ auf die Wartbarkeit, die Wiederverwendbarkeit, u.u. auch auf die Nachvollziehbarkeit und das Entdecken von Fehlerquellen aus. 4
5 Kernfunktionalität (Core Concern) Applikation in der Objekt-orientierten Programmierung (OOP) Modul 1 Modul 2 modulübergreifende Anforderungen (Crosscutting Concerns) Sicherheit Logging Echtzeitverhalten Abbildung 1: Ansatz in der OOP 5. Separation von Crosscutting Concerns durch AOP AOP unterstützt die Separation und die Organisation des Source Codes, der mit diesen "übergreifende Anforderung" gelöst werden muss. Durch die Erzeugung von Aspekten erfolgt eine Modularisierung des Codes. Dies könnte man mit der Gruppierung in Verbindung stehenden Zustände und Verhaltensweisen innerhalb Klassen in der OOP vergleichen. Dadurch wird erreicht, dass solche Crosscutting Concerns (z.b. die Sicherheit oder das Logging betreffend) in spezifischen Aspekten und Objekten enthalten sind und nicht mehr - die Unternehmenslogik "verschmutzend" - vermischt die Applikation durchziehen. Kernfunktionalität (Core Concern) Modul 1 Modul 2 Sicherheit Logging Echtzeitverhalten Aspekt- Weber Komponenten Applikation in der Aspekt-orientierten Programmierung (AOP) modulübergreifende Anforderungen (Crosscutting Concerns) Modul 1 Aspekte Abbildung 2: Ansatz in der AOP Modul 2 5
6 6. Grundlegendes zu AOP Um Crosscutting Code auszuklammern, müssen AOP-basierende Lösungen: ermöglichen, dass Crosscutting Code in den Abarbeitungsablauf der Unternehmenslogik einwirken kann, diesen dynamisch einwirkenden Code berechtigen dessen Subsysteme aufzurufen, das Verpacken und die Organisation dieses zusätzlichen Codes zu ermöglichen ohne die Unternehmenslogik zu beeinflussen Zusätzlich muss es eine Möglichkeit der Beschreibung geben, wo und wann Crosscutting Code angelegt wird, sowie sicher zu stellen, dass dieser Code Zugriff zu Kontextinformationen während der Abarbeitung hat. Diese Merkmale erfüllen heutige AOP-Systeme. Sie fangen zur Laufzeit die Ausführung der Applikation ab und wenden dynamisch eigenen Crosscutting Code an. Am Beispiel von AspectJ - einem Aspekt-orientierten Framework für Java - kann wo und wann dies geschehen soll der Entwickler durch Spezifizierung von Pointcuts festlegen, die wiederum Join Points auswählen. 7. Elemente von AOP 7.1. Join Points Join Points sind spezielle Punkte zur Laufzeit, an denen Crosscutting Code eingesetzt werden kann. Die möglichen Join Points sind von den eingesetzten AOP Tools und Frameworks abhängig. Es gibt einerseits statische und andererseits dynamische Join Points. Speziell für AspectJ, Join Points möglich bei: Methodenaufruf Methodenausführung Aufruf eines Exception Handlers Ausführung eines Exception Handlers Konstruktoraufruf Konstruktorausführung Feld auslesen Feld schreiben Join Points verbunden mit Methodenaufruf haben früher Zugriff zur auszuführenden Kontextinformation als der tatsächliche Methodenaufruf. Join Points verbunden mit Methodenausführung haben Zugriff zur auszuführenden Kontextinformation innerhalb des Methodenrumpfs. Allerdings können Join Points nicht direkt genutzt werden, stattdessen müssen sie durch Anwendung von Pointcuts ausgewählt werden Pointcuts Pointcuts spezifizieren das "wo und wann" des Einsetzens von Crosscutting Codes. Sie wählen/identifizieren eine Menge von Join Points. Speziell für AspectJ (Deklaration innerhalb aspect oder class): 6
7 call(signature) wählt Join Points wenn spezielle(r) Methode/Konstruktor aufgerufen wird execute(signature) wählt Join Points wenn spezielle(r) Methode/Konstruktor ausgeführt wird get(signature) wählt Join Points wenn spezielles Feld gelesen wird set(signature) wählt Join Points wenn spezielle Feld geschrieben wird handler(type-pattern) wählt Join Points wenn der Exception Handler mit dem "Throwable type-pattern" ausgeführt wird Signature und type-pattern können mit Jokerzeichen ergänzt werden, um u.u. möglichst viele Methoden, Konstruktoren oder Subtypen abzudecken. Mehrere Pointcuts können mit && oder Operatoren kombiniert werden Advices Advices knüpfen einzusetzenden Crosscutting Code mit den durch Pointcuts selektierten Join Points. Der Advice beinhaltet den auszuführenden Crosscutting Code und bestimmt durch seine Eigenschaft wann es in Abhängigkeit zum - vom Pointcut - gewählten Joint Point ausgeführt wird. Speziell für AspectJ: before() after() around() Crosscutting Code VOR dem/den gewählten Joint Point(s) ausführen Crosscutting Code NACH dem/den gewählten Joint Point(s) ausführen Crosscutting Code AM ORT des/der gewählten Joint Point(s) ausführen, mit der Möglichkeit die Ausführung des/der Joint Point(s) zu umhüllen oder auszulassen Typischerweise wird ein durch den Join Point betroffener Code und durch den Crosscutting Code ersetzter Code als "advised" (engl. für angewiesen) bezeichnet Inter-type Declarations Inter-type Declarations sind von AspectJ zusätzlich einsetzbare Teile (Methoden/Felder) zu einer existierenden Java-Klasse oder Typs. Diese erscheinen als wären sie direkt innerhalb der ursprünglichen Klasse oder Typs implementiert Aspekte Aspekte werden auf ziemlich gleicher Weise definiert wie Klassen. Im Aspekt können Pointcuts, Advices und Inter-type Declarations zusammengepackt werden. Zusätzlich kann ein Aspekt Felder und Methoden (static/non-static) haben und es kann abstrakt sein. Klassen oder Aspekte können sogar soweit ausgebaut werden dass sie Aspekte erzeugen. Ein Aspekt stellt somit eine gut modularisierte Crosscutting Struktur dar! 7
8 8. AOP Tools & Frameworks 8.1. Unterscheidungsmerkmale verschiedener AOP Lösungsansätze AOP Lösungsansätze unterscheiden sich in: Zugriff Zusammenfügen Benennung und Abstraktion von Join Points. Zusätzlich in: Syntax AOP Reifegrad Release Historie: AspectJ, AspectWerkz, JBoss AOP, Spring AOP, 1.Release in 2001 vom AOP Team beim Xerox PARC 1.Release in 2002 von BEA Systems 1.Release in 2004 als eine Ergänzung zum JBoss Application Server 1.Release in 2004 als eine Ergänzung zum Spring framework 8.2. AspectC/C++ AspectC/C++ Development Tools (ACDT) basiert auf dem C/C++ Development Tools (CDT) Plugin und unterstütz integriert als Eclipse Plugin - zusätzliches Syntax Highlighting sowie Extended Outlining, was bewirkt dass Aspekte, Advices und Pointcuts speziell angezeigt werden. Unterstütz wird Eclipse ab v3.1.x, darunter gibt es allerdings eine ältere Version von AspectC/C++ mit der Version AspectJ AspectJ ist eine Erweiterung von Java um die Aspektorientierung. AJDT ist als Eclipse Plugin verfügbar. Aspekte sind hier eine Kombination aus Java-Code und AspectJ-Code. Durch die vom AspectJ Compiler durchgeführte Verwebung auf Source-Code-Ebene, werden Aspekte in Java-Bytecode eingebunden. Es gibt dabei zwei wesentliche Compiler: ajc: im Eclipse AspectJ Projekt enthalten => aspectjrt.jar muss im Classpath/Eclipse existieren! (wird mitkopiert) abc: (AspectBench Compiler) erweiterbarer optimierender Compiler Es existieren zwei nennenswerte Portierungen auf Lisp (AspectL) und Ruby (AspectR). 8
9 8.3.1 AOP-Beispiel HelloWorld.java: Am Beispiel einer HelloWorld! Implementation in AOP können die eben angesprochenen Elemente deutlich erkannt und verstanden werden. Zuallererst wird ein neues AspectJ Projekt erstellt. Gleich darauf eine neue Java Klasse "HelloWorld" und eine Methode sayhello() erzeugt. In main() wird die Methode dann als ein neues Objekt der Klasse aufgerufen. Hinweis: Wichtig an dieser Stelle ist, dass man das Projekt bisher testet bzw. die class-datei erzeugt, da sonst später das Advice nicht richtig gefunden wird! Abbildung 3: HelloWorld.java World.aj Darauf folgend wird eine neue AspectJ Klasse "World" erzeugt. Ein benutzerdefinierter Pointcut "greeting():" muss nun deklariert werden, der die Ausführung jeglicher Methoden namens HelloWorld.sayHello(..) mit jeglichem Rückgabewert (durch Wildcard Stern ) und übergebenen Argumenten (gekennzeichnet durch die Parameter- Wildcard mit 2 Punkten) anpasst. Der Pointcut ist wie bekannt nötig, um nach der Ausgabe von "Hello " etwas zu tun. Was getan wird und wie in Bezug zum Join Point, entscheidet nun ein Advice afterreturning, und zwar die Ausgabe von World! nach dem Join Point Hello. 9
10 Abbildung 4: World.aj 8.4. ActiveAspect Abbildung 5: Darstellung von Aspekten in ActiveAspect ActiveAspect ist ein Eclipse Plugin für die Darstellung von Aspekten ähnlich der UML- Diagramme. Daraus werden die Zwischenbeziehungen nicht nur der Klassen des Projekts, sondern auch die Advices der Aspekte zu einzelnen Klassen deutlich. 10
11 8.5. Asbro Asbro ist ein Eclipse Plugin um in erster Stelle ein Treemap des Projekts darzustellen, kann jedoch, da es mindestens Eclipse v3.1 und AJDT v1.2 (Aspect Java Development Tool) benötigt, auch für die Darstellung von Aspekten innerhalb des Treemaps genutzt werden. Das Treemap View kann zusätzlich neben dem AJDT Editor in Eclipse geöffnet werden AspectWerkz AspectWerkz wurde kombiniert mit dem AspectJ Projekt und führte dann zum AspectJ 5. Ziel war es eine größere Flexibilität betreffs Aspekt-Syntax zu erreichen, indem die Vorteile beider Frameworks dazu beitragen. AspectWerkz wird allerdings unabhängig weitergeführt. Falls AspectWerkz nicht als plugin für Eclipse genutzt wird, sind einige Libraries im Java Classpath nötig, d.h. nicht nur eine jar-datei wie es bei AspectJ der fall ist. Nachteil: Imports sind explizit nötig, da kein impliziter Import-Mechanismus (wie bei AspectJ) vorhanden ist: import org.codehaus.aspectwerkz.definition.pointcut; import org.codehaus.aspectwerkz.joinpoint.joinpoint; import org.codehaus.aspectwerkz.annotation.expression; import org.codehaus.aspectwerkz.annotation.*; //für Advices Einerseits sind bei AspectWerkz Deklarationen wie die Annotation von Java 5 möglich (siehe folgende Abb.), andererseits im Sinne der Kompatibilität ist die Annotation von Javadoc zu J2SE 1.4 möglich. XML wird als Deklaration von Integrations-Konfigurationen von Aspekten ebenso wie die Annotationen erlaubt (siehe Abbildung zu aop.xml). Abbildung 6: Authentication.java Abbildung 7: aop.xml 11
12 8.7. JBoss AOP Mit dem Eclipse Plugin Jboss AOP soll erreicht werden serverseitig Aspekt-orientierte Entwicklungen im Bereich Enterprise Java Bean (EJB) zu gewährleisten. Gerade in diesem Bereich macht die Modularisierung besonderen Sinn. Hervorzuheben ist dass der JBoss Application Server die AOP-Technik unterstützt, anders als die J2EE-Spezifikation anderer Server, die dies nicht unterstützen. Explizite Imports nötig, z.b.: import org.jboss.aspects.security.*; //z.b. alle Aspekte aus Security import org.jboss.aop.joinpoint.* import org.jboss.aop.pointcut.pointcut; import org.jboss.aop.advice.*; Abbildung 8: Authentication.java Abbildung 9: jboss-aop.xml 8.8. Spring AOP Durch Spring AOP erhält man eine stark auf XML aufbauende Implementierung, die dadurch jedoch feine Granularität betreffs Konfigurierbarkeit und Code-Geflecht erreicht. Ähnlich dem JBoss AOP in: Konfigurierung Erzeugung Starten Vorteile: komfortabel und minimal in Runtime-Konfiguration des Spring frameworks kein separater Launcher nötig Nachteil: Bei Nutzung von JDK Proxies sind lediglich von diesen Proxies abgerufene Objekte advisebar, d.h. um Advices auf andere Objekte legen zu können, ist die Implementation eines eigenen Interface nötig. Alternativ kann man es dem Framework überlassen, welches den CGLIB Proxy Support nutzt. 12
13 8.9. weitere AOP Tools LOOM.NET Aspect# HyperJ (IBM) COSMOS (IBM) JAC Project (Java Aspect Components) Übersicht Syntax Aspekt Inter-type Advice Pointcut Konfiguration Deklaration Deklaration Körper AspectJ Code.lst Inclusion List AspectWerkz aop.xml Annotation oder XML Java JBoss AOP String jboss-aop.xml Methode Spring AOP XML springconfig.xml Überblick Sprach-Mechanismus AspectJ AspectWerkz JBoss AOP Spring AOP Pointcut Matching signature, type pattern, subtypes, wildcard, annotation signature, instanceof, wildcard, annotation regulärer Ausdruck Pointcut Anreihung &&,,! &&, Advices before, after, after returning, after throwing, around around before, after returning, around, throws dynamischer Kontext this, target, args via reflective access instanziert durch VM, target, instance, control flow VM, class, instance, thread VM, class, instance, join point class, instance Erweiterbar keit Abstrakte Pointcuts overriding, advice bindings 13
14 9. Fazit Einige Frameworks müssen einen höheren Reifegrad erreichen, bevor sie allgemeine Akzeptanz finden. Tendenziell kann ein Entwickler in der Aspekt-Orientierung seine persönliche Gewichtung auf Tools mit weniger Java- und dafür mehr XML-Anteil legen oder umgekehrt, wenn es darum gehen soll alles in einem Binary hinterlegen zu können. Glücklicherweise wird dies durch die Verwebung von Aspekten besonders bei dem Tool AspectJ durch den Aspekt-Compiler erfüllt. Es mag deutlich effizienter bzw. schneller sein eine XML-Datei mit Konfigurationen auszutauschen anstatt Java Source Code auszutauschen und dann zu kompilieren. Andererseits fühlt es sich mit AspectJ mehr nach Java-Programmierung an Aspekte zu deklarieren. Wenn man besonders mit dem JBoss Applikation Server arbeitet, wird man um JBoss AOP nicht herumkommen, im Gegenteil, die Möglichkeit Aspekt-orientiert an die Erzeugung von Middleware heranzutreten birgt bei der Komplexität der heutigen Sicherheits- und Transaktionsmanagement-Anforderungen genügend Überzeugungskraft. Crosscutting Concerns getrennt von der Kernfunktionalität, wartbarer und weniger fehleranfälliger während der Implementierung, zu halten kann aus Sicht von Qualitäts- und Risiko-Management von IT-Projekten positiv auf die Fertigstellung vieler unter Umständen sonst gescheiterten Projekten wirken. Schließlich kann man feststellen, dass jedes Framework seine Eigenschaften hat und es liegt an einem selber bzw. an den Applikations-Anforderungen, welches man letztendlich für die Umsetzung wählt. 14
15 10. Quellen Vorgabe: JavaMVP03 - AOP tools comparison, IBM - An introduction to AOP, IBM Development Tools for AspectC/C Asbro - ActiveAspect - AspectWerkz - JBoss AOP Spring AOP 15
Ü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
MehrObjectBridge 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
MehrObjektorientierte 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
MehrPrinzipien 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........................
MehrDiplomarbeit. 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
MehrDie 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,
MehrEinfü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
MehrSoftware-Engineering und Optimierungsanwendungen in der Thermodynamik
Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering 5 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger OPTSWE_SWE: 5 Programmentwicklung
MehrCode 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
MehrTesten mit JUnit. Motivation
Test First Design for Test in Eclipse (eigentlich: ) zu einer Klasse Beispiel zur Demonstration Ergänzungen Test First "Immer dann, wenn Du in Versuchung kommst, etwas wie eine print- Anweisung oder einen
MehrRobot 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
MehrEJB 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.
MehrGrundlagen 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
Mehrecaros-update 8.2 Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Eschenweg 7 64331 Weiterstadt
Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Inhaltsverzeichnis 1 Allgemein... 3 2 Erforderliche Anpassungen bei der Installation...3 2.1 Konfiguration Jboss 7 Applicationserver (Schritt 4/10)...3
MehrSoftwaretests 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
MehrEs 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
MehrQt-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
MehrSession 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
MehrBeschreibung des MAP-Tools
1. Funktionen des MAP-Tool 2. Aufbau des MAP-Tools 3. Arbeiten mit dem MAP-Tool Beschreibung MAP-Tool.doc Erstellt von Thomas Paral 1 Funktionen des MAP-Tool Die Hauptfunktion des MAP-Tools besteht darin,
MehrVerhindert, 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:
MehrTask: Nmap Skripte ausführen
Task: Nmap Skripte ausführen Inhalt Einfache Netzwerkscans mit NSE Ausführen des Scans Anpassung der Parameter Einleitung Copyright 2009-2015 Greenbone Networks GmbH Herkunft und aktuellste Version dieses
MehrEinführung in AOP. Rico Schiekel - 012816 rschiekel@web.de. Agenda. Kernproblem der Objekt Orientierung
Einführung in AOP Informatikseminar Rico Schiekel - 012816 rschiekel@web.de Fachhochschule Ravensburg Weingarten Hochschule für Technik und Sozialwesen Einführung in AOP Agenda Kernproblem der Objekt Orientierung
MehrZeichen 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
MehrSEP 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
MehrInstallationsanleitung Maschinenkonfiguration und PP s. Release: VISI 21 Autor: Anja Gerlach Datum: 18. Dezember 2012 Update: 18.
Installationsanleitung Maschinenkonfiguration und PP s Release: VISI 21 Autor: Anja Gerlach Datum: 18. Dezember 2012 Update: 18.Februar 2015 Inhaltsverzeichnis 1 Einbinden der Postprozessoren... 3 1.1
MehrAgile 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
MehrGesicherte Prozeduren
Gesicherte Prozeduren Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln zurückgeliefert.
MehrHow-to: Webserver NAT. Securepoint Security System Version 2007nx
Securepoint Security System Inhaltsverzeichnis Webserver NAT... 3 1 Konfiguration einer Webserver NAT... 4 1.1 Einrichten von Netzwerkobjekten... 4 1.2 Erstellen von Firewall-Regeln... 6 Seite 2 Webserver
MehrBinä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
MehrJava 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
MehrInstallation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren
Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren 1 32- oder 64-bit Windows feststellen In den nachfolgenden Schritten ist es nötig, dass Sie wissen, ob Sie
MehrTTS - TinyTimeSystem. Unterrichtsprojekt BIBI
TTS - TinyTimeSystem Unterrichtsprojekt BIBI Mathias Metzler, Philipp Winder, Viktor Sohm 28.01.2008 TinyTimeSystem Inhaltsverzeichnis Problemstellung... 2 Lösungsvorschlag... 2 Punkte die unser Tool erfüllen
MehrPflichtenheft. CDIX-Roles. Erweiterung des CDIX Berechtigungssystems. Autor : CD Software GmbH. Copyright 2013-2014 CD Software GmbH Version:
Pflichtenheft CDIX-Roles Erweiterung des CDIX Berechtigungssystems Autor : CD Software GmbH Copyright 2013-2014 CD Software GmbH Version: Motivation... 3 Organisation... 3 Kompatibilität und Aktivieren
Mehr3. Stored Procedures und PL/SQL
3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln
MehrKonfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014
Konfiguration VLAN's Version 2.0.1 Deutsch 01.07.2014 In diesem HOWTO wird die Konfiguration der VLAN's für das Surf-LAN der IAC-BOX beschrieben. Konfiguration VLAN's TITEL Inhaltsverzeichnis Inhaltsverzeichnis...
MehrAnleitung zum Arbeiten mit Microsoft Visual Studio 2008 im Softwarepraktikum ET/IT
Boris Golubovic Dortmund, den 24. Oktober 2010 Anleitung zum Arbeiten mit Microsoft Visual Studio 2008 im Softwarepraktikum ET/IT Ein Projekt anlegen Ein Projekt kapselt alle zu einer Anwendung gehörenden
MehrSoftware Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015
Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur
MehrAlbert 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.
MehrObjektorientierte Programmierung. Kapitel 12: Interfaces
12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/
MehrVermeiden 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
MehrFragen 2015. Arthur Zaczek. Apr 2015
Arthur Zaczek Apr 2015 1 Ihre Fragen 2015 2 WPF 2.1 Code Behind Mit dem MVVM Pattern haben wir praktisch keinen Nutzen für das Code Behind der WPF Forms, sind diese dann eher für kleinere Applikationen
MehrWEBINAR@LUNCHTIME THEMA: "SAS STORED PROCESSES - SCHNELL GEZAUBERT" HELENE SCHMITZ
WEBINAR@LUNCHTIME THEMA: "SAS STORED PROCESSES - SCHNELL GEZAUBERT" HELENE SCHMITZ HERZLICH WILLKOMMEN BEI WEBINAR@LUNCHTIME Moderation Anne K. Bogner-Hamleh SAS Institute GmbH Education Consultant Training
MehrBei der Focus Methode handelt es sich um eine Analyse-Methode die der Erkennung und Abstellung von Fehlerzuständen dient.
Beschreibung der Focus Methode Bei der Focus Methode handelt es sich um eine Analyse-Methode die der Erkennung und Abstellung von Fehlerzuständen dient. 1. F = Failure / Finding An dieser Stelle wird der
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen
Mehr2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE
2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht
MehrDas 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
MehrMicrosoft 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
MehrSDD System Design Document
SDD Software Konstruktion WS01/02 Gruppe 4 1. Einleitung Das vorliegende Dokument richtet sich vor allem an die Entwickler, aber auch an den Kunden, der das enstehende System verwenden wird. Es soll einen
MehrAbamsoft 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
MehrJava Kurs für Anfänger Einheit 4 Klassen und Objekte
Java Kurs für Anfänger Einheit 4 Klassen und Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 13. Juni 2009 Inhaltsverzeichnis klasse
MehrKapitel 4. Einführung in den Scannergenerator Flex. Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9
Kapitel 4 Einführung in den Scannergenerator Flex Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9 Generatoren für die lexikalische Analyse Scannergeneratoren werden eingesetzt um die
MehrInnovator 11 classix. Anbindung an Eclipse. Einführung, Installation und Konfiguration. Connect. Michael Kaaden. www.mid.de
Innovator 11 classix Anbindung an Eclipse Einführung, Installation und Konfiguration Michael Kaaden Connect www.mid.de Einführung in die Innovator-Eclipse-Anbindung Die hier beschriebene Anbindung steht
MehrAnforderungen an die HIS
Anforderungen an die HIS Zusammengefasst aus den auf IBM Software basierenden Identity Management Projekten in NRW Michael Uebel uebel@de.ibm.com Anforderung 1 IBM Software Group / Tivoli Ein Feld zum
MehrInternet und WWW Übungen
Internet und WWW Übungen 7 Serverseitige Web-Technologien [WEB7] Rolf Dornberger 1 06-11-12 7 Serverseitige Web-Technologien 1. Begriffe Zusatz für Interessierte: 2. JSP erstellen 3. Servlet erstellen
MehrKurzfassung der Studienarbeit
Kurzfassung der Studienarbeit Abteilung Informatik Namen der Studenten Roman Widmer Mikkala Pedersen Studienjahr Sommersemester 2004 Titel der Studienarbeit.NET Skript Debugger Examinator Der GUI-Builder
MehrMO 27. Aug. 2007, 17:00 UHR JAVA FRAMEWORKS TIPPS VON PROFI-GÄRTNERN GEGEN WILDWUCHS
072 MO 27. Aug. 2007, 17:00 UHR JAVA FRAMEWORKS TIPPS VON PROFI-GÄRTNERN GEGEN WILDWUCHS Die Flut von Open Source Frameworks ist vergleichbar mit dem Markt von kommerziellen Produkten Es gibt eine Vielzahl
Mehr4D Server v12 64-bit Version BETA VERSION
4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und
MehrErstellen eigener HTML Seiten auf ewon
ewon - Technical Note Nr. 010 Version 1.2 Erstellen eigener HTML Seiten auf ewon 30.08.2006/SI Übersicht: 1. Thema 2. Benötigte Komponenten 3. Funktionsaufbau und Konfiguration 3.1. Unterpunkt 1 3.2. Unterpunkt
MehrForschen - Schreiben - Lehren
Forschen - Schreiben - Lehren Kontakt: Mareike Gronich mgronich@uni-bielefeld.de Fach/Fachgebiet: Germanistik Art der Lehrveranstaltung: Seminar Ausgangspunkt Geschütztes konstruktives Peer-Feedback in
Mehrimpact ordering Info Produktkonfigurator
impact ordering Info Copyright Copyright 2013 veenion GmbH Alle Rechte vorbehalten. Kein Teil der Dokumentation darf in irgendeiner Form ohne schriftliche Genehmigung der veenion GmbH reproduziert, verändert
MehrEin 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++,
MehrBeschreibung und Bedienungsanleitung. Inhaltsverzeichnis: Abbildungsverzeichnis: Werkzeug für verschlüsselte bpks. Dipl.-Ing.
www.egiz.gv.at E-Mail: post@egiz.gv.at Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Beschreibung und Bedienungsanleitung Werkzeug für verschlüsselte bpks
MehrDownloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler
Downloadfehler in DEHSt-VPSMail Workaround zum Umgang mit einem Downloadfehler Downloadfehler bremen online services GmbH & Co. KG Seite 2 Inhaltsverzeichnis Vorwort...3 1 Fehlermeldung...4 2 Fehlerbeseitigung...5
MehrWas ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,
Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit, Wie kann ein PDF File angezeigt werden? kann mit Acrobat-Viewern angezeigt werden auf jeder Plattform!! (Unix,
MehrPrimzahlen und RSA-Verschlüsselung
Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also
MehrObjektorientierter Software-Entwurf Grundlagen 1 1. Analyse Design Implementierung. Frühe Phasen durch Informationssystemanalyse abgedeckt
Objektorientierter Software-Entwurf Grundlagen 1 1 Einordnung der Veranstaltung Analyse Design Implementierung Slide 1 Informationssystemanalyse Objektorientierter Software-Entwurf Frühe Phasen durch Informationssystemanalyse
MehrMORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH
MORE Profile Pass- und Lizenzverwaltungssystem erstellt von: Thorsten Schumann erreichbar unter: thorsten.schumann@more-projects.de Stand: MORE Projects GmbH Einführung Die in More Profile integrierte
MehrEinfü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
MehrVerwendung des IDS Backup Systems unter Windows 2000
Verwendung des IDS Backup Systems unter Windows 2000 1. Download der Software Netbackup2000 Unter der Adresse http://www.ids-mannheim.de/zdv/lokal/dienste/backup finden Sie die Software Netbackup2000.
MehrGuide DynDNS und Portforwarding
Guide DynDNS und Portforwarding Allgemein Um Geräte im lokalen Netzwerk von überall aus über das Internet erreichen zu können, kommt man um die Themen Dynamik DNS (kurz DynDNS) und Portweiterleitung(auch
MehrContent Management System mit INTREXX 2002.
Content Management System mit INTREXX 2002. Welche Vorteile hat ein CM-System mit INTREXX? Sie haben bereits INTREXX im Einsatz? Dann liegt es auf der Hand, dass Sie ein CM-System zur Pflege Ihrer Webseite,
MehrDesign Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi
Design Pattern - Strukturmuster CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi Agenda Einleitung Strukturmuster Fassade Model View Controller Vergleich 2 Einleitung Strukturmuster
MehrAnleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH
Amt für Informatik Anleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH Anleitung vom 12. September 2009 Version: 1.0 Ersteller: Ressort Sicherheit Zielgruppe: Benutzer von SSLVPN.TG.CH Kurzbeschreib:
MehrJava Entwicklung für Embedded Devices Best & Worst Practices!
Java Entwicklung für Embedded Devices! George Mesesan Microdoc GmbH Natürlich können wir dieses neue log4j Bundle auch auf dem Device verwenden. Ist doch alles Java. Java Micro Edition (ME) Java Standard
MehrJavadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck
Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle
MehrHandbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken
Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen
MehrProfessionelle 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
Mehr1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:
Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:
MehrAutorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente
Autorisierung Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente Dokumentation zum Referat von Matthias Warnicke und Joachim Schröder Modul: Komponenten basierte Softwareentwickelung
MehrJava 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,
MehrSoftware-Engineering Grundlagen des Software-Engineering
Software-Engineering Grundlagen des Software-Engineering 7.2 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger SWE: 7.2 Programmentwicklung und Debuggen mit IDE
MehrEasyWk DAS Schwimmwettkampfprogramm
EasyWk DAS Schwimmwettkampfprogramm Arbeiten mit OMEGA ARES 21 EasyWk - DAS Schwimmwettkampfprogramm 1 Einleitung Diese Präsentation dient zur Darstellung der Zusammenarbeit zwischen EasyWk und der Zeitmessanlage
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
Mehr4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:
4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie
MehrAspektorientierte 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
MehrDokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser
Dokumentation Black- und Whitelists Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser Inhalt INHALT 1 Kategorie Black- und Whitelists... 2 1.1 Was sind Black- und Whitelists?...
MehrInternet Explorer Version 6
Internet Explorer Version 6 Java Runtime Ist Java Runtime nicht installiert, öffnet sich ein PopUp-Fenster, welches auf das benötigte Plugin aufmerksam macht. Nach Klicken auf die OK-Taste im PopUp-Fenster
MehrProgrammierung für Mathematik (HS13)
software evolution & architecture lab Programmierung für Mathematik (HS13) Übung 5 1 Aufgabe: Eclipse IDE 1.1 Lernziele 1. Die Entwicklungsumgebung Eclipse einrichten. 2. Eclipse kennen lernen und mit
MehrKlassenentwurf. 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
MehrInformatik Kurs Simulation. Hilfe für den Consideo Modeler
Hilfe für den Consideo Modeler Consideo stellt Schulen den Modeler kostenlos zur Verfügung. Wenden Sie sich an: http://consideo-modeler.de/ Der Modeler ist ein Werkzeug, das nicht für schulische Zwecke
MehrLizenzen auschecken. Was ist zu tun?
Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.
MehrGrundfunktionen und Bedienung
Kapitel 13 Mit der App Health ist eine neue Anwendung in ios 8 enthalten, die von vorangegangenen Betriebssystemen bislang nicht geboten wurde. Health fungiert dabei als Aggregator für die Daten von Fitness-
MehrAnleitung OpenCms 8 Webformular Auswertung
Anleitung OpenCms 8 Webformular Auswertung 1 Erzbistum Köln Webformular Auswertung 15. August 2014 Inhalt 1. Allgemeines zum Webformular Auswertung... 3 2. Verwendung des Webformulars... 4 2.1. Reiter
MehrPHP 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
MehrApplication Frameworks
Seminar Software Engineering 1 Grundlagen Agenda Spring Framework Dependency Injection Aspektorientierte Programmierung Datenbankanbindung Modell View Controller Sicherheit Spring vs. Java EE Zusammenfassung
MehrWeb 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.
MehrBIF/SWE - Übungsbeispiel
BIF/SWE - Übungsbeispiel Arthur Zaczek Feb 2015 1 Allgemein 1.1 Ziele Ziele dieses Übungsbeispieles ist es: GUI: Implementierung einer grafischen Oberfläche mit JavaFX oder WPF UI-Komponente: Implementierung
MehrDieses 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
MehrKomponententest. Testen von Software Systemen. Übung 02 SS 2009 Version: 1.0 09.06.2009
Testen von Software Systemen Übung 02 SS 2009 Version: 1.0 09.06.2009 Komponententest Kunde: Dr. Reinhold Plösch Dr. Johannes Sametinger Kundenreferenz: 259.019 Team 19 Mitarbeiter: Christian Märzinger
Mehr