Fachpraktikum Graphische Benutzungsoberflächen Sommersemester Michael Wörner, Michael Raschke, Bernhard Schmitz. Einführung in Flash

Größe: px
Ab Seite anzeigen:

Download "Fachpraktikum Graphische Benutzungsoberflächen Sommersemester 2010. Michael Wörner, Michael Raschke, Bernhard Schmitz. Einführung in Flash"

Transkript

1 Fachpraktikum Graphische Benutzungsoberflächen Sommersemester 2010 Michael Wörner, Michael Raschke, Bernhard Schmitz Einführung in Flash

2 Die Entwicklungsumgebung Flash Builder ist kommerzielle Software OpenSource-Alternative: FlashDevelop JRE wird benötigt Installation von FlashDevelop ermöglicht automatische Installation von Adobes Flex SDK. Flash-Debugger Für FlashDevelop: Windows Flash Player 10.1 ActiveX control content debugger (for IE) Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 2

3 Flex, Flash, SDK, AS3, MXML, WTF? Flex: Weiterentwicklung von Flash (Vereinfacht: Flash: Animationen, etc. Flex: Programmierung) Flash Builder hieß früher Flex Builder (Adobe ist genauso verwirrt) ActionScript 3: Programmiersprache als Teil von Flex MXML: Auf XML basierende deklarative Sprache zur Beschreibung von Oberflächen (Teil von Flex) ActionScript kann in MXML eingebettet werden (aber MXML nicht in ActionScript) Ergebnis der Kompilierung ist in allen Fällen eine *.swf-datei, die im Browser (mit Flash-Plugin) oder mit Standalone-Flash-Player abspielbar ist Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 3

4 FlashDevelop Entsprechend den vielen Technologien gibt es auch viele Projektmöglichkeiten Für uns: Entweder AS3-Projekt (reines AS3 ohne MXML) oder Flex-4-Projekt (MXML + AS3) Empfehlung: Wenn menülastig Flex-4-Projekt, wenn eher frei: AS3-Projekt. Fürs erste: Flex4-Projekt Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 4

5 Einführung MXML Das erstellte Projekt ist direkt lauffähig GUI-Elemente als XML-Tags hinzufügen Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 5

6 Einführung MXML HBox & VBox HBox: Horizontale Anordnung von beliebigen Elementen VBox: Vertikale Anordnung von beliebigen Elementen <mx:vbox> <mx:label text="was soll angezeigt werden?"/> <mx:checkbox id="checkboxmale" label="male" selected="true" /> <mx:checkbox id="checkboxfemale" label="female" selected="false" /> </mx:vbox> Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 6

7 Einführung MXML - Binding Jedes Element kann mit einer eindeutigen id versehen werden Auf Element kann über die id Bezug genommen werden. Binding wird angezeigt durch geschweifte Klammern id.attribut Updates geschehen automatisch, sobald Änderung eintritt Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 7

8 Einbettung von ActionScript Einbettung über <fx:script> <!*CDATA* ++ </fxscript> GUI-Elemente können statt im MX-Teil auch in AS erzeugt werden. Erzeugte Elemente können mit addchild zu einem Vaterelement hinzugefügt werden Binding von Events an Funktionen über Funtionsname() Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 8

9 Binding & Repeater Binding von AS3 ins MXML ermöglichen Repeater ermöglichen variable Schleifen in MXML Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 9

10 Erzeugung eigener Klassen in ActionScript Assistent zum Hinzufügen neuer Klassen Empfehlenswert, Packages zu Verwenden Falls von einer existierenden Klasse abgeleitet werden soll, kann diese Angegeben werden Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 10

11 Properties und Styles Flex unterscheidet zwischen Properties und Styles Kein Unterschied in MXML Unterschied in ActionScript Normale Zuweisung für Properties setstyle( PropertyName, Value ) für Styles Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 11

12 ActionScript Objektorientiert: Packages, Klassen, Methoden, Properties package MeinPackage import flash.display.sprite; // Klassen können public oder internal (sichtbar nur im Package) sein. public class MeineKlasse extends Sprite // Klassenelemente können public, protected oder private sein. // Bei Variablen- und Parameterdeklarationen wird zuerst der Name angegeben, dann, // mit Doppelpunkt getrennt, der Typ. public static const ZERO:Number = 0; public var meinproperty:number = 0; // Eine Methode mit dem gleichen Namen wie die Klasse fungiert als Konstruktor. public function MeineKlasse(n:Number) meinproperty = n; // Der Rückgabewert einer Funktion steht mit Doppelpunkt getrennt dahinter. public function quadriere():number // Lokale Variablen werden ebenfalls mit var deklariert. var neuerwert:number = meinproperty * meinproperty; meinproperty = neuerwert; return neuerwert; Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 12

13 ActionScript Accessoren private var temp:number; public function get temperature():number return this.temp * 2; public function set temperature(t:number):void this.temp = t; foo.temperature = 2; trace(foo.temperature); // Gibt 4 aus. for und for each for (var i:int = 0; i < 10; i++) trace(i); var array:array = new Array(1, 2, 3, 5, 7, 11); for each(var p:int in array) trace(p); Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 13

14 ActionScript Als Einsprungspunkt dient die Klasse, die in FlashDevelop als Always Compile markiert ist. Diese Klasse muss von flash.display.sprite abgeleitet sein. Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 14

15 ActionScript Standardtypen var b:boolean = true; // oder false var i:int = 0; var u:uint = 0; var n:number = 1.2; var s:string = Hallo ; var x:* = new Sprite(); // Referenz auf Basisklasse aller Klassen function proc():void // Eine Funktion ohne Rückgabewert Casting var j:int = int(n); var o:displayobject = x as DisplayObject; Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 15

16 Grafische Ausgabe Über das graphics-property kann gezeichnet werden graphics.beginfill(0xff0000); // Farbe als 0xRRGGBB var w:number = stage.stagewidth; // Im von DisplayObject geerbten stage-property steht eine var h:number = stage.stageheight; // Referenz auf den Anzeigebereich. graphics.drawcircle(w / 2, h / 2, 0.8 * Math.min(w, h) / 2); graphics.endfill(); Zeichnen wird automatisch bei jedem Frame wiederholt. Um Zeichnung zu löschen: graphics.clear() Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 16

17 Grafische Ausgabe Sprites können hierarchisch aufgebaut sein: package import flash.display.shape; import flash.display.sprite; import flash.geom.matrix; public class Main extends Sprite // Shape ist einfacher als Sprite, z.b. keine Interaktion und keine Kind-Elemente private var littlesquare:shape = new Shape(); private var littlecircle:shape = new Shape(); public function Main() littlesquare.graphics.beginfill(0x80c020); littlesquare.graphics.drawrect(-10, -10, 20, 20); littlesquare.graphics.endfill(); littlecircle.graphics.beginfill(0x2080c0); littlecircle.graphics.drawcircle(0, 0, 10); littlecircle.graphics.endfill(); addchild(littlesquare); addchild(littlecircle); placeshapes(); [...] Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 17

18 Grafische Ausgabe Platzierung von Elementen: [...] private function placeshapes():void littlesquare.x = 100; littlesquare.y = 100; littlesquare.rotation = 45; littlecircle.x = 150; littlecircle.y = 100; // Alternativ kann man auch direkt mit Transformationsmatrizen arbeiten: private function placeshapes2():void var t:matrix = new Matrix(); t.rotate(45 / 180 * Math.PI); t.translate( 100, 100); littlesquare.transform.matrix = t; // Um die Matrix direkt anzugeben: littlecircle.transform.matrix = new Matrix(1, 0, 0, 1, 150, 100); Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 18

19 Einbinden von Grafiken Mit der Embed-Direktive werden Mediendateien direkt in die Flash-Datei gelinkt (d. h. nicht zur Laufzeit geladen). [Embed(source="Image1.svg")] private var Image1:Class; [Embed(source="Image2.png")] private var Image2:Class; [...] var image1:sprite = new Image1(); var image2:bitmap = new Image2(); Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 19

20 Event-Handling in ActionScript package MeinPackage import flash.display.sprite; import flash.events.mouseevent; public class Main extends Sprite private var color:int = 0xFF0000; private var sprite:sprite = new Sprite(); public function Main() drawsprite(); sprite.addeventlistener(mouseevent.click, onclick); addchild(sprite); private function drawsprite():void sprite.graphics.clear(); sprite.graphics.beginfill(color); sprite.graphics.drawcircle(stage.stagewidth / 2, stage.stageheight / 2, 40); sprite.graphics.endfill(); [...] Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 20

21 Event-Handling in ActionScript [...] private function onclick(e:mouseevent):void color = 0xFFFF00 - color; drawsprite(); Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 21

22 Animation [...] public class Main extends Sprite private var color:int = 0xFF0000; private var sprite:sprite = new Sprite(); private var framecount:int = 0; public function Main() [...] addeventlistener(event.enter_frame, onenterframe); private function onenterframe(e:event):void sprite.y = Math.sin(frameCount / stage.framerate) * stage.stageheight * 0.3; framecount++; [...] [...] Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 22

23 Hilfe Programmierhandbuch: Klassenreferenz: Institut für Visualisierung und Interaktive Systeme Universität Stuttgart 23

24 Ende

Vorlesung Usability and Interaction. Sommersemester 2009

Vorlesung Usability and Interaction. Sommersemester 2009 Vorlesung Usability and Interaction Sommersemester 2009 Dipl.-Inf. Philipp Heim Forschungsgebiet Interaktive Systeme Institut für Visualisierung und interaktive Systeme Universitätsstraße 38 70569 Stuttgart

Mehr

Multimedia Engineering II - Übung 2

Multimedia Engineering II - Übung 2 Multimedia Engineering II - Übung 2 Zielstellung der Übungsaufgabe Das Login-Panel der ersten Übung erhält nun die Funktion, auf eine zweite View zu wechseln. Auf dieser werden Sie nun das erste Mal einen

Mehr

Vorlesung Usability and Interaction. Sommersemester 2010

Vorlesung Usability and Interaction. Sommersemester 2010 Vorlesung Usability and Interaction Sommersemester 2010 Dipl.-Inf. Philipp Heim Forschungsgebiet Interaktive Systeme Institut für Visualisierung und interaktive Systeme Universitätsstraße 38 70569 Stuttgart

Mehr

Einführung in ActionScript

Einführung in ActionScript Fachbereich Mathematik und Informatik Softwareprojekt: Spieleprogrammierung Einführung in ActionScript Do, Hoang Viet(do@mi.fu-berlin.de) Freie Universität Berlin, SoSe 2012 Agenda Allgemeine Einführung

Mehr

Verbesserung des Prototyping Prozesses von Infotainment Systemen mit der Hilfe von Adobe Flash und Flex

Verbesserung des Prototyping Prozesses von Infotainment Systemen mit der Hilfe von Adobe Flash und Flex Verbesserung des Prototyping Prozesses von Infotainment Systemen mit der Hilfe von Adobe Flash und Flex Abschlussvortrag Projektarbeit Simon Stusak Betreuer: Michael Sedlmair Externer Betreuer: Mario Tokarz

Mehr

Rich Internet Applications, Flex & Mate. (Ja, das ist Grafische Benutzeroberflächen!) 18.03.2010 Jakob Külzer jakob.kuelzer@gmail.

Rich Internet Applications, Flex & Mate. (Ja, das ist Grafische Benutzeroberflächen!) 18.03.2010 Jakob Külzer jakob.kuelzer@gmail. Rich Internet Applications, Flex & Mate (Ja, das ist Grafische Benutzeroberflächen!) 18.03.2010 Jakob Külzer jakob.kuelzer@gmail.com Überblick Mein Thema im Überblick 1. Definitionen 2. Rich Internet Applications

Mehr

Java Schulung (Java 2 Java Development Kit 5 / 6)

Java Schulung (Java 2 Java Development Kit 5 / 6) 2. Grundlagen der Objektorientierung 2.1 Klassen, Attribute, Methoden Klassen Eine Klasse beschreibt als Bauplan Gemeinsamkeiten einer Menge von Objekten ist also ein Modell, auf dessen Basis Objekte erstellt

Mehr

Vererbung & Schnittstellen in C#

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

Mehr

Einführung Internettechnologien. - Clientseitige Programmierung -

Einführung Internettechnologien. - Clientseitige Programmierung - Einführung Internettechnologien - Clientseitige Programmierung - Client Client: Programm, das Daten von einem Server anfordert In einem Netzwerk können unterschiedliche Clients zum Einsatz kommen Im Folgenden:

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

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

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

Übung 1 mit C# 6.0 MATTHIAS RONCORONI

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

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Kapitel 8. Programmierkurs. Methoden. 8.1 Methoden

Kapitel 8. Programmierkurs. Methoden. 8.1 Methoden Kapitel 8 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Methoden Überladen von Methoden Der this-zeiger Konstruktoren Vererbung WS 07/08

Mehr

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des

Mehr

Einführung in die. objektorientierte Programmierung

Einführung in die. objektorientierte Programmierung Einführung in die objektorientierte Programmierung Teil 3 Vererbung Modul WI111: Objektorientierte Programmierung Fachrichtung Wirtschaftsinformatik Prof. Dr. Gert Faustmann Fachbereich Berufsakademie

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

Objektorientierte Programmierung

Objektorientierte Programmierung 1. Begriffe Objektorientierte Programmierung mit C++ Prozedurale Programmierung Sprachen: C, Pascal, Cobol, Basic,... Objektorientierte Programmierung Sprachen: C++, C#, Java... Methode: - Gesamtproblem

Mehr

Dokumentation des Projektes Tic Tac Toe

Dokumentation des Projektes Tic Tac Toe Praktikum aus Programmierung Dr. Michael Hahsler Dokumentation des Projektes Tic Tac Toe 0050230 1 Java Projekt: Tic Tac Toe 1. Inhaltsverzeichnis 1. Inhaltsverzeichnis... 2 2. Problemdefinition... 2 3.

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

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

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

C++ - Einführung in die Programmiersprache Polymorphismus und Vererbung. Eltern

C++ - Einführung in die Programmiersprache Polymorphismus und Vererbung. Eltern C++ - Einführung in die Programmiersprache Polymorphismus und Vererbung Eltern Kind Kind Vererbung Definition von Klassen auf Basis von bestehenden Klassen. Implementierung von ist ein. bildet ein hierarchisches

Mehr

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

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

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2 Universität Osnabrück 1 3 - Objektorientierte Programmierung in Java Zur Erinnerung: Aufteilung der Schichten GUI Vorlesung 17: 3-Schichten-Architektur 2 Fachkonzept Fachkonzept - Datenhaltung Datenhaltung

Mehr

Objektorientiertes JavaScript

Objektorientiertes JavaScript Objektorientiertes JavaScript Christoph Fabritz dm121506@fhstp.ac.at http://goo.gl/jzqxnw Inhalt JavaScript Objektorientierung OO in JavaScript Literatur JavaScript Interpretiert / gescriptet Dynamische

Mehr

Medienproduktion Sommersemester 2010. Dipl.-Inform. Alexander Schulze Prof. Dr. Ing. Klaus Rebensburg

Medienproduktion Sommersemester 2010. Dipl.-Inform. Alexander Schulze Prof. Dr. Ing. Klaus Rebensburg Medienproduktion Sommersemester 2010 Dipl.-Inform. Alexander Schulze Prof. Dr. Ing. Klaus Rebensburg Ablauf Heute Vorstellung Projekte & Gruppen Programmieren mit ActionScript 3 Weitere Vorlesungen Stoffentwicklung

Mehr

Adobe Certified Expert-Programm

Adobe Certified Expert-Programm Adobe Certified Expert-Programm Product Proficiency-Prüfungs-Bulletin Adobe Flash CS3 Prüfungsnr. 9A0-058 Checkliste für die ACE-Zertifizierung Die folgende Checkliste hilft Ihnen dabei, die ACE-Zertifizierung

Mehr

Inhalt. Danksagung... 13. Einleitung... 15. 1 Wissenswertes rund um Flex und Java... 19. 2»Get ready!«aufsetzen der Entwicklungsumgebung...

Inhalt. Danksagung... 13. Einleitung... 15. 1 Wissenswertes rund um Flex und Java... 19. 2»Get ready!«aufsetzen der Entwicklungsumgebung... Danksagung...................................................................................... 13 Einleitung......................................................................................... 15

Mehr

Wiederholung und Themenbereiche der Klausur im Fach Autorensysteme 2

Wiederholung und Themenbereiche der Klausur im Fach Autorensysteme 2 Wiederholung und Themenbereiche der Klausur im Fach Autorensysteme 2 Termin: Do, 14.07. 10:00-12:00 Raum B101 Erlaubte Unterlagen: ActionScript-Lexikon Es kommen nur Inhalte vor, die in der Vorlesung durchgenommen

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

Java für C++ Programmierer

Java für C++ Programmierer Java für C++ Programmierer Alexander Bernauer bernauer@inf.ethz.ch Einführung in die Übungen zu Informatik II (D ITET) FS2010 ETH Zürich Ziel Allgemeiner Überblick Kennenlernen der Suchbegriffe Warum Java?

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

3. Konzepte der objektorientierten Programmierung

3. Konzepte der objektorientierten Programmierung 3. Konzepte der objektorientierten Programmierung 3.1 Basiskonzepte 3.2 Generalisierung / Spezialisierung 3.3 Aggregation 3.4 Assoziation 3.5 Nachrichten 3.6 Polymorphismus 3. Konzepte der Objektorientierung

Mehr

1 Einführung... 13. 2 Erste Schritte... 19. 3 Programmierkurs... 33. 4 Datentypen... 81. 5 Weiterführende Programmierung... 139

1 Einführung... 13. 2 Erste Schritte... 19. 3 Programmierkurs... 33. 4 Datentypen... 81. 5 Weiterführende Programmierung... 139 Auf einen Blick 1 Einführung... 13 2 Erste Schritte... 19 3 Programmierkurs... 33 4 Datentypen... 81 5 Weiterführende Programmierung... 139 6 Objektorientierte Programmierung... 191 7 Verschiedene Module...

Mehr

Java Beans. von Raoul Schneider

Java Beans. von Raoul Schneider Java Beans von Raoul Schneider Java Beans Was ist ein Bean? Idee Eigenschaften Die Beanbox Vom Java-Programm zum Java-Bean Beans in JBuilder Was ist ein Bean? Ein Bean ist eine eigenständige, wiederverwendbare

Mehr

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm

Mehr

2 Fenster - Hauptelement des GUI

2 Fenster - Hauptelement des GUI Einführung in die objektorientierte Programmierung mit C# 13 2 Bei der Arbeit mit Computern erwarten die Nutzer eine komfortable Bedienung über eine eine»grafische Oberfläche«(engl.: graphical user interface

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

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Firefox Add-ons. Präsentation in WAP WS09/10 von Christoph ASCHBERGER, Andreas BERTOLIN, Robert MUTTER und Yunzhou XU

Firefox Add-ons. Präsentation in WAP WS09/10 von Christoph ASCHBERGER, Andreas BERTOLIN, Robert MUTTER und Yunzhou XU Firefox Add-ons Präsentation in WAP WS09/10 von Christoph ASCHBERGER, Andreas BERTOLIN, Robert MUTTER und Yunzhou XU Agenda Technisches Überblick XUL JavaScript CSS XPI-Pakete Einreichen bei Mozilla Sicherheitsüberlegungen

Mehr

GUI-Entwicklung 2: Windows Presentation Foundation

GUI-Entwicklung 2: Windows Presentation Foundation GUI-Entwicklung 2: Windows Presentation Foundation Proseminar Objektorientiertes Programmieren mit.net und C# Sandra Müller Institut für Informatik Software & Systems Engineering Agenda 1. Die WPF 2. Einführung

Mehr

Technische Spezifikationen Flash-Werbemittel

Technische Spezifikationen Flash-Werbemittel Werbemittelanlieferung: werbung@ems.guj.de Rückfragen: Oliver Starckjohann: +49(0)40 3703 7398 Technische Spezifikationen Flash-Werbemittel Einleitung Macromedia und DoubleClick haben gemeinsam eine Methode

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

4 Vererbung, Polymorphie

4 Vererbung, Polymorphie 4 Vererbung, Polymorphie Jörn Loviscach Versionsstand: 21. März 2014, 22:57 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work

Mehr

versus Christian Grobmeier http://www.grobmeier.de @grobmeier

versus Christian Grobmeier http://www.grobmeier.de @grobmeier versus Christian Grobmeier http://www.grobmeier.de @grobmeier Programmiersprache von Google Kann JS ersetzen Läuft in einer VM Für ernsthafte Anwendungen Jung und rockt Heavy Metal Band aus England Ersetzt

Mehr

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen

Mehr

Universität Augsburg, Institut für Informatik Sommersemester 2003 Prof. Dr. Bernhard Bauer 18. Oktober 2003 Stefan Fischer, Dr.

Universität Augsburg, Institut für Informatik Sommersemester 2003 Prof. Dr. Bernhard Bauer 18. Oktober 2003 Stefan Fischer, Dr. Universität Augsburg, Institut für Informatik Sommersemester 2003 Prof. Dr. Bernhard Bauer 18. Oktober 2003 Stefan Fischer, Dr. Martin Müller Informatik II 2. Semesterklausur Prüfungsmodul Informatik II

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung Exkurs: Graphische Benutzeroberflächen FH Braunschweig/Wolfenbüttel Sommersemester 2009 1 / 22 Gliederung I Wiederholung Klassen, Objektorientierung (Kapitel 10,11) Exkurs:

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 Pommes... Praktikum A 230 C 207 (Madeleine) F 112 F 113 (Kevin) E

Mehr

Web und Mobile Apps Programmieren mit Dart

Web und Mobile Apps Programmieren mit Dart Web und Mobile Apps Programmieren mit Dart Marco Jakob Workshop INFOS 2013 in Kiel 28.09.2013. ZIEL attraktiv aktuell Programmierunterricht wenig Hürden Inhalt Weshalb Web und Mobile im Unterricht? aktuelle

Mehr

Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen 11 im Bauwesen Markus Uhlmann 1 Zusammenfassung der 10. Vorlesung Benutzerdefinierte Datentypen Wieso zusätzliche Datentypen? Definition neuer Datentypen Verwendung von Variablen mit benutzerdefiniertem

Mehr

Besonderheiten von C#

Besonderheiten von C# Besonderheiten von C# Wert- und Referenztypen int a, b; a = 3; b = a; a++; Debug.Assert( a==4 && b==3 &&!a.equals(b), "int ist doch kein Werttyp" ); RTyp ra, rb; ra = new RTyp(3); rb = ra; ra.inc(); Debug.Assert(

Mehr

Konstruktoren, Packages und Scopes

Konstruktoren, Packages und Scopes Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Konstruktoren, Packages und Scopes Dipl. Inf. Manuel Götz Lehrstuhl für Angewandte

Mehr

Virtuelle Realität und Simulation - Übung 1

Virtuelle Realität und Simulation - Übung 1 Virtuelle Realität und Simulation - Übung 1 Einführung Prof. Dr. Gabriel Zachmann (zach@in.tu-clausthal.de) David Mainzer (dm@tu-clausthal.de) Institut für Informatik 6. Oktober 2010 Institut für Informatik

Mehr

Xcelsius: Dashboarding mit SAP BusinessObjects

Xcelsius: Dashboarding mit SAP BusinessObjects Sonja Hecht, Jörg Schmidl, Helmut Krcmar Xcelsius: Dashboarding mit SAP BusinessObjects Galileo Press Bonn Boston Auf einen Blick 1 Dashboarding - Überblick 19 2 First Steps: Das erste Dashboard 51 3 Der

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

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003 Test zu Grundlagen der Programmierung Leitung: Michael Hahsler 1. November 00 Name Martrikelnummer Unterschrift Bitte kreuzen Sie das Studium an, für das Sie diese Prüfung ablegen: O Bakkalaureat Wirtschaftsinformatik

Mehr

Professionelle Rich-Client-Lösungen mit Flex und Java

Professionelle Rich-Client-Lösungen mit Flex und Java Florian Müller Professionelle Rich-Client-Lösungen mit Flex und Java Web-Applikationen mit Flex-Frontend, Java-Backend und BlazeDS j-'w% ^ ADDISON-WESLEY An imprint of Pearson Education München Boston

Mehr

Ich liebe Java && Ich liebe C# Rolf Borst

Ich liebe Java && Ich liebe C# Rolf Borst Ich liebe Java && Ich liebe C# Rolf Borst Java oder C#? Einführung public class Einfuehrung { private int gesamtzahl = 0; /* Ermittelt die Anzahl der geraden und durch drei teilbaren Zahlen */ public String

Mehr

PIWIN 1 Übung Blatt 5

PIWIN 1 Übung Blatt 5 Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:

Mehr

XAML Extensible Application Markup Language. Manuel Naujoks (IB3)

XAML Extensible Application Markup Language. Manuel Naujoks (IB3) Extensible Application Markup Language Manuel Naujoks (IB3) Einführung Beschreibungssprachen Vorteile Nachteile Agenda technisch Aufbau Kompilierung Verarbeitung zur Laufzeit Routed Events Zusammenfassung

Mehr

Graphische Benutzungsoberflächen

Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen (graphical user interfaces, GUI) dienen zur interaktiven Bedienung von Programmen, Ein- und Ausgabe mit graphischen Techniken und visuellen

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 der Programmierung Prof. H. Mössenböck. 10. Klassen

Grundlagen der Programmierung Prof. H. Mössenböck. 10. Klassen Grundlagen der Programmierung Prof. H. Mössenböck 10. Klassen Motivation Wie würde man ein Datum speichern (z.b. 13. November 2004)? 3 Variablen int da; String month; int ear; Unbequem, wenn man mehrere

Mehr

Unified Modeling Language (UML)

Unified Modeling Language (UML) Kirsten Berkenkötter Was ist ein Modell? Warum Modellieren? Warum UML? Viele, viele Diagramme UML am Beispiel Was ist ein Modell? Ein Modell: ist eine abstrakte Repräsentation eines Systems, bzw. ist eine

Mehr

1. Der Einstieg in Java. Was heißt Programmieren?

1. Der Einstieg in Java. Was heißt Programmieren? 1. Der Einstieg in Java Lernziele: Am Ende dieses Kapitels sollen Sie wissen, aus welchen Bestandteilen ein Java-Programm besteht, Java-Programme übersetzen und ausführen können, Möglichkeiten der Kommentierung

Mehr

Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen 4 Informationsverarbeitung im Bauwesen Markus Uhlmann basierend auf Folien von A. Brugger 1 Zusammenfassung der 3. Vorlesung Einführung in Excel/VBA Einführung in die Tabellenkalkulation Erste Schritte

Mehr

Teil 1: Grundeigenschaften von Rechnern und Software

Teil 1: Grundeigenschaften von Rechnern und Software Blatt Nummer: 1 Teil 1: Grundeigenschaften von Rechnern und Software Aufgabe 1.1 [2P] Welcher fundamentale Unterschied besteht zwischen dem Zweck eines Computer von dem Zweck anderer Maschinen (etwa einer

Mehr

Arbeiten mit BlueJ. Objektorientiertes Programmieren in Java mit BlueJ

Arbeiten mit BlueJ. Objektorientiertes Programmieren in Java mit BlueJ Arbeiten mit BlueJ Compilieren, Editieren, Objekte erzeugen, Methoden aufrufen, Objekte inspizieren, vorhandene Klassen benutzen, eigene Klassen und Methoden erstellen In BlueJ geht es einfach BlueJ durch

Mehr

1 Einleitung. 1.1 Flash? Was ist das überhaupt? 1.1.1 ActionScript

1 Einleitung. 1.1 Flash? Was ist das überhaupt? 1.1.1 ActionScript 1 1.1 Flash? Was ist das überhaupt? Bestimmt sind Ihnen im Web schon Seiten begegnet, in die mehr oder weniger große Flash-Filme eingebunden waren. Dabei reicht das Spektrum von einfachen Intro-Animationen

Mehr

Klassen in Java. Klassen

Klassen in Java. Klassen Klassen in Java Klassen Klassen beschreiben Objekte, die abstakte oder konkrete Sachverhalte modellieren. Objekte sind durch einen Status gekennzeichnet (State). Der Status eines Objektes ergibt sich aus

Mehr

Einstieg in die Programmierung mit Visual Basic.NET

Einstieg in die Programmierung mit Visual Basic.NET Einstieg in die Programmierung mit Visual Basic.NET Agenda - Methoden mit Argumenten - Überladen von Methoden - Eigenschaftenprozeduren - Eigenschaftenprozeduren automatisch generieren - Konstruktoren

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

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

Multimediale Web-Anwendungen. JavaScript. Einführung. MWA JavaScript-Einführung Dr. E. Schön Sommersemester 2015 Folie 1.

Multimediale Web-Anwendungen. JavaScript. Einführung. MWA JavaScript-Einführung Dr. E. Schön Sommersemester 2015 Folie 1. Multimediale Web-Anwendungen JavaScript Einführung MWA JavaScript-Einführung Dr. E. Schön Sommersemester 2015 Folie 1 Entstehungsgeschichte: JavaScript 1995 Netscape Communications Corp. (Brendan Eich)

Mehr

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen L AKTUEL ZU fritz JOBST JAVA 8 PROGRAMMIEREN IN JAVA 7. Auflage Im Internet: Alle Beispielprogramme und Lösungen 4 1 Der Einstieg in Java keinem Fall zulässig. Die Schreibweisen Hello.java für den Namen

Mehr

Inhalt. Max Lini. ax. inie. Einleitung... VII

Inhalt. Max Lini. ax. inie. Einleitung... VII rst Inhalt Einleitung....................................................... VII 1 Schöne neue Welt: Objektorientierte Programmierung in PHP 5.............. 1 Klassen, Interfaces und Objekte...................................

Mehr

C#-Workshop, Teil 2: C#-Objekte im Praxiseinsatz

C#-Workshop, Teil 2: C#-Objekte im Praxiseinsatz ITMAGAZINE C#-Workshop, Teil 2: C#-Objekte im Praxiseinsatz 15. Juni 2001 - Der zweite Teil des C#-Workshops beschäftigt sich mit der Erstellung und Behandlung von Objekten und zeigt, wie die Leistungsfähigkeit

Mehr

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

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

Mehr

Dirk Eismann Herrlich & Ramuschkat GmbH. Spring- und Flex- Integration

Dirk Eismann Herrlich & Ramuschkat GmbH. Spring- und Flex- Integration Dirk Eismann Herrlich & Ramuschkat GmbH Spring- und Flex- Integration Über mich Dirk Eismann Softwareentwickler und Consultant bei der Herrlich & Ramuschkat GmbH in Hannover Schwerpunkt: Projekte und Consulting

Mehr

Java Einführung Collections

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

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 02: Klassen & Objekte Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Klassen Grundstruktur einer Java-Klasse Eigenschaften (Attribute) Variablen

Mehr

Java Einführung Methoden in Klassen

Java Einführung Methoden in Klassen Java Einführung Methoden in Klassen Lehrziel der Einheit Methoden Signatur (=Deklaration) einer Methode Zugriff/Sichtbarkeit Rückgabewerte Parameter Aufruf von Methoden (Nachrichten) Information Hiding

Mehr

Type Erasure in Java 5. Helmi Jouini Institut für Theoretische Informatik Universität Karlsruhe

Type Erasure in Java 5. Helmi Jouini Institut für Theoretische Informatik Universität Karlsruhe Type Erasure in Java 5 Helmi Jouini Institut für Theoretische Informatik Universität Karlsruhe Warum Generics? Containerklassen in Java 1.4 sind generisch nutzbar aber typunsicher. Public class LinkedList

Mehr

Client-Server-Beziehungen

Client-Server-Beziehungen Client-Server-Beziehungen Server bietet Dienste an, Client nutzt Dienste Objekt ist gleichzeitig Client und Server Vertrag zwischen Client und Server: Client erfüllt Vorbedingungen eines Dienstes Server

Mehr

Java Beans. http://java.sun.com/beans/

Java Beans. http://java.sun.com/beans/ Java Beans http://java.sun.com/beans/ Software Komponenten Eine Software Komponente ist ein eigenständiges, flexibles und einfach wieder verwendbares Stück Software. In Java: + Plattformunabhängigkeit

Mehr

188.154 Einführung in die Programmierung für Wirtschaftsinformatik

188.154 Einführung in die Programmierung für Wirtschaftsinformatik Beispiel 1 Vererbung (Liste) Gegeben sind die beiden Klassen ListNode und PersonNode. 188.154 Einführung in die Programmierung für Wirtschaftsinformatik Wiederholung, Prüfungsvorbereitung Monika Lanzenberger

Mehr

Java Einführung Abstrakte Klassen und Interfaces

Java Einführung Abstrakte Klassen und Interfaces Java Einführung Abstrakte Klassen und Interfaces Interface Interface bieten in Java ist die Möglichkeit, einheitliche Schnittstelle für Klassen zu definieren, die später oder/und durch andere Programmierer

Mehr

Programmieren für iphone und ipad

Programmieren für iphone und ipad Markus Stäuble Programmieren für iphone und ipad Einstieg in die App-Entwicklung für das ios 4 3., aktualisierte und erweiterte Auflage dpunkt.verlag 1 Einleitung 1 1.1 Begriffe 2 1.2 Was behandelt dieses

Mehr

Allgemein: Klassen testbar machen. 5. Mocking. Mocks programmieren. Zusammenspiel von Klassen testen

Allgemein: Klassen testbar machen. 5. Mocking. Mocks programmieren. Zusammenspiel von Klassen testen 5. Mocking Allgemein: Klassen testbar machen Wie werden Klassen testbar Entwicklung von Mocks mit der Hand Einführung in JMock Spezifikation von Mocks mit JMock Wann ist Mocking-Werkzeug sinnvoll Literatur:

Mehr

Einführung in PHP. (mit Aufgaben)

Einführung in PHP. (mit Aufgaben) Einführung in PHP (mit Aufgaben) Dynamische Inhalte mit PHP? 2 Aus der Wikipedia (verkürzt): PHP wird auf etwa 244 Millionen Websites eingesetzt (Stand: Januar 2013) und wird auf etwa 80 % aller Websites

Mehr

Variablen manipulieren per JDI

Variablen manipulieren per JDI Variablen manipulieren per JDI Zusammenfassung Jede moderne Java IDE verfügt über eine mächtige und dennoch meist einfach zu bedienende Benutzeroberfläche die das finden von Fehlern in lokalen oder entfernt

Mehr

Programmieren lernen mit Groovy Allgemeines Programme und ihre Ausführung

Programmieren lernen mit Groovy Allgemeines Programme und ihre Ausführung Programmieren lernen mit Groovy Allgemeines Programme und ihre Ausführung Seite 1 Allgemeines Dozent Dr. Th. Letschert Lernziel Einführung in die Software-Entwicklung und Programmierung Kenntnisse einer

Mehr

Javakurs 2013 Objektorientierung

Javakurs 2013 Objektorientierung Javakurs 2013 Objektorientierung Objektorientierte Programmierung I Armelle Vérité 7 März 2013 Technische Universität Berlin This work is licensed under the Creative Commons Attribution-ShareAlike 3.0

Mehr

Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen.

Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen. Teil B: Erweiterungen Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen. Die folgenden Aufgaben und Ausführungen geben einige Hilfestellungen, welche (mindestens

Mehr