Software-Entwicklung: Konzepte der Objektorientierung
|
|
|
- Ute Huber
- vor 10 Jahren
- Abrufe
Transkript
1 Software-Entwicklung: Konzepte der Objektorientierung 1
2 Übersicht Objektorientierte Softwareentwicklung Klasse und Objekt Attribut und Operation Schnittstelle Taxonomie und Vererbung Weitere Begriffe 2
3 Softwareentwicklung Die Entwicklung hochwertiger Software ist aufwändig und wird immer aufwändiger... Ein paar Gründe: Umfang der zu erstellenden Applikationen Grafische Benutzeroberflächen (GUIs) Verteilte Applikationen Verteilte Datenhaltung... 3
4 Soziale Komplexität Software-Entwicklung ist nicht ausschliesslich eine technische Aufgabe, sondern auch ein komplexer sozialer Prozess Softwaresysteme sind (in unterschiedlichem Masse) in ein soziales Umfeld eingebettet Bei der Entwicklung solcher Systeme spielt auch linguistisches und psychologisches Wissen sowie kommunikative Fähigkeiten eine wichtige Rolle 4
5 Abstraktion Die Geschichte der Software- Entwicklung ist verbunden mit einer kontinuierlichen Steigerung der Abstraktion Bitmuster Makrobefehle Prozeduren Abstrakte Datentypen Objekte Frameworks Entwurfsmuster Komponenten? 5
6 Objektorientierung Eine bestimmte Art, Software zu organisieren Integration von Daten und Prozeduren in Form von Objekten im Vordergrund Objektorientiert: Resultierende Softwaresysteme Herangehensweisen bei der Softwareentwicklung Die verwendeten Programmiersprachen und Entwicklungsumgebungen 6
7 Begriffe und Abkürzungen OOA/OOD: Object-Oriented Analysis and Object-Oriented Design: Untersuchung eines Problembereichs und Entwickeln eines Modells auf der Grundlage objektorientierter Konzepte OOP: Object-Oriented Programming OOSE: Object-Oriented Software-Engineering OOPL: Object-Oriented Programming Language: Programmiersprache, die Konzepte der Objektorientierung wie Abstraktion, Kapselung, hierarchische Strukturen und Vererbung unterstützt; Beispiele: Smalltalk, C++ und Java 7
8 Analyse und Design Jeder Anwendungsrealisierung sollte unabhängig von der Art der Realisierung eine Planungsphase vorausgehen Es gibt verschiedene Methoden, Notationen und Werkzeuge, die diese Planungsphase zum Gegenstand haben Ziel ist es, die Komplexität, mit der man es bei der Entwicklung grosser Software-Systeme zu tun hat, beherrschbar zu machen 8
9 Notation UML: Unified Modelling Language Grady Booch, James Rumbaugh, Ivar Jacobson Object Management Group (OMG) als Standardisierungsgremium Die UML ist im wesentlichen eine Vereinheitlichung der grafischen Darstellung und Semantik der Modellierungselemente Es wird dadurch keine Methodik vorgegeben 9
10 Methodik Mit der UML ist eine Notation festgelegt Unabhängig davon existieren verschiedene Ansätze zur Entwicklungsmethodik (auch: Prozess, Vorgehensmodell) Beispiele: Unified Process (UP) Object Engineering Process (OEP) Rational Unified Process (RUP) 10
11 Werkzeuge Die UML ist ausdrucksstark und detailreich Die auf ihr basierenden Methoden sind oft für grösste Entwicklungsprojekte ausgelegt Es existieren leistungsfähige Werkzeuge, die Notation und Methodik unterstützen Aber: Das Zusammenspiel zwischen UML, Werkzeug und Methodik ist alles andere als trivial 11
12 Werkzeuge Im Normalfall muss Methodik und Werkzeugeinsatz daher an die Erfordernisse des Projekts angepasst werden Werkzeuge können dabei helfen, die Komplexität beherrschbar zu machen Aber: Werkzeuge können die fachlichen und methodischen Fehler ihrer Anwender nicht ausgleichen 12
13 Objektorientierte SwE Merkmale des objektorientierten Ansatzes: Ganzheitliche Arbeitsgegenstände: Einheit von Daten und Operationen (Klassenkonzept) statt deren Trennung Bessere Abstraktionsmöglichkeiten: Modellierung stärker vom Lösungs- in den Problembereich verschoben Methodische Durchgängigkeit: Ergebnisse können in die nachfolgenden Phasen übernommen werden 13
14 Abstraktion Alle Programmiersprachen unterstützen Abstraktionen, allerdings in unterschiedlichem Ausmass Je nach Art und Qualität der Abstraktionsmöglichkeiten lassen sich Probleme geringerer oder höherer Komplexität lösen Assemblersprachen bieten nur eine geringe Abstraktion der jeweiligen Maschinensprachen Sprachen wie Fortran, BASIC, und C sind Abstraktionen von Assemblersprachen 14
15 Abstraktion Bestimmte Sprachen unterstützen weitergehende Abstraktion, aber beschränkt auf bestimmte Problemklassen: Lisp: Listen als zentrale Datenstruktur Prolog: Folge von Entscheidungen und ein Backtracking-Algorithmus Objektorientierung: Nähe zwischen Problem- und Lösungsbereich abzubildende Elemente des Problembereichs können als Objekte beschrieben werden 15
16 Abstraktionsmittel Teil-Ganzes-Beziehung Ein Objekt besteht aus Teilen, es hat Teile Ein Auto besteht aus (hat) Motor, Karosserie, Sitzen In Programmiersprachen gibt es dafür Strukturen Oberbegriff-Beziehung Fasst mehrere Arten unter einem Begriff zusammen Ein Cabriolet ist ein Auto; Ein Auto ist ein Fahrzeug Nur in objektorientierten Programmiersprachen unterstützt 16
17 Methodische Durchgängigkeit Entwickler: Anwender: Entwickler: Anwender: "Was ist Euch wichtig?" "Der Kunde." "Was ist ein Kunde, welche Merkmale sind für Euch relevant?" "Der Kunde hat einen Namen, eine Anschrift, und eine Bonität, die wir überprüfen." 17
18 Methodische Durchgängigkeit "Der Kunde." Kunde name "Der Kunde hat einen Namen, eine Anschrift, und eine Bonität, die wir überprüfen." anschrift bonitaet bonitaetpruefen() Klasse 18
19 Methodische Durchgängigkeit Kunde name anschrift class Kunde { String name; Anschrift anschrift; Bonitaet bonitaet; bonitaet bonitaetpruefen() } public void bonitaetpruefen() {... } 19
20 Objektorientierte SwE Vorteile objektorientierter Software-Entwicklung: Nähe zum Problembereich: erleichtert Kommunikation zwischen Entwicklern und Experten Methodische Durchgängigkeit (s.o.) Objektorientierte Modelle sind änderungsfreundlicher, da Änderungen häufig lokal begrenzt möglich sind Abstraktionsmöglichkeiten ermöglichen bessere Wiederverwendbarkeit Aber: Auch mit diesem Ansatz ist es problemlos möglich, sehr schlechte Ergebnisse zu erzielen 20
21 Übersicht Objektorientierte Softwareentwicklung Klasse und Objekt Attribut und Operation Schnittstelle Taxonomie und Vererbung Weitere Begriffe 21
22 Modellbildung Objekte entstehen durch Zusammenfassung von Daten und zugehörigen Prozeduren Sie werden üblicherweise verwendet, um bestimmte Gegenstände oder abstrakte Konzepte des Aufgabenbereichs zu modellieren Dabei werden die Gegenstände vereinfacht, es wird von Details abstrahiert (Modellbildung) Strukturelle Ähnlichkeit zwischen Modell und modelliertem Bereich kann das Erarbeiten und Verstehen eines Modells vereinfachen 22
23 Klasse und Objekt Aus: Bernd Österreich Objektorientierte Softwareentwicklung 23
24 Klasse und Objekt Eine Klasse beschreibt die Struktur und das Verhalten einer Menge gleichartiger Objekte Ein Objekt ist eine zur Ausführungszeit vorhandene und für ihre Instanzvariablen Speicher belegende Instanz, die sich entsprechend dem Protokoll ihrer Klasse verhält Statt Objekt oder Instanz wird auch die Bezeichnung Exemplar verwendet 24
25 Klassen und Objekte Aus: Bernd Österreich Objektorientierte Softwareentwicklung 25
26 Klassen und Objekte Klasse «instance of» Objekt Kuh «instance of» Elsa 26
27 Übersicht Objektorientierte Softwareentwicklung Klasse und Objekt Attribut und Operation Schnittstelle Taxonomie und Vererbung Weitere Begriffe 27
28 Eigenschaften Objekte lassen sich folgendermaßen charakterisieren: Sie befinden sich in einem Zustand Sie zeigen ein bestimmtes Verhalten Zustand und Verhalten beschrieben durch: Attribute und Operationen Ausserdem spielen eine Rolle: Zusicherungen und Beziehungen 28
29 Eigenschaften Attribute In einem Objekt enthaltene Informationen bzw. Daten Operationen Beschreiben das Verhalten der Objekte (auch Methoden genannt) Zusicherungen Bedingungen, die Objekte erfüllen müssen Beziehungen Beziehungen zu anderen Klassen (Oberbegriff- Beziehung, Assoziation,...) 29
30 Klasse Notationselemente für Klassen Aus: Bernd Österreich Objektorientierte Softwareentwicklung 30
31 Klasse class Kreis { int radius; Point mittelpunkt; public void setradius(int neuerradius) { if (neuerradius > 0) { // Zusicherung radius = neuerradius;... } } public void setposition(point pos) {...} public void anzeigen() {...} public void entfernen() {...} } 31
32 Objekt Notationselemente für Objekte Aus: Bernd Österreich Objektorientierte Softwareentwicklung 32
33 Terminologie Der Zustand von Softwareobjekten wird beschrieben durch die im Objekt gespeicherten Daten Allgemein: Smalltalk: C++: Attribute Instanzenvariablen Elementdaten (member data) Das Verhalten der Objekten wird in Prozeduren beschrieben: Allgemein: Smalltalk: C++: Methoden, Operationen Methoden Elementfunktionen (member functions) 33
34 Klasse und Objekt: Abgrenzung Die Abgrenzung von Klassen und Objekten ist nicht immer ganz eindeutig Oft werden auch die Klassen zu den Objekten gezählt oder es gibt wie in den Delegation Languages überhaupt keine Unterscheidung zwischen Klassen und Instanzen In einigen Ansätzen lassen sich auch Klassen zu so genannten Metaklassen zusammenfassen; die Instanzen solcher Meta-klassen sind dann selbst Klassen 34
35 Nachrichtenaustausch Objekte senden sich gegenseitig Nachrichten zu Die Nachrichten führen dazu, dass Operationen ausgeführt werden Ein Objekt versteht genau die Nachrichten, zu denen es Operationen besitzt KreisEck setradius() Kreis 35
36 Nachrichtenaustausch Einem Objekt eine Nachricht schicken: Die zugehörige Operation für ein bestimmtes Objekt ausführen: einkreis setradius: 17. einkreis.setradius(17); "Smalltalk" // C++, Java Objektattribute sind gewöhnlich gekapselt und nur über entsprechende Operationen zugänglich Eine Nachricht kann von einem Objekt nur interpretiert werden, wenn es eine passende Operation besitzt 36
37 Spezielle Nachrichten Selektoren greifen auf den Zustand eines Objekts zu, ändern diesen aber nicht Konstruktoren erzeugen Instanzen von Klassen Destruktoren werden beim Löschen von Objekten aktiv Iteratoren erlauben den Zugriff auf Teilobjekte zusammengesetzter Objekte 37
38 Übersicht Objektorientierte Softwareentwicklung Klasse und Objekt Attribut und Operation Schnittstelle Taxonomie und Vererbung Weitere Begriffe 38
39 Kapselung und Schnittstelle Klassen fassen Attribute und Operationen zu einer Einheit zusammen Attribute sind nur i.a. indirekt über die Operationen der Klasse zugänglich (Datenkapselung) Die Schnittstelle legt fest, welche Operationen die Objekte einer Klasse ausführen können Die Implementierung realisiert die in der Schnittstelle festgelegten Operationen 39
40 Kapselung und Schnittstelle 40
41 Kapselung und Schnittstelle Die Trennung von öffentlicher Schnittstelle und interner Implementierung hat folgende Vorteile Die Schnittstelle dient zur Verwendung einer Klasse; sie versteckt alle für die Verwendung nicht relevanten Details und dient somit auch der Übersichtlichkeit Wenn die Schnittstelle stabil bleibt, kann die Implementierung einer Klasse modifiziert werden, ohne Einfluss auf andere Programmteile, die diese Klasse benutzen 41
42 Übersicht Objektorientierte Softwareentwicklung Klasse und Objekt Attribut und Operation Schnittstelle Taxonomie und Vererbung Weitere Begriffe 42
43 Taxonomie und Vererbung Vererbung, Generalisierung/Spezialisierung Klassen können Spezialisierungen anderer Klassen darstellen, d.h. Klassen können hierarchisch angeordnet werden Dabei übernehmen (erben) sie die Eigenschaften der ihnen übergeordneten Klassen Diese Eigenschaften können sie bedarfsweise spezialisieren (überschreiben) aber nicht eliminieren 43
44 Taxonomie und Vererbung Oberklasse Basisklasse Superklasse Unterklasse Subklasse Aus: Bernd Österreich Objektorientierte Softwareentwicklung 44
45 Taxonomie und Vererbung Substitution Objekte von Unterklassen müssen jederzeit auch anstelle von Objekten ihrer Oberklasse(n) eingesetzt werden können Mehrfachvererbung Wenn eine Klasse mehr als eine Oberklasse besitzen kann, spricht man von Mehrfachvererbung Warnung Man solle Vererbung vermeiden, wenn es Alternativen gibt 45
46 Strukturierung von Eigenschaften Jede Klasse soll für genau einen (sachlogischen) Aspekt des Gesamtsystems verantwortlich sein Die in diesem Verantwortlichkeitsbereich liegenden Eigenschaften sollen in einer Klasse zusammengefasst werden Eine Klasse soll keine Eigenschaften enthalten, die nicht zu diesem Verantwortungsbereich gehören Kohärenzprinzip 46
47 Strukturierung von Eigenschaften Aus: Bernd Österreich Objektorientierte Softwareentwicklung 47
48 Strukturierung von Eigenschaften Anzeigen und Entfernen sind gemeinsame Eigenschaften aller geometrischen Figuren Sie müssen aber individuell, abhängig von den Eigenschaften der Subklassen, realisiert werden In der Klasse GeomFigur sind die Operationen anzeigen() und entfernen() daher abstrakte Operationen 48
49 Strukturierung von Eigenschaften class GeomFigur extends Object { int x, y; boolean sichtbar; public abstract void anzeigen(); public abstract void entfernen(); public void setposition(int x, y) { if (sichtbar) { entfernen(); this.x = x; this.y = y; anzeigen(); } else { this.x = x; this.y = y; } } } 49
50 Strukturierung von Eigenschaften class Rechteck extends GeomFigur { int a, b; public void anzeigen() {... } public void entfernen() {... } public void seta(int a) { if (a > 0) { this.a = a; } } public void setb(int b) { if (b > 0) { this.b = b; } } } 50
51 Abstrakte Klassen Klassen, von denen keine konkreten Exemplare erzeugt werden können, bezeichnet man als abstrakte Klassen Abstrakte Klassen werden durch den Eigenschaftswert {abstact} unterhalb des Klassennamens oder durch kursiv gesetzten Klassennamen gekennzeichnet Im Beispiel wird es nur Objekte der Klassen Kreis, Rechteck und Dreieck geben, nicht aber von GeomFigur 51
52 Abstrakte Klassen Aus: Bernd Österreich Objektorientierte Softwareentwicklung 52
53 Übersicht Objektorientierte Softwareentwicklung Klasse und Objekt Attribut und Operation Schnittstelle Taxonomie und Vererbung Weitere Begriffe 53
54 Objektidentität Jedes Objekt ist per Definition unabhängig von seinen konkreten Attributwerten von allen anderen Objekten eindeutig zu unterscheiden Zu diesem Zweck werden künstlich erzeugte Schlüssel verwendet, die keinen inhaltlichen Bezug zu den Eigenschaften der Objekte haben In einem Programm aktive Objekte werden gewöhnlich durch ihre Speicheradresse identifiziert 54
55 Objektidentität Aus: Bernd Österreich Objektorientierte Softwareentwicklung 55
56 Sammlungen (Collections) Sammlungen (auch: Behälterklassen oder Containerklassen) sind Klassen, deren Objekte eine Menge von Objekten verwalten können Sammlungen sind in der Regel in Standardklassenbibliotheken definiert Sie verfügen unter anderem über Operationen zum Anfügen und Entfernen von Objekten Es gibt verschiedene Arten von Sammlungen grundsätzlich lassen sich sequentielle und assoziative Sammlungen unterscheiden 56
57 Sammlungen (Collections) Sammlungsklassen einer Smalltalk-Bibliothek Aus: Bernd Österreich Objektorientierte Softwareentwicklung 57
58 Polymorphie Polymorphie: Eine Operation kann sich (in unterschiedlichen Klassen) unterschiedlich verhalten Statische Polymorphie: Bereits zur Übersetzungszeit eines Programms, wird entschieden, welche Ausprägung einer Operation aufgerufen wird ("frühes Binden") Dynamische Polymorphie: Der genaue Speicherort einer Funktion wird erst ermittelt, wenn der Aufruf stattfindet, also dynamisch zur Laufzeit des Programms ("spätes Binden") 58
59 Dynamische Polymorphie Aus: Bernd Österreich Objektorientierte Softwareentwicklung 59
60 Dynamische Polymorphie void dostuff(shape& s) { s.erase(); //... s.draw(); } Circle c; Triangle t; Line l; dostuff(c); dostuff(t); dostuff(l); 60
Objektorientierte Programmierung OOP
Objektorientierte Programmierung OOP Objektorientierte Programmierung OOP Ronja Düffel WS2012/13 08. Oktober 2013 Objektorientierte Programmierung OOP Objektorientierte Programmierung Objektorientierte
Softwaretechnik (Allgemeine Informatik) Überblick
Softwaretechnik (Allgemeine Informatik) Überblick 1 Einführung und Überblick 2 Abstraktion 3 Objektorientiertes Vorgehensmodell 4 Methoden der Anforderungs- und Problembereichsanalyse 5 UML-Diagramme 6
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
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
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
Klassendiagramm. Kurzer Überblick über UML - Stand 2006. BlaBla
BlaBla Diese Kennzeichnungen sind nur Erläuterungen und nicht Bestandteil des Diagramms Quelle: P.Grässle, H.Baumann, P.Baumann, UML projektorientiert, Galileo Verlag, 2003 21 Primäre Begriffe Kapselung
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,
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:
5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren:
5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen 5. Abstrakte Klassen Beispiel Beispiel (3) Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Probleme des Implementierungsvorschlags:
5. Abstrakte Klassen
5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Vogel Amsel Drossel Fink Peter Becker, Programiersprache Java FH Bonn-Rhein-Sieg,
OO Softwareentwicklung
OO Softwareentwicklung Objektorientierung Prof. Dr. Bernhard Schiefer 1 OO als Ansatz zur Verbesserung der Software-Qualität Modellierung der Welt als selbständig agierende Objekte. Gemeinsame Beschreibung
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
Grundzüge der Programmierung. Konzepte der objektorientierten Programmierung (oop) OBJEKTE - KLASSEN
Grundzüge der Programmierung Konzepte der objektorientierten Programmierung (oop) OBJEKTE - KLASSEN Inhalt dieser Einheit JAVA ist objektorientiert! Grundbegriffe der objektorientierten Programmierung:
Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7
Java Einführung Umsetzung von Beziehungen zwischen Klassen Kapitel 7 Inhalt Wiederholung: Klassendiagramm in UML Java-Umsetzung von Generalisierung Komposition Assoziationen 2 Das Klassendiagramm Zweck
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
Objektorientierung. Objekte
Eine Einführung G. Futschek Objekte Objekte Fragen: Wie unterscheiden sich Objekte? Wie sind Objekte einander ähnlich? Was können Objekte? Wie stehen Objekte zueinander in Beziehung? Objekte Im täglichen
SEP 114. Design by Contract
Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit
Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell
Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell Aufgabe 3. Assoziation
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:
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
Übungen zur Softwaretechnik
Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 9 17. Dezember 2002 www4.in.tum.de/~rumpe/se
Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny 3. UML Klassendiagramm Nachtrag 3.1 Einführung UML UML ist eine standardisierte Sprache zur Modellierung von Systemen. In UML werden graphische
09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)
Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)
Vorlesung Programmieren
Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)
Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008
Konzeption und Implementierung einer automatisierten Testumgebung, 10. Dezember 2008 1 Gliederung Einleitung Softwaretests Beispiel Konzeption Zusammenfassung 2 Einleitung Komplexität von Softwaresystemen
7. Objektorientierte Softwareentwicklung/3. Informatik II für Verkehrsingenieure
7. Objektorientierte Softwareentwicklung/3 Informatik II für Verkehrsingenieure Überblick FOLGENDE BEGRIFFE/PRINZIPIEN SOLLTEN BEKANNT SEIN Objekte Klasse Attribute Fähigkeiten ZIEL DER HEUTIGEN LEHRVERANSTALTUNG
Prinzipien Objektorientierter Programmierung
Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................
Objektorientierter 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
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
Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur. UML-Klassendiagramme als Werkzeug im Unterricht
Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur UML-Klassendiagramme als Werkzeug im Unterricht Blitzlicht? In welcher Programmiersprache(n) unterrichten Sie?? In welchem Umfang unterrichten Sie Objektorientierung??
Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing
Fassade Objektbasiertes Strukturmuster C. Restorff & M. Rohlfing Übersicht Motivation Anwendbarkeit Struktur Teilnehmer Interaktion Konsequenz Implementierung Beispiel Bekannte Verwendung Verwandte Muster
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/
SWE5 Übungen zu Software-Engineering
1 Übungen zu Software-Engineering 1) Klassen und Objekte 2) Telefonanlage 3) Objekt- und Klassendiagramme 4) Assoziationen 5) Telefonanlage (Erweiterung) 6) Fahrzeuge 7) Familien 2 Aufgabe 1: Klassen und
Prüfungszeuch im Fach Objektorientierte Programmierung WS 2000
Prüfungszeuch im Fach Objektorientierte Programmierung WS 2000 A. Beschreibung der Projektarbeit. Welche Aufgabe haben Sie im Rahmen der Projektarbeit gelöst? 2. Mit welchen Tools bzw. Programmen (Anwendung,
Software Engineering Klassendiagramme Assoziationen
Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen
Assoziation und Aggregation
Assoziation und Aggregation Martin Wirsing in Zusammenarbeit mit Matthias Hölzl, Nora Koch 05/03 2 Ziele Verstehen der Begriffe Assoziation und Aggregation Implementierung von Assoziationen in Java schreiben
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
Techniken der Projektentwicklungen
Von der Analyse zum Entwurf 5. Termin Vom Use Case zum Domänenmodell Bis zum nächsten Mal Vom Use Case zum Domänenmodell Vom Use Case zum Domänenmodell Was ist ein Domänenmodell? Graphische Beschreibung
EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick [email protected] www.is.informatik.uni-kiel.
EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick [email protected] www.is.informatik.uni-kiel.de/~mtr FRAGEN / ANMERKUNGEN Vorlesung Neue Übungsaufgaben MODELLIERUNG
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
Kapitel 2: Der Software-Entwicklungsprozess
Wie konstruiert man Software? Kapitel 2: Der Software-Entwicklungsprozess SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (1/10) Der Software-Entwicklungs-Prozess Historisches 1960JJ adhoc Techniken
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
Objektorientierte Softwareentwicklung
Objektorientierte Softwareentwicklung Objektorientierte Softwareentwicklung Smalltalk CLOS Ada 9 C++ Objektorientierte Softwareentwicklung Object Pascal Java Oberon-2 Frage: Die Bibliothek der Fachhochschule
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
Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java
Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte
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
Proseminar: Website-Managment-System. NetObjects Fusion. von Christoph Feller
Proseminar: Website-Managment-System NetObjects Fusion von Christoph Feller Netobjects Fusion - Übersicht Übersicht Einleitung Die Komponenten Übersicht über die Komponenten Beschreibung der einzelnen
Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.
1 2 3 4 Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg. Gerade beim Einstig in der Programmierung muss kontinuierlich
Objektorientierte Konzepte und Notation in UML. Objekt Klasse Attribut Operation
Objektorientierte Konzepte und Notation in UML Objekt Klasse Attribut Operation Objekt Wodurch zeichnet sich ein Objekt aus? - Zustand - Verhalten - Identität Objektdiagramm - Notationsregeln :Kuh Elsa:Kuh
Klassendiagramm. (class diagram)
: Klassendiagramm http:///topic95.html Klassendiagramm (class diagram) Klassendiagramm Objektdiagramm Komponentendiagramm Kompositionsstrukturdiagramm Verteilungsdiagramm Einstieg Paketdiagramm Aufbau
Fachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 6
Gudrun Fischer Sascha Kriewel [email protected] Anmeldung zur Klausur! Übungsblatt Nr. 6 Um an der Klausur teilzunehmen, müssen sich Studierende der angewandten Informatik in
Programmieren II Vererbung. Programmieren II Vererbung. Programmieren II Vererbung. Programmieren II Vererbung. Einleitende Bemerkungen
Einleitende Bemerkungen Einleitende Bemerkungen Ideen hinter der objektorientierten Programmierung Objekte (/* Instanzen einer Klasse */) im Mittelpunkt Objekte bilden Einheit aus Daten (/* Attributen,
Code wiederverwenden: Objektorientierte Programmierung (OOP) sinnvoll nutzen Roland Wagner Automatisierungstreff IT & Automation 2015
Code wiederverwenden: Objektorientierte Programmierung (OOP) sinnvoll nutzen Roland Wagner Automatisierungstreff IT & Automation 2015 CODESYS a trademark of 3S-Smart Software Solutions GmbH Agenda 1 Warum
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
Einführung in die Programmierung mit Java. Hörsaalübung
Einführung in die Programmierung mit Java Hörsaalübung Folie 1 Grundlagen der Objektorientierung Seit Anfang der Neunzigerjahre Standardmethode der Softwareentwicklung. Die OOP Objektorientierte Programmierung
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
Probeklausur Softwareengineering SS 15
Probeklausur Softwareengineering SS 15 Hinweis: Die Bearbeitungsdauer entspricht dem Punktewert. Aufgabe 1 (10 min) Beschreiben Sie das Vorgehensmodell Test-Driven-Development (TDD) a) Erläutern Sie das
Prof. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)
Prof. Dr. Uwe Schmidt 21. August 2007 Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Zeit: 75 Minuten erlaubte Hilfsmittel: keine Bitte tragen Sie Ihre Antworten und fertigen
SharePoint Demonstration
SharePoint Demonstration Was zeigt die Demonstration? Diese Demonstration soll den modernen Zugriff auf Daten und Informationen veranschaulichen und zeigen welche Vorteile sich dadurch in der Zusammenarbeit
7. Analyse-Phase: Datenmodellierung Software Engineering
7. Analyse-Phase: Datenmodellierung Software Engineering Hochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm Hochschule Darmstadt, 20. November 2006 Einordnung in den Kontext
Autorisierung. 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
1 Mathematische Grundlagen
Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.
Java lernen mit BlueJ
Java lernen mit BlueJ Eine Einführung in die objektorientierte Programmierung David J. Barnes Michael Kölling 4.0 Lernen in Eigenregiegi Vorlesungen Seminare Übungen Bücher Webseiten Diskussionslisten
WEBINAR@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
Daniel Warneke [email protected] 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers
Design Patterns Daniel Warneke [email protected] 08.05.2006 Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns 1/23 Übersicht Einleitung / Motivation Design Patterns Beispiele Rolle des
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
Objektorientierte Programmierung
Universität der Bundeswehr Fakultät für Informatik Institut 2 Priv.-Doz. Dr. Lothar Schmitz FT 2006 Zusatzaufgaben Lösungsvorschlag Objektorientierte Programmierung Lösung 22 (Java und UML-Klassendiagramm)
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
PHP Aufbaukurs. Tag 3. PHP5 & Klassen
PHP Aufbaukurs Tag 3. PHP5 & Klassen Organisatorisches 2 Igor Olkhovskiy Dr. Dipl.- Ing. Kontakt: [email protected] PHP Aufbaukurs 19.09.2006 Folie 2 PHP. OOP. Geschichte 3 PHP/FI ( PHP 1
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
Software Engineering Interaktionsdiagramme
Software Engineering Interaktionsdiagramme Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Nachrichtenaustausch Welche Nachrichten werden ausgetauscht? (Methodenaufrufe)
SEQUENZDIAGRAMM. Christoph Süsens
SEQUENZDIAGRAMM Christoph Süsens DEFINITION Das Sequenzdiagramm gibt Auskunft darüber: Welche Methoden für die Kommunikation zwischen ausgewählten Objekten zuständig sind. Wie der zeitliche Ablauf von
Software Engineering Klassendiagramme weiterführende Konzepte
Software Engineering Klassendiagramme weiterführende Konzepte Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Klassenattribut: static Implementierung in Java public
Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten
Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Was sind Berechtigungen? Unter Berechtigungen werden ganz allgemein die Zugriffsrechte auf Dateien und Verzeichnisse (Ordner) verstanden.
Handbuch 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
Individuelle Formulare
Individuelle Formulare Die Vorlagen ermöglichen die Definition von Schnellerfassungen für die Kontenanlage sowie für den Im- und Export von Stammdaten. Dabei kann frei entschieden werden, welche Felder
Einführung in die Programmierung für NF
Einführung in die Programmierung für NF UML Valerie Holmeyer Michael Kirsch Direct Feedback Eure Mitarbeit ist mir wichbg Quiz nach den jeweiligen AbschniGen Jeder kann mitmachen App socra&ve auf Smartphone
Objektorientierte Programmiersprachen
Objektorientierte Programmiersprachen 1960 Algol 1970 Simula Pascal 1980 Smalltalk C Ada 1990 C++ Eiffel Eine ovale Box symbolisiert eine objektorientierte Programmiersprache. Eine rechteckige Box steht
VBA-Programmierung: Zusammenfassung
VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung
Barrierefreie Webseiten erstellen mit TYPO3
Barrierefreie Webseiten erstellen mit TYPO3 Alternativtexte Für jedes Nicht-Text-Element ist ein äquivalenter Text bereitzustellen. Dies gilt insbesondere für Bilder. In der Liste der HTML 4-Attribute
Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER
Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos in Verbindung mit der Webshopanbindung wurde speziell auf die Shop-Software shop to date von DATA BECKER abgestimmt. Mit
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
Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell Aufgabe 3. Assoziation zwischen
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
Prüfung Software Engineering I (IB)
Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IB 3 A Wintersemester 2014/15 Prüfung Software Engineering I (IB) Datum : 21.01.2015, 14:30 Uhr Bearbeitungszeit
Fachbericht zum Thema: Anforderungen an ein Datenbanksystem
Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank
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,
Agile Vorgehensmodelle in der Softwareentwicklung: Scrum
C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was
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
Objektbasierte Entwicklung
Embedded Software Objektbasierte Entwicklung Objektorientierung in C? Prof. Dr. Nikolaus Wulff Objektbasiert entwickeln Ohne C++ wird meist C im alten Stil programmiert. => Ein endlose while-schleife mit
OOD. Objektorientiertes Design. Peter Coad und Edward Yourdon. Prentice Hall Verlag
OOD Objektorientiertes Design Peter Coad und Edward Yourdon Prentice Hall Verlag New York, London, Toronto, Sidney, Tokio, Singapur, München, Mexiko Vorwort 9 Vorwort der Übersetzer 11 Danksagungen 13
Informatik für Schüler, Foliensatz 21 Objektorientierte Programmierung
rof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal 23. April 2009 1/14 Informatik für Schüler, Foliensatz 21 Objektorientierte Programmierung Prof. G. Kemnitz Institut für Informatik,
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++,
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
Einführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger [email protected] WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113
Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.
Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,
Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER
AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...
Grundkonstrukte der Objektorientierung in Java, C# und C++
Grundkonstrukte der Objektorientierung in Java, C# und C++ 2 Viele Patterns basieren auf einer Kombination einiger zentraler Modellierungskonstrukte, namentlich auf Schnittstellen- und Implementierungsvererbung
Innere Klassen in Java
Innere Klassen in Java SS 2012 Prof. Dr. Margarita Esponda Innere Klassen Klassen- oder Interfacedefinitionen können zur besseren Strukturierung von Programmen verschachtelt werden Eine "Inner Class" wird
Im Original veränderbare Word-Dateien
Computergrafik Bilder, Grafiken, Zeichnungen etc., die mithilfe von Computern hergestellt oder bearbeitet werden, bezeichnet man allgemein als Computergrafiken. Früher wurde streng zwischen Computergrafik
