Seminar Softwarereengineering/Merkmale der Programmiersprache C++

Größe: px
Ab Seite anzeigen:

Download "Seminar Softwarereengineering/Merkmale der Programmiersprache C++"

Transkript

1 Seminar Softwarereengineering/Merkmale der Programmiersprache C++ Martin Aumüller TU Ilmenau 31. Mai 2007

2 Themen 1 Generelle Probleme Kompatibilität mit C Standardisierung 2 Verständnisprobleme - Präprozessor und virtuelle Funktionen Präprozessortricks Virtuelle Funktionen 3 weitere Verständnisprobleme im Code Objektbehandlung mit. und Fehlende Garbage-Collection kleinere Ergänzungen

3 Kompatibilität mit C Allgemeines Kompatibilität mit C und viele eigene Features Sprache wirkt aufgebläht und kompliziert generell sind viele C Konstrukte auch in C++ möglich prozedurale Programmierung möglich nicht jeder Programmierer programmiert objektorientiert Viele Tricks aus C möglich, für reine C++-Programmierer nicht unbedingt verständlich Probleme von C übertragen sich nach C++ undefiniertes Verhalten zur Ausführungszeit, z.b. Speicherzugriff außerhalb von Arrays, Überläufe auf signed integer Zeiger - Möglichkeit von dangling pointers und wild pointers

4 Kompatibilität mit C Kompatibilität mit C auch mit Vorteilen verbunden Viele Optimierungsmöglichkeiten, auch inline Assembler möglich C-Programmierer haben geringe Probleme, kompilierbaren (und korrekten) Code zu erzeugen, der jedoch oft nicht im Sinne der OOP ist Inkompatibilitäten expliziter Cast von void*-zeigern notwendig Änderungen einiger C-Funktionen aus der Standardbibliothek wurden vollzogen sizeof(...) kann zu unterschiedlichen Ergebnissen in beiden Sprachen führen C++-Funktionen, die aus C-compiliertem Code aufgerufen werden, müssen als extern C definiert werden

5 Standardisierung Standardisierungsprobleme C++-Standardisierungskomitee diktiert nicht die Implementation von Name Mangling Fehlerbehandlung weiteren Features Probleme: erzeugter Objektcode von Compilern oft inkompatibel viele Unsicherheiten, ob Compiler spezifische Dinge unterstützt z.b. Schlüsselwort export Heutige Compiler richten sich meist nach ANSI-C Standard, jedoch sind auch viele Third-Party-Standards für verschiedene Rechnerarchitekturen und Betriebssysteme verfügbar (z.b. Embedded-C++).

6 Präprozessortricks Präprozessor - Was ist das? Präprozessor Die Eingabe eines C++-Compilers wird mittels eines Präprozessors erzeugt, der durch Präprozessordirektiven gesteuert werden kann. Beispiele: #define ERROR 12 #ifdef ERROR #undef ERROR

7 Präprozessortricks Beispiele(1) 1 #i n c l u d e<i o s t r e a m> 2 #d e f i n e p r i v a t e p u b l i c 3 4 c l a s s T{ 5 private : 6 i n t g e h e i m z a h l ; 7 public : 8 T(){ g e h e i m z a h l = 34;} 9 }; i n t main (){ 12 T i c h k e n n e d i e = new T ( ) ; 13 std : : cout<< Die Geheimzahl i s t : <<ich kenne die >geheimzahl<<std : : endl ; 14 r e t u r n 0 ; 15 } Direkter Zugriff auf private Attribute!

8 Präprozessortricks Beispiele(2) 10 T* test = miau ; Interpretation? 1 #i n c l u d e<i o s t r e a m> 2 #d e f i n e miau new T( 1 2, i c h t e s t e nur ) 3 4 c l a s s T{ 5 public : 6 T( i n t a, s t d : : s t r i n g b){ s t d : : cout<<b<<s t d : : e n d l ;} 7 }; 8 9 i n t main (){ 10 T t e s t = miau ; 11 r e t u r n 0 ; 12 } Code schwer zu interpretieren, wenn Gesamtübersicht nicht gegeben!

9 Präprozessortricks Programmierrichtlinien definierte Symbole werden nur in Großbuchstaben geschrieben wenn definierte Symbole nicht mehr benötigt werden, werden sie mit undef wieder undefiniert gut im Code oder der Dokumentation festhalten, für welche spezifischen Dinge man kritische Symboldefinitionen verwendet

10 Präprozessortricks Projekte, die damit arbeiten KDE-Projekt kdenetwork:kmmessage.cpp 1 // we need a c c e s s to t h e p r o t e c t e d member DwBody : : D e l e t e B o d y P a r t s ( )... 2 #d e f i n e p r o t e c t e d p u b l i c 3 #i n c l u d e <mimelib / body. h> 4 #undef p r o t e c t e d kdepim:alarmdialog.cpp 1 #i f n d e f DESKTOP VERSION 2 #d e f i n e p r o t e c t e d p u b l i c 3 #i n c l u d e <qspinbox. h> 4 #undef p r o t e c t e d OPIE-Projekt: libopie2:otodoaccesscval.cpp 1 //FIXME : Hack to a l l o w d i r e c t a c c e s s to FILE f h. R e w r i t e t h i s! 2 #d e f i n e p r o t e c t e d p u b l i c 3 #i n c l u d e <q f i l e. h> 4 #undef p r o t e c t e d

11 Präprozessortricks Projekte, die damit arbeiten (2) Linux Virtual Server Manager: plvsd/config.h 1 #d e f i n e new mew // t h i s i s sheer hackery 2 #d e f i n e d e l e t e e l e t e // t h e r e has got to be a b e t t e r way : ( 3 #i n c l u d e <heartbeat. h> 4 #i n c l u d e <hb api core. h> 5 #i n c l u d e <hb api. h> 6 #undef new 7 #undef d e l e t e sehr einfache Möglichkeit von Workarounds unübersichtlich, schwer zu debuggen

12 Präprozessortricks Bewertung Vorteile: bedingte Kompilierung möglich (Debugging/OS-Unabhängigkeit) komplexe Makros möglich Nachteile: Möglichkeit, Grundkonzepte der OOP auszuhebeln ohne gute Dokumentation kann Programmverständnis stark leiden

13 Virtuelle Funktionen Einführung Virtuelle Funktionen Das Schlüsselwort virtual ermöglicht in C++, dass Methoden polymorph sein können. Polymorphie Eine Methode heißt polymorph, wenn sie in verschiedenen Klassen die gleiche Spezifikation hat, aber unterschiedlich implementiert ist. Nachteile: Aufrufe virtueller Funktionen sind indirekt, d.h. Adresse der Methode muss erst in der vtable ermittelt werden Keine Möglichkeit Methode inline zu deklarieren geringfügig langsamer.

14 Virtuelle Funktionen Problem Eine vererbte Methode kann nur dann redefiniert werden, wenn in der Superklasse die Methode mit virtual gekennzeichnet wurde. Zitat: Ian Joyner - A Critique of C++, 3rd Edition This is a most serious flaw in C++ because it reduces the flexibility of software components and therefore the ability to write reusable and extensible libraries.

15 Virtuelle Funktionen Programmbeispiele (1) 4 c l a s s T{ 5 public : 6 T( ) { r e s e t ( ) ; } 7 protected : 8 v i r t u a l v o i d r e s e t (){ a =12;} 9 i n t a ; 10 }; c l a s s U : p u b l i c T{ 13 public : 14 v o i d r e s e t (){T : : T ( ) ; b=10;} 15 v o i d p r i n t (){ cout<<a<< <<b<<e n d l ;} 16 private : 17 i n t b ; 18 }; i n t main (){ 21 T t e s t = new U ( ) ; 22 t e s t >p r i n t ( ) ; 23 t e s t >r e s e t ( ) ; 24 t e s t >p r i n t ( ) ; 25 r e t u r n 0 ; 26 }

16 Virtuelle Funktionen Programmbeispiele (1) - Problem kein extra Konstruktor für Klasse U definiert Konstruktor von Klasse T wird genutzt Bei der Initialisierung eines Objektes vom Typ U wird die virtuelle reset()-methode von T genutzt eigentlich sollte redefinierte Methode von U genutzt werden virtuelle Methoden arbeiten nicht korrekt im Konstruktor! Lösung: eigenen Konstruktor für U definieren andere Sprachen (z.b. Java) nutzen redefinierte Methode reset() korrekt

17 Virtuelle Funktionen Programmbeispiele (2) - Memory-Leaks 5 c l a s s M i t a r b e i t e r { 6 public : 7 M i t a r b e i t e r ( s t r i n g name ){name = name ;} 8 v i r t u a l v o i d p r i n t ( ) {cout<< M i t a r b e i t e r : <<name<<e n d l ;} 9 private : 10 s t r i n g name ; 11 }; c l a s s Chef : p u b l i c M i t a r b e i t e r { 14 public : 15 Chef ( s t r i n g name, s t r i n g a b t e i l u n g ) : M i t a r b e i t e r ( name ){ 16 a b t e i l u n g= a b t e i l u n g ;} 17 v o i d p r i n t ( ) { M i t a r b e i t e r : : p r i n t ( ) ; cout<< A b t e i l u n g : <<a b t e i l u n g <<e n d l ;} 18 private : 19 s t r i n g a b t e i l u n g ; 20 }; i n t main (){ 23 M i t a r b e i t e r t = new Chef ( D i e t e r, Buchhaltung ) ; 24 t >p r i n t ( ) ; 25 d e l e t e ( t ) ; 26 r e t u r n 0 ; 27 }

18 Virtuelle Funktionen Programmbeispiele (2) - Memory-Leaks Problem delete(t) löscht alle Objekte mit Destruktor Mitarbeiter(), der String abteilung wird jedoch nie gelöscht! Lösung Klasse von der wir erben, benötigt einen virtuellen Desktruktor.

19 Virtuelle Funktionen Programmbeispiele (3) - Überschreibung und Überladung 4 v o i d t e s t ( i n t a, i n t b=10){ 5 cout<<a b<<endl ; 6 } 7 8 i n t main (){ 9 i n t z = 1 0 ; 10 t e s t ( z ) ; 11 r e t u r n 0 ; 12 } Ausgabe: 100

20 Virtuelle Funktionen Programmbeispiele (3) - Überschreibung und Überladung 4 c l a s s T{ 5 public : 6 v i r t u a l v o i d p r i n t ( i n t a ){ cout<<a<<e n d l ;} 7 }; 8 9 c l a s s U : p u b l i c T{ 10 public : 11 v o i d p r i n t ( i n t a, i n t b=10){ cout<<a b<<e n d l ;} 12 }; i n t main (){ 15 i n t z = 1 0 ; 16 T t e s t = new U ( ) ; 17 t e s t >p r i n t ( z ) ; 18 r e t u r n 0 ; 19 } Ausgabe: 10

21 Virtuelle Funktionen Fazit Vorteile: ermöglicht Polymorphie, wichtiges Grundkonzept der OOP Nachteile: Programmierer der Superklasse hat die Aufgabe, alle Funktionen die vielleicht überschrieben werden zu finden und mit virtual zu kennzeichnen Programmierer muss sich mit dem Wie? beschäftigen, um ein grundlegendes Konzept der OOP zu erreichen bessere Lösung in anderen Sprachen Anforderungen einer Subklasse führen zu Änderungen in der Superklasse

22 Virtuelle Funktionen Ausblick - Lösung in anderen Programmiersprachen Java jede Methode ist potenziell polymorph Überschreibung wird verboten durch final Eiffel in Subklassen kann spezifisch mittels redefine angegeben werden, welche Methoden überschrieben werden mittels Schlüsselwort frozen kann Redefinition verboten werden Object Pascal ähnlich zu Eiffel in Subklassen mit speziellem Schlüsselwort

23 Objektbehandlung mit. und Formen der Objektinitialisierung Objekte einer Klasse T können in C++ sowohl mit T t1; T* t1 = new T(); angelegt werden. Der Zugriff auf Attribute bzw. Methoden erfolgt dann mit. oder

24 Objektbehandlung mit. und Probleme dieser Vielfalt 1 #i n c l u d e<i o s t r e a m> 2 u s i n g namespace std ; 3 4 c l a s s T{ 5 public : 6 T(){ a=12;} 7 v o i d p r i n t (){ cout<<a<<e n d l ;} 8 private : 9 i n t a ; 10 }; v o i d p r i n t C l a s s E l e m (T t e s t ){ 13 t e s t >p r i n t ( ) ; 14 } i n t main (){ 17 T t1 = new T ( ) ; 18 T t2 ; p r i n t C l a s s E l e m ( t1 ) ; 21 printclasselem (&t2 ) ; 22 r e t u r n 0 ; 23 }

25 Objektbehandlung mit. und Probleme dieser Vielfalt (2) Programmierer muss 2 Möglichkeiten der Initialisierung im Kopf behalten Wie ein Objektzugriff geschieht, wird für Programmierer sichtbar implementation hiding?! uniformer Zugriff wäre durch Compiler möglich, wird aber dem Programmierer überlassen Änderungen, z.b. T* t1 zu T t1 hat weitreichende Änderungen zur Folge (alle zu. )

26 Fehlende Garbage-Collection Probleme Durch manuelles Löschen von Elementen kann es dazu kommen, dass... Objekte nie aus dem Speicher gelöscht werden Memory-Leak gültige Referenzen auf Objekte entfernt werden

27 Fehlende Garbage-Collection Beispiel 1 #i n c l u d e<i o s t r e a m> 2 u s i n g namespace std ; 3 4 c l a s s T{ 5 public : 6 T ( ) ; 7 v o i d p r i n t (){ cout<<a<<e n d l ;} 8 private : 9 i n t a ; 10 }; i n t main (){ 13 T t1 = new T ( ) ; 14 T t2 = t1 ; 15 d e l e t e ( t1 ) ; 16 t2 >p r i n t ( ) ; 17 r e t u r n 0 ; 18 } Fehler beim Compilieren Referenz besteht nicht.

28 Fehlende Garbage-Collection Beispiel (2) 5 c l a s s T{ 6 public : 7 v i r t u a l v o i d p r i n t (){ cout<<a<<e n d l ;} 8 protected : 9 i n t a ; 10 }; 11 c l a s s U : p u b l i c T{ 12 public : 13 v o i d p r i n t (){ cout<<a<< <<b<<e n d l ;} 14 private : 15 i n t b ; 16 }; i n t main (){ 19 T t e s t [ 2 ] ; 20 t e s t [ 0 ] = new T ( ) ; 21 t e s t [ 1 ] = new U ( ) ; 22 T s = t e s t [ 1 ] ; d e l e t e ( t e s t [ 0 ] ) ; 25 d e l e t e ( t e s t [ 1 ] ) ; 26 s >p r i n t ( ) ; 27 r e t u r n 0 ; 28 } Kein Fehler beim Complieren Segmentation Fault bei Ausführung!

29 Fehlende Garbage-Collection Fazit defensives Löschen führt zu Speicherlecks und damit bei längerer Ausführung zur Speicherzumüllung aggressives Löschen kann bestehende Referenzen, die Compiler nicht erkennt, löschen und zu Ausführungsfehlern führen

30 kleinere Ergänzungen Verständnisprobleme in compiliertem Code (1) 1 #i n c l u d e<i o s t r e a m> 2 u s i n g namespace std ; 3 4 i n t main (){ 5 f l o a t a = 3. 2 ; 6 i f ( 0. 5 <= a <= 1. 5 ) { 7 cout<< a l i e g t im Wertebereich <<endl ; 8 } 9 r e t u r n 0 ; 10 }

31 kleinere Ergänzungen Verständnisprobleme in compiliertem Code (2) 1 #i n c l u d e<i o s t r e a m> 2 u s i n g namespace std ; 3 4 i n t main (){ 5 s t r i n g a ( Test1 ) ; 6 s t r i n g b ( ) ; 7 s t r i n g c = s t r i n g ( Test2 ) ; 8 cout<<b<<endl ; 9 r e t u r n 0 ; 10 }

32 kleinere Ergänzungen Verständnisprobleme in compiliertem Code (3) weitere oft auftretenden Probleme sind z.b. Vergleich mittels = anstatt == 1 if ((a == b) (c = 12)) anstatt 1 C:: print () wird 1 C: print () verwendet, C dann Label für z.b. goto

Zählen von Objekten einer bestimmten Klasse

Zählen von Objekten einer bestimmten Klasse Zählen von Objekten einer bestimmten Klasse Ziel, Inhalt Zur Übung versuchen wir eine Klasse zu schreiben, mit der es möglich ist Objekte einer bestimmten Klasse zu zählen. Wir werden den ++ und den --

Mehr

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

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

Mehr

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

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

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

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

Klassenbeziehungen & Vererbung

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

Mehr

Objektorientierte Programmierung. Kapitel 12: Interfaces

Objektorientierte 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/

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

Erfahrungen mit Hartz IV- Empfängern

Erfahrungen mit Hartz IV- Empfängern Erfahrungen mit Hartz IV- Empfängern Ausgewählte Ergebnisse einer Befragung von Unternehmen aus den Branchen Gastronomie, Pflege und Handwerk Pressegespräch der Bundesagentur für Arbeit am 12. November

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Konstruktor, Statische Methoden Packages Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Initialisierung von Datenstrukturen

Mehr

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Java 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

Mehr

Lehrer: Einschreibemethoden

Lehrer: Einschreibemethoden Lehrer: Einschreibemethoden Einschreibemethoden Für die Einschreibung in Ihren Kurs gibt es unterschiedliche Methoden. Sie können die Schüler über die Liste eingeschriebene Nutzer Ihrem Kurs zuweisen oder

Mehr

1. Grundlegende Eigenscha5en 2. Redefini+on 3. Polymophie 4. Mehrfachvererbung

1. Grundlegende Eigenscha5en 2. Redefini+on 3. Polymophie 4. Mehrfachvererbung K05 Vererbung & Polymorphie in C++ 1. Grundlegende Eigenscha5en 2. Redefini+on 3. Polymophie 4. Mehrfachvererbung 2 Vererbung in C++: Grundlagen Analog zu Java unterstützt C++ das Konzept der Vererbung:

Mehr

Software 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 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

Mehr

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 9 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:

Mehr

Computeranwendung und Programmierung (CuP)

Computeranwendung und Programmierung (CuP) Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik) Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag

Mehr

Workshop 6. Einführung in die objektorientierte Programmierung. Teil: Java mit BlueJ

Workshop 6. Einführung in die objektorientierte Programmierung. Teil: Java mit BlueJ IBBB 2010 Workshop 6 Einführung in die objektorientierte Programmierung Dozenten: J. Penon, J. Frank, A. Schindler Teil: Java mit BlueJ Dozent: A. Schindler Einf. i. d. OOP - Java u. BlueJ / A. Schindler

Mehr

Typumwandlungen bei Referenztypen

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

Mehr

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

Einführung in TexMaker

Einführung in TexMaker Einführung in TexMaker 23. November 2007 TexMaker ist ein ist ein freier Texteditor für LA TE X-Dokumente unter Windows. Mit diesem Editor lassen sich ohne große Schwierigkeiten *.tex-dokumente aufrufen,

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

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Downloadfehler 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

Mehr

Umwandeln und Exportieren von Adobe-Illustrator-Dateien in Illustrator für Artcut

Umwandeln und Exportieren von Adobe-Illustrator-Dateien in Illustrator für Artcut Umwandeln und Exportieren von Adobe-Illustrator-Dateien in Illustrator für Artcut Unsere mitgelieferte Fonts & Grafik CD haben wir vom Hersteller des Plotters zur Verfügung gestellt bekommen. Die darauf

Mehr

Das Festkomitee hat die Abi-Seite neu konzipiert, die nun auf einem (gemieteten) Share Point Server

Das Festkomitee hat die Abi-Seite neu konzipiert, die nun auf einem (gemieteten) Share Point Server Hallo Leute Das Festkomitee hat die Abi-Seite neu konzipiert, die nun auf einem (gemieteten) Share Point Server (= echtes - zeug ) liegt! Die neue Form hat insbesondere folgende Vorteile: Du bekommst einen

Mehr

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

Informatik 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

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

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

Anwendungsbeispiele Sign Live! Secure Mail Gateway

Anwendungsbeispiele Sign Live! Secure Mail Gateway Anwendungsbeispiele Sign Live! Secure Mail Gateway Kritik, Kommentare & Korrekturen Wir sind ständig bemüht, unsere Dokumentation zu optimieren und Ihren Bedürfnissen anzupassen. Ihre Anregungen sind uns

Mehr

teamsync Kurzanleitung

teamsync Kurzanleitung 1 teamsync Kurzanleitung Version 4.0-19. November 2012 2 1 Einleitung Mit teamsync können Sie die Produkte teamspace und projectfacts mit Microsoft Outlook synchronisieren.laden Sie sich teamsync hier

Mehr

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!. 040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl

Mehr

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 Die Installation der FuxMedia Software erfolgt erst NACH Einrichtung des Netzlaufwerks! Menüleiste einblenden, falls nicht vorhanden Die

Mehr

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

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

Mehr

BENUTZERHANDBUCH. Version 7.6

BENUTZERHANDBUCH. Version 7.6 BENUTZERHANDBUCH Version 7.6 BENUTZERHANDBUCH Version 7.6 OBJECTIF LUNE Inc. 2030 Pie-IX, Suite 500 Montréal, QC, Canada, H1V 2C8 +1 (514) 875-5863 sales@ca.objectiflune.com www.virtualstationery.com 2015

Mehr

Thermoguard. Thermoguard CIM Custom Integration Module Version 2.70

Thermoguard. Thermoguard CIM Custom Integration Module Version 2.70 Thermoguard Thermoguard CIM Custom Integration Module Version 2.70 Inhalt - Einleitung... 3 - Voraussetzungen... 3 - Aktivierung und Funktion der Schnittstelle... 3 - Parameter... 4 - NLS-Einfluss... 4

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

I.1 Die Parrot Assemblersprache

I.1 Die Parrot Assemblersprache I.1 Die Parrot Assemblersprache Die virtuelle CPU Parrot ermöglicht die Verarbeitung der Parrot Assemblersprache (PASM). Zum Einstieg soll ein erstes Beispiel die Ausführung einer PASM-Datei zeigen. Legen

Mehr

Webalizer HOWTO. Stand: 18.06.2012

Webalizer HOWTO. Stand: 18.06.2012 Webalizer HOWTO Stand: 18.06.2012 Copyright 2003 by manitu. Alle Rechte vorbehalten. Alle verwendeten Bezeichnungen dienen lediglich der Kennzeichnung und können z.t. eingetragene Warenzeichen sein, ohne

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

XML-Austauschformat für Sicherheitsdatenblätter

XML-Austauschformat für Sicherheitsdatenblätter XML-Austauschformat für Sicherheitsdatenblätter Version 2.0 / 15. Dezember 2008 www.edas.org 1 XML-Austauschformat für Sicherheitsdatenblätter Der Austausch der Sicherheitsdatenblätter erfolgt als XML-Datei.

Mehr

BEDIENUNG ABADISCOVER

BEDIENUNG ABADISCOVER BEDIENUNG ABADISCOVER Juni 2005 / EMO v.2005.1 Diese Unterlagen sind urheberrechtlich geschützt. Alle Rechte, auch die der Übersetzung, des Nachdrucks und der Vervielfältigung der Unterlagen, oder Teilen

Mehr

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen 1. Quadratische Gleichungen Quadratische Gleichungen lassen sich immer auf die sog. normierte Form x 2 + px + = 0 bringen, in

Mehr

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 -

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 - Matrix42 Use Case - Sicherung und Rücksicherung persönlicher Version 1.0.0 23. September 2015-1 - Inhaltsverzeichnis 1 Einleitung 3 1.1 Beschreibung 3 1.2 Vorbereitung 3 1.3 Ziel 3 2 Use Case 4-2 - 1 Einleitung

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

Programmierparadigmen. Programmierparadigmen. Imperatives vs. objektorientiertes Programmieren. Programmierparadigmen. Agenda für heute, 4.

Programmierparadigmen. Programmierparadigmen. Imperatives vs. objektorientiertes Programmieren. Programmierparadigmen. Agenda für heute, 4. Agenda für heute, 4. Mai, 2006 Programmierparadigmen Imperative Programmiersprachen In Prozeduren zusammengefasste, sequentiell ausgeführte Anweisungen Die Prozeduren werden ausgeführt, wenn sie als Teil

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen von x-y-diagrammen in OpenOffice.calc Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei

Mehr

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Software-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

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

Pflegeberichtseintrag erfassen. Inhalt. Frage: Antwort: 1. Voraussetzungen. Wie können (Pflege-) Berichtseinträge mit Vivendi Mobil erfasst werden?

Pflegeberichtseintrag erfassen. Inhalt. Frage: Antwort: 1. Voraussetzungen. Wie können (Pflege-) Berichtseinträge mit Vivendi Mobil erfasst werden? Connext GmbH Balhorner Feld 11 D-33106 Paderborn FON +49 5251 771-150 FAX +49 5251 771-350 hotline@connext.de www.connext.de Pflegeberichtseintrag erfassen Produkt(e): Vivendi Mobil Kategorie: Allgemein

Mehr

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1): Supportanfrage ESN Bitte füllen Sie zu jeder Supportanfrage diese Vorlage aus. Sie helfen uns damit, Ihre Anfrage kompetent und schnell beantworten zu können. Verwenden Sie für jedes einzelne Thema jeweils

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

Aufklappelemente anlegen

Aufklappelemente anlegen Aufklappelemente anlegen Dieses Dokument beschreibt die grundsätzliche Erstellung der Aufklappelemente in der mittleren und rechten Spalte. Login Melden Sie sich an der jeweiligen Website an, in dem Sie

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

Objektorientiertes Programmieren mit Suse Linux

Objektorientiertes Programmieren mit Suse Linux Objektorientiertes Programmieren mit Suse Linux Zum Programmieren werden 2 Komponenten benötigt: 1. einen Editor zur Eingabe des Quellcodes 2. einen Compiler, der den Quellcode in die Maschinensprache

Mehr

Was ist das Budget für Arbeit?

Was ist das Budget für Arbeit? 1 Was ist das Budget für Arbeit? Das Budget für Arbeit ist ein Persönliches Geld für Arbeit wenn Sie arbeiten möchten aber nicht mehr in einer Werkstatt. Das gibt es bisher nur in Nieder-Sachsen. Und in

Mehr

IT-SICHERHEIT IM UNTERNEHMEN Mehr Sicherheit für Ihre Entscheidung

IT-SICHERHEIT IM UNTERNEHMEN Mehr Sicherheit für Ihre Entscheidung IT-SICHERHEIT IM UNTERNEHMEN Mehr Sicherheit für Ihre Entscheidung IT-SICHERHEIT IM UNTERNEHMEN Mehr Sicherheit für ihre Entscheidung Entdecken Sie was IT Sicherheit im Unternehmen bedeutet IT Sicherheit

Mehr

PHP - Projekt Personalverwaltung. Erstellt von James Schüpbach

PHP - Projekt Personalverwaltung. Erstellt von James Schüpbach - Projekt Personalverwaltung Erstellt von Inhaltsverzeichnis 1Planung...3 1.1Datenbankstruktur...3 1.2Klassenkonzept...4 2Realisierung...5 2.1Verwendete Techniken...5 2.2Vorgehensweise...5 2.3Probleme...6

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

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software Artologik EZ-Equip Plug-in für EZbooking version 3.2 Artologik EZbooking und EZ-Equip EZbooking, Ihre webbasierte Software zum Reservieren von Räumen und Objekten, kann nun durch die Ergänzung um ein oder

Mehr

Einführung in die Programmierung

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

Mehr

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager email-rückläufer Script. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager email-rückläufer Script. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager 7 combit Relationship Manager email-rückläufer Script Inhalt Einleitung 3 Notwendige Anpassungen 3 crm Solution

Mehr

Projektmanagement. Vorlesung von Thomas Patzelt 9. Vorlesung

Projektmanagement. Vorlesung von Thomas Patzelt 9. Vorlesung Projektmanagement Vorlesung von Thomas Patzelt 9. Vorlesung 1 Pläne Kein Plan überlebt die erste Feindberührung - Feldmarschall Helmuth von Moltke Prognosen sind schwierig, besonders wenn sie die Zukunft

Mehr

Objektorientierung: Klassen und Objekte

Objektorientierung: Klassen und Objekte Vorlesung und Übung Universität Paderborn Wintersemester 2015/2016 Dr. Peter Pfahler Objektorientierung: Klassen und Objekte EWS, WS 2015/16, Pfahler L-1 Objektorientierung behandelt in "Einführung in

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

Anwendertreffen 20./21. Juni

Anwendertreffen 20./21. Juni Anwendertreffen Verbindungsmittelachsen VBA Allgemein Die Verbindungsmittelachsen werden nun langsam erwachsen. Nach zwei Jahren Einführungszeit haben wir bereits viele Rückmeldungen mit Ergänzungswünschen

Mehr

How-To-Do. Fernwartung einer VIPA Steuerung via Ethernet

How-To-Do. Fernwartung einer VIPA Steuerung via Ethernet How-To-Do Fernwartung einer VIPA Steuerung via Ethernet Inhaltsverzeichnis 1 Allgemein... 2 1.1 Information... 2 1.2 Hinweis... 2 2 Schematischer Aufbau... 3 2.1 Beispielaufbau... 3 3 Plug n Route... 4

Mehr

Synchronisations- Assistent

Synchronisations- Assistent TimePunch Synchronisations- Assistent Benutzerhandbuch Gerhard Stephan Softwareentwicklung -und Vertrieb 25.08.2011 Dokumenten Information: Dokumenten-Name Benutzerhandbuch, Synchronisations-Assistent

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

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

Felder, Rückblick Mehrdimensionale Felder. Programmieren in C

Felder, Rückblick Mehrdimensionale Felder. Programmieren in C Übersicht Felder, Rückblick Mehrdimensionale Felder Rückblick Vereinbarung von Feldern: typ name [anzahl]; typ name = {e1, e2, e3,..., en} Die Adressierung von Feldelementen beginnt bei 0 Die korrekte

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

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank Die Entscheidung Advoware über VPN direkt auf dem lokalen PC / Netzwerk mit Zugriff auf die Datenbank des zentralen Servers am anderen

Mehr

Fachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 6

Fachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 6 Gudrun Fischer Sascha Kriewel programmierung@is.informatik.uni-duisburg.de Anmeldung zur Klausur! Übungsblatt Nr. 6 Um an der Klausur teilzunehmen, müssen sich Studierende der angewandten Informatik in

Mehr

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016 L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016 Referentin: Dr. Kelly Neudorfer Universität Hohenheim Was wir jetzt besprechen werden ist eine Frage, mit denen viele

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

Einführung in Javadoc

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

Mehr

Wir machen neue Politik für Baden-Württemberg

Wir machen neue Politik für Baden-Württemberg Wir machen neue Politik für Baden-Württemberg Am 27. März 2011 haben die Menschen in Baden-Württemberg gewählt. Sie wollten eine andere Politik als vorher. Die Menschen haben die GRÜNEN und die SPD in

Mehr

Algorithmen und Datenstrukturen

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

Mehr

GS-Buchhalter/GS-Office 2015 Saldovorträge in folgenden Wirtschaftsjahren erfassen

GS-Buchhalter/GS-Office 2015 Saldovorträge in folgenden Wirtschaftsjahren erfassen GS-Buchhalter/GS-Office 2015 Saldovorträge in folgenden Wirtschaftsjahren erfassen Impressum Business Software GmbH Primoschgasse 3 9020 Klagenfurt Copyright 2014 Business Software GmbH Die Inhalte und

Mehr

Komponententest. Testen von Software Systemen. Übung 02 SS 2009 Version: 1.0 09.06.2009

Komponententest. 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

2. Semester, 2. Prüfung, Lösung

2. Semester, 2. Prüfung, Lösung 2. Semester, 2. Prüfung, Lösung Name Die gesamte Prüfung bezieht sich auf die Programmierung in C++! Prüfungsdauer: 90 Minuten Mit Kugelschreiber oder Tinte schreiben Lösungen können direkt auf die Aufgabenblätter

Mehr

Second Steps in eport 2.0 So ordern Sie Credits und Berichte

Second Steps in eport 2.0 So ordern Sie Credits und Berichte Second Steps in eport 2.0 So ordern Sie Credits und Berichte Schritt 1: Credits kaufen, um Zugangscodes generieren zu können Wählen Sie Credits verwalten und klicken Sie auf Credits kaufen. Geben Sie nun

Mehr

10 Erweiterung und Portierung

10 Erweiterung und Portierung 10.1 Überblick In vielen Fällen werden Compiler nicht vollständig neu geschrieben, sondern von einem Rechnersystem auf ein anderes portiert. Das spart viel Arbeit, ist aber immer noch eine sehr anspruchsvolle

Mehr

Programmieren I. Kapitel 15. Ein und Ausgabe

Programmieren I. Kapitel 15. Ein und Ausgabe Programmieren I Kapitel 15. Ein und Ausgabe Kapitel 15: Ein und Ausgabe Ziel: einen kleinen Einblick in die vielfältigen IO Klassen geben Grober Überblick Klasse File zur Verwaltung von Dateien Random

Mehr

Testen mit JUnit. Motivation

Testen 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

Mehr

Xcode/Cocoa/Objective-C Crashkurs Programmieren unter Mac OS X

Xcode/Cocoa/Objective-C Crashkurs Programmieren unter Mac OS X Xcode/Cocoa/Objective-C Crashkurs Programmieren unter Mac OS X SwissMacMeeting #1 26. Juni 2004 Messeturm Basel http://mac.naepflin.com Was ist das Ziel dieses Kurses? Starthilfe Einblick in die Möglichkeiten,

Mehr

Stepperfocuser 2.0 mit Bootloader

Stepperfocuser 2.0 mit Bootloader Stepperfocuser 2.0 mit Bootloader Info Für den Stepperfocuser 2.0 gibt es einen Bootloader. Dieser ermöglicht es, die Firmware zu aktualisieren ohne dass man ein spezielles Programmiergerät benötigt. Die

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

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich 13 OOP MIT DELPHI Delphi war früher "Object Pascal". Dieser Name impliziert eine Funktionalität, welche in der Welt der Programmierung nicht mehr wegzudenken ist: die objektorientierte Programmierung,

Mehr

Zur drittletzten Zeile scrollen

Zur drittletzten Zeile scrollen 1 Fragen und Antworten zur Computerbedienung Thema : Zur drittletzten Zeile scrollen Thema Stichwort Programm Letzte Anpassung Zur drittletzten Zeile scrollen Scrollen VBA Excel 1.02.2014 Kurzbeschreibung:

Mehr

1) Farbsteuergerät in der Nikobus-Software unter Modul zufügen hinzufügen.

1) Farbsteuergerät in der Nikobus-Software unter Modul zufügen hinzufügen. Programmierung des Farbsteuergeräts 340-00112 für Nikobus Diese Bedienungsanleitung gilt auch für die Nikobus-Produkte 340-00111 und 340-00113. Achtung: einige der aufgeführten Betriebsarten sind nur auf

Mehr

GetName(), GetName(), GetGeschlecht() und AelterWerden().

GetName(), GetName(), GetGeschlecht() und AelterWerden(). 11. Vererbung Vererbung ist eine der mächtigsten Funktionalitäten der objektorientierten Programmiersprachen. Man versteht unter Vererbung die Tatsache, dass eine Klasse alle Methoden und Variablen einer

Mehr

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

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

Mehr

Dokumentenverwaltung im Internet

Dokumentenverwaltung im Internet Dokumentenverwaltung im Internet WS 09/10 mit: Thema: Workflow und Rollenverteilung im Backend Gruppe: DVI 10 Patrick Plaum und Kay Hofmann Inhalt 1. Benutzer und Benutzergruppen erstellen...2 1.1. Benutzergruppen...2

Mehr

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten 2008 netcadservice GmbH netcadservice GmbH Augustinerstraße 3 D-83395 Freilassing Dieses Programm ist urheberrechtlich geschützt. Eine Weitergabe

Mehr

12. Vererbung. Prof. Dr. Markus Gross Informatik I für D-ITET (WS 03/04)

12. Vererbung. Prof. Dr. Markus Gross Informatik I für D-ITET (WS 03/04) 12. Vererbung Prof. Dr. Markus Gross Informatik I für D-ITET (WS 03/04)!Vererbung Konzept!Protected Section!Virtuelle Mitgliedsfunktionen!Verwendung von Vererbung Copyright: M. Gross, ETHZ, 2003 2 Vererbung!

Mehr

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken? UErörterung zu dem Thema Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken? 2000 by christoph hoffmann Seite I Gliederung 1. In zu großen Mengen ist alles schädlich. 2.

Mehr

Starten Sie Eclipse: Hier tragen sie Ihr Arbeitsverzeichnis ein. Zu Hause z.b. c:\workspace.

Starten Sie Eclipse: Hier tragen sie Ihr Arbeitsverzeichnis ein. Zu Hause z.b. c:\workspace. Starten Sie Eclipse: Abgesehen vom Kommandozeilenfenster, auf welches wir später eingehen, öffnet sich ein Dialog (in der FH vermutlich nicht, überspringen Sie in diesem Fall): Hier tragen sie Ihr Arbeitsverzeichnis

Mehr

Programme im Griff Was bringt Ihnen dieses Kapitel?

Programme im Griff Was bringt Ihnen dieses Kapitel? 3-8272-5838-3 Windows Me 2 Programme im Griff Was bringt Ihnen dieses Kapitel? Wenn Sie unter Windows arbeiten (z.b. einen Brief schreiben, etwas ausdrucken oder ein Fenster öffnen), steckt letztendlich

Mehr