11/2009 Bernhard Gangl. Steuerungen mit OOP entwickeln 11 / Themenübersicht. Übersicht und Begriffsklärung: Objektorientierte Programmierung

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "11/2009 Bernhard Gangl. Steuerungen mit OOP entwickeln 11 / 2009 1. Themenübersicht. Übersicht und Begriffsklärung: Objektorientierte Programmierung"

Transkript

1 Reduzierung der Engineeringzeiten und kosten durch objektorientierte Steuerungsprogrammierung 11/2009 Bernhard Gangl Steuerungen mit OOP entwickeln 11 / Themenübersicht Übersicht und Begriffsklärung: Objektorientierte Programmierung Komplexitätsreduzierung der Objektorientierung spezielle Anforderungen für Steuerungsprogramme Fallbeispiele nschnittstellen mit Client Server Kommunikation Objektorientierung im Bereich Visualisierung Steuerungen mit OOP entwickeln 11 /

2 Objektorientierung Übersicht Gegenüberstellung zum prozeduralen Programmierparadigma Prozedurale Programmierung Objektorientierte Programmierung Steuerungen mit OOP entwickeln 11 / Objektorientierung Übersicht Die 4 Säulen der Objektorientierung Steuerungen mit OOP entwickeln 11 /

3 Objektorientierung Übersicht Begriffsklärung Ist eine abstrakte Beschreibung eines realen Anlagenteils mit allen Schnittstellen, Daten und Methoden und ist der Bauplan eines Objekts. Verglasung Lenkung Auspuff Objekt Bremsen Motor Fahrwerk Ist ein Exemplar (Instanz) einer. Ein Objekt hat einen Zustand, ein Verhalten und eine Identität. Der Zustand eines Objekts setzt sich aus seinen Attributen (Daten) und Verbindungen zu anderen Objekten zusammen. Das Verhalten des Objekts wird durch die Menge seiner Operationen beschrieben. Die Identität unterscheidet ein Objekt von anderen Objekten, auch wenn diese anderen Objekte möglicherweise den gleichen Zustand und das gleiche Verhalten haben. Jedes Objekt besitzt seinen eigenen Speicherbereich. Steuerungen mit OOP entwickeln 11 / Vererbung, Ableitung Objektorientierung Übersicht Begriffsklärung Die Vererbung beschreibt die Vorgehensweise zum Erstellen einer Ableitung. Eine abgeleitete besitzt alle Eigenschaften, Methoden und Schnittstellen ihrer Basisklasse und kann darüber hinaus erweitert werden. Eine Besonderheit ist, dass virtuelle Methoden der Basisklasse neu ausprogrammiert werden können. Auch die Basisklasse kann bereits eine Ableitung sein, d.h. die Vererbung ist über mehrere hierarische Ebenen hinweg möglich. Aggregation Beschreibt eine besondere Art von Beziehung zwischen Objekten. Ein Objekt ist dabei Teil eines ganzen, komplexeren Objekts. Steuerungen mit OOP entwickeln 11 /

4 Objektorientierung Übersicht Die Maschine als Paradebeispiel für objektorientiertes Design Motor Förderband-Einheit Förderband Zylinder Objekte: F-Band 1 F-Band 2 F-Band 3 Steuerungen mit OOP entwickeln 11 / Objektorientierung Lösungsansätze in der Automatisierung Grafische Darstellung Objekt Individuelle Schnittstellen -anpassung Parametrierung Steuerungen mit OOP entwickeln 11 /

5 Objektorientierung Lösungsansätze in der Automatisierung Modellierung ohne spezielle Syntaxkenntnisse Wird im Tree definiert, alle Deklarationen und Funktionsrümpfe werden von LASAL Class automatisch erstellt. Der Anwender muss nur noch die einzelnen Methoden ausprogrammieren. Objekt Eine aus dem Tree wird per Drag&Drop in ein Objektnetzwerk fallengelassen. Dadurch entsteht ein Objekt. Instanzieren Steuerungen mit OOP entwickeln 11 / Objektorientierung Lösungsansätze in der Automatisierung Komplexe n Vererbung und Aggregation Eine abgeleitete in der normalen Ansicht. Das Innenleben der abgeleiteten mit Basisklasse und eingebetteten (aggregierten) Objekten Steuerungen mit OOP entwickeln 11 /

6 Objektorientierung Lösungsansätze in der Automatisierung Mischung verschiedener Programmiersprachen ncode in Structured Text (ST) ncode in Kontaktplan (KOP) Steuerungen mit OOP entwickeln 11 / Objektorientierung Lösungsansätze in der Automatisierung Grafische Online-Diagnose Aktueller Status der einzelnen Objekte ersichtlich Wertänderungen direkt im Netzwerk möglich Erste Diagnose ohne Konfrontation mit Code (ideal für Servicetechniker) Steuerungen mit OOP entwickeln 11 /

7 Objektorientierung Lösungsansätze in der Automatisierung Bedienphilosophie Veränderbare Eigenschaften des aktuell ausgewählten Elements Ausgabe aller Benutzerinformationen (Info-, Warn-, Errormeldung) Netzwerkeditor, Sourcecodeeditor Treedarstellung aller Projektelemente Steuerungen mit OOP entwickeln 11 / Objektorientiertes Fallbeispiel: Vererbung Ansteuerung unterschiedlicher Antriebsvarianten Ansteuerung eines Antriebs wird durch Realisierung einer abstrakten Basisklasse flexibler Code für den Bewegungsablauf bleibt unangetastet Verschiedene Antriebsarten können durch kompatible Schnittstellen leicht ausgetauscht werden Steuerungen mit OOP entwickeln 11 /

8 Objektorientiertes Fallbeispiel: Aggregation Temperaturregelung Steuerungen mit OOP entwickeln 11 / Client / Server Kommunikation Ablaufsteuerung durch Ereignisse anstatt Polling Wie in einem PC-Netzwerk funktioniert die Kommunikation zwischen Client und Server über einen Request/Response Mechanismus. D.h. der Client fordert einen Dienst an, der vom verbundenen Server zur Verfügung gestellt bzw. abgearbeitet wird. Steuerungen mit OOP entwickeln 11 /

9 Client / Server Kommunikation Ablaufsteuerung durch Ereignisse anstatt Polling Steuerungen mit OOP entwickeln 11 / Durchgängige Objektorientierung auch im Bereich Visualisierung Grafisches Objekt Automatischer Import der Datenpunkte von der Programmierumgebung in die Visualisierungsumgebung Definition eines grafischen Objekts zur Visualisierung einer Temperaturregelzone Steuerungen mit OOP entwickeln 11 /

10 Durchgängige Objektorientierung auch im Bereich Visualisierung Parametrierung der grafischen Objekte Eine, ein grafisches Objekt beliebig viele Instanzen Mechanismus steht auch programmtechnisch während der Laufzeit zur Verfügung Steuerungen mit OOP entwickeln 11 / ALL IN ONE Die Programmier-Software LASAL stellt in einem Paket alle Funktionalitäten zur Lösung von Automatisierungsaufgaben zur Verfügung. Objektorientierte Projektierung mit höchster Modularität Visualisierung auf sämtlichen SIGMATEK-Anzeigeeinheiten Motion Control Programmierung der logischen Verknüpfungen der Safety Komponenten Service und Fernwartung Danke für Ihre Aufmerksamkeit! Steuerungen mit OOP entwickeln 11 /

Java Einführung Objektorientierte Grundkonzepte

Java Einführung Objektorientierte Grundkonzepte Java Einführung Objektorientierte Grundkonzepte Inhalt Verständnis der grundlegenden Konzepte der Objektorientierung: Objekte Nachrichten Kapselung Klassen und Instanzen Vererbung Polymorphismus Darstellung

Mehr

Fachmedium der Automatisierungstechnik

Fachmedium der Automatisierungstechnik Computer & AUTOMATION 11/2011 11-2011 7,50 Fachmedium der Automatisierungstechnik Titel: Objektorientierung ein MuSS! Ausgabe zur SPS/IPC/Drives 60 Safety 114 IO-Link Industrie-PC als Sicherheitssteuerung

Mehr

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language ADV-Seminar Leiter: Ziel dieses Seminars Verständnis von Objekt-Orientierung Was sind Klassen? Was ist Vererbung?

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

UML. Weiteres Vorgehen im Projekt

UML. Weiteres Vorgehen im Projekt UML Download objectif Personal Edition (kostenlos): http://www.microtool.de/objectif/de/download.asp Weiteres Vorgehen im Projekt Komponenten, Klassen, Objekte Prozesse Nichtfunktionale Anforderungen Skizzen,

Mehr

Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen 1/21 Informationsverarbeitung im Bauwesen Einführung in das Programmieren mit C++ Markus Uhlmann Institut für Hydromechanik Karlsruher Institut für Technologie www.ifh.kit.edu WS 2010/2011 Vorlesung 8

Mehr

Beziehungen zwischen Objekten

Beziehungen zwischen Objekten 1/19 Beziehungen zwischen Objekten Florian Adamsky, B. Sc. (PhD cand.) florian.adamsky@iem.thm.de http://florian.adamsky.it/ cbd Softwareentwicklung im WS 2014/15 2/19 Outline 1 Vererbung (Wiederholung)

Mehr

Objektorientierte Modellierung (1)

Objektorientierte Modellierung (1) Objektorientierte Modellierung (1) Die objektorientierte Modellierung verwendet: Klassen und deren Objekte Beziehungen zwischen Objekten bzw. Klassen Klassen und Objekte Definition Klasse Eine Klasse ist

Mehr

Das Softwaresystem BASEMENT

Das Softwaresystem BASEMENT Numerische Modellierung von Naturgefahren mit dem Softwaresystem BASEMENT Workshop vom 6. Oktober 2006 an der VAW ETH Zürich Das Softwaresystem BASEMENT David Vetsch Inhalt 1. Motivation und Entstehungsgeschichte

Mehr

Repetitorium Informatik (Java)

Repetitorium Informatik (Java) Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen

Mehr

Beispiel: Zwischen der Oberklasse und der abgeleiteten Klasse besteht eine ist ein Beziehung. Eine abgeleitete Klasse stellt eine Spezialisierung der

Beispiel: Zwischen der Oberklasse und der abgeleiteten Klasse besteht eine ist ein Beziehung. Eine abgeleitete Klasse stellt eine Spezialisierung der Vererbung Vererbung ist ein Konzept der objektorientierten Programmierung,, die es ermöglicht neue Klassen von bereits vorhandenen Klassen abzuleiten. In einer abgeleiteten Klasse (subclass) muss nur spezifiziert

Mehr

Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich

Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich WS 02/03 Warum muss ein Objekt wissen, zu welcher Klasse es gehört? Damit die Klassenzugehörigkeit

Mehr

Vererbung und Polymorphie

Vererbung und Polymorphie Vererbung und Polymorphie WiMa-Praktikum 1, Teil C++, Tag 5 Christoph Ott, Büro: Helmholtzstr.18, E22 Tel.: 50-23575, Mail: christoph.ott@uni-ulm.de Institut für Angewandte Informationsverarbeitung 29.08.08

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

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Einführung

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Einführung Grundkurs C++ Einführung Tim Habigt tim@tum.de Büro Z949 Julian Habigt jh@tum.de Büro Z941 Grundkurs C++ 2 Warum C++? Sprache Rechenzeit Memory KB C++ GNU g++ 5,74 182.244 Java 6 26,34 686.076 Python 3

Mehr

KONFERENZ KNX-SCHULUNGSSTÄTTEN MAI 2008

KONFERENZ KNX-SCHULUNGSSTÄTTEN MAI 2008 KONFERENZ KNX-SCHULUNGSSTÄTTEN MAI 2008 Referent: IP Control Oliver Brüggemann Berker GmbH & Co. KG EINFÜHRUNG MOTIVATION Gebäudesteuerung mit IP-Anbindung wird in Zukunft weiter an Bedeutung gewinnen.

Mehr

Interaktionsdiagramme in UML

Interaktionsdiagramme in UML Interaktionsdiagramme in UML Interaktionsdiagramm ist ein Oberbegriff für eine Reihe von Diagrammen, die das Verhalten eines objektorientierten Systems durch Objektinteraktionen beschreiben Ein Sequenzdiagramm

Mehr

Objektorientierte Programmierung mit Java. Grundlagen Übersicht. Programmiersprachen

Objektorientierte Programmierung mit Java. Grundlagen Übersicht. Programmiersprachen Objektorientierte Programmierung mit Grundlagen 27.10.2008 1 Übersicht 27.10.2008 2 1 Übersicht Klassen und Objekte in - Klassen - Objekte - Klassen - Objekte 27.10.2008 3 Übersicht 27.10.2008 4 2 Einführung

Mehr

OBJEKT- ORIENTIERT effizient programmieren. AUSTROMATISIERUNG at

OBJEKT- ORIENTIERT effizient programmieren. AUSTROMATISIERUNG at at P.b.b. Verlagspostamt 2020 Hollabrunn I AlexanderVerlag.at GmbH GZ: 09Z038211M I 4 Euro (Ausland: 5 Euro) Österreichs neues Magazin für Fertigungs- und Prozessautomatisierung Fotos:, Fotolia; OBJEKT-

Mehr

Objektorientierter Softwareentwurf mit UML. Grundlagen. Ricardo Hernández Garcia. 3. Ausgabe, November 2012 PGOS

Objektorientierter Softwareentwurf mit UML. Grundlagen. Ricardo Hernández Garcia. 3. Ausgabe, November 2012 PGOS Objektorientierter Softwareentwurf mit UML Ricardo Hernández Garcia 3. Ausgabe, November 2012 Grundlagen PGOS 3 Objektorientierter Softwareentwurf mit UML - Grundlagen 3 Das objektorientierte Vorgehensmodell

Mehr

Objektorientiertes Software-Engineering

Objektorientiertes Software-Engineering Objektorientiertes Software-Engineering TIT99BPE/TIT99CPE BA Mannheim WS 2001/2 F. Schönleber Organisatorisches Kurs 1: TIT99BPE 6.Studienhalbjahr Termin Mo. 13.00 14.30 Raum: 037B Kurs 1: TIT99CPE 6.Studienhalbjahr

Mehr

JOANNEUM RESEARCH. Institut für Informationssysteme & Informationsmanagement. IMDAS-Pro Anwendertreffen. Werner Preininger 17.3.

JOANNEUM RESEARCH. Institut für Informationssysteme & Informationsmanagement. IMDAS-Pro Anwendertreffen. Werner Preininger 17.3. JOANNEUM RESEARCH Institut für Informationssysteme & Informationsmanagement Werner Preininger IMDAS-Pro Anwendertreffen 17.3.2005 IMDAS-Pro 3.0 Übersicht IMDAS-Pro 3.0 Inkl. Numismatik IMDAS-Media Verwaltung

Mehr

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure 8. Objektorientierte Programmierung Informatik II für Verkehrsingenieure Grundbegriffe ALAN KAY, ERFINDER DER SPRACHE SMALLTALK, HAT DIE GRUNDBEGRIFFE DER OBJEKTORIENTIERTEN PROGRAMMIERUNG WIE FOLGT ZUSAMMENGEFASST:

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 41 Einstieg in die Informatik mit Java Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick: Vererbung 2 Grundidee Vererbung 3 Verdeckte Variablen

Mehr

Grundzüge der Programmierung. Konzepte der objektorientierten Programmierung (oop) OBJEKTE - KLASSEN

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:

Mehr

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 3 - Objektorientierung Warum Objektorientierung Daten und Funktionen möglichst eng koppeln und nach außen kapseln Komplexität der Software besser modellieren

Mehr

Programmierkurs Java. Vererbung. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.

Programmierkurs Java. Vererbung. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck. Programmierkurs Java Vererbung Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Ähnlichkeiten zwischen Klassen? Beispiel: Klassen Auto

Mehr

Grundlagen der Informatik für Ingenieure I

Grundlagen der Informatik für Ingenieure I 3 Einführung in das objektorientierte Programmier-Paradigma 3 Einführung in das objektorientierte Programmier-Paradigma 3.1.1 Top-down structured design 3.1.2 Data-driven design 3.1.3 Object-oriented design

Mehr

Präsentation Interfaces

Präsentation Interfaces Einführung in Java Präsentation Interfaces Nozar Delassaei Marvi Inhalt 1. Erinnerung Klasse Objekte Beispiel Klasse Abstrakte Klasse Beispiel Abstrakte Klasse Mehrfachvererbung-1 Mehrfachvererbung-2 2.

Mehr

Objektorientierte und Funktionale Programmierung SS 2014

Objektorientierte und Funktionale Programmierung SS 2014 Objektorientierte und Funktionale Programmierung SS 2014 6 Objektorientierte Entwurfsmuster 1 6 Objektorientierte Entwurfsmuster Lernziele Einige wichtige Entwurfsmuster kennen und verstehen Einsatzmöglichkeiten

Mehr

Teil 2: OOP und JAVA (Vorlesung 11)

Teil 2: OOP und JAVA (Vorlesung 11) Teil 2: OOP und JAVA (Vorlesung 11) Modul: Programmierung B-PRG Grundlagen der Programmierung II Prof. Dot.-Ing. Roberto Zicari Professur für Datenbanken und Informationssysteme (FB 12) 28.06.06 1 Teil

Mehr

JetSym. Programmierung in Hochsprache ST nach IEC-61131-3. We automate your success.

JetSym. Programmierung in Hochsprache ST nach IEC-61131-3. We automate your success. JetSym Programmierung in Hochsprache ST nach IEC-61131-3 We automate your success. JetSym das Tool JetSym ist das zentrale Programmiertool der Jetter AG, das alle Funktionen der Automatisierungstechnik

Mehr

Aspektorientierte Programmierung (aspect-oriented programming, AOP)

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

Mehr

wenige Konzepte, keine Adressen, Anlehnung an C++ -Syntax Vererbung, Polymorphie/dynamisches Binden, umfangreiche Klassenbibliotheken

wenige Konzepte, keine Adressen, Anlehnung an C++ -Syntax Vererbung, Polymorphie/dynamisches Binden, umfangreiche Klassenbibliotheken 1 Java ist... gut erlernbar wenige Konzepte, keine Adressen, Anlehnung an C++ -Syntax objektorientiert Vererbung, Polymorphie/dynamisches Binden, umfangreiche Klassenbibliotheken robust keine Adressen,

Mehr

TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4

TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4 Inhaltsverzeichnis TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA... 1 1 GRUNDLAGEN DER PROGRAMMIERUNG... 4 1.1 Das erste Java-Programm... 4 1.2 Programme und ihre Abläufe... 6 1.3 Entwurf mit Nassi-Shneiderman-Diagrammen...

Mehr

Einführung in die objektorientierte Programmierung. mit Squeak

Einführung in die objektorientierte Programmierung. mit Squeak Einführung in die objektorientierte Programmierung mit Squeak Quellen Squeak Object-Oriented Design with Multimedia Applications, Mark Guzdial, 2001, Prentice Hall http://people.freenet.de/deckard73/page

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

15.02.2012. Unterschiede in der Implementierung einer Software mit Datenbankanbindung in Java bzw. PHP am Beispiel einer Zeiterfassungssoftware

15.02.2012. Unterschiede in der Implementierung einer Software mit Datenbankanbindung in Java bzw. PHP am Beispiel einer Zeiterfassungssoftware Unterschiede in der Implementierung einer Software mit Datenbankanbindung in Java bzw. PHP am Beispiel einer Zeiterfassungssoftware 15.02.2012 einer Zeiterfassungssoftware Kurz zu mir Jana Bittner Auszubildende

Mehr

Teil II: OOP und JAVA (Vorlesung 9)

Teil II: OOP und JAVA (Vorlesung 9) Teil II: OOP und JAVA (Vorlesung 9) Modul: Programmierung B-PRG Grundlagen der Programmierung II Prof. Dot.-Ing. Roberto Zicari Professur für Datenbanken und Informationssysteme (FB 12) 14.06.06 1 Teil

Mehr

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7

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

Mehr

OO Softwareentwicklung

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

Mehr

1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge

1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge Einführung. Vorbemerkungen und Überblick. Die elektronischen e des Fahrzeugs. Prozesse in der Fahrzeugentwicklung im Überblick,.4 Grundlagen. Steuerungs- und regelungstechnische e (Prof. Schumacher). Diskrete

Mehr

Kapitel 5: Das Design

Kapitel 5: Das Design Nach der Analyse kommt... Kapitel 5: Das Design SoPra 2008 Kap. 5: Das Design (1/20) Kapitel 5.1: Überblick Was ist Design? Ergebnis der Analyse: abstrakte Definitionen Objektmodell: Klassen, Assoziationen,

Mehr

Werner Achte rt DATA BECKER

Werner Achte rt DATA BECKER Werner Achte rt. DATA BECKER Inhaltsverzeichnis 1. Einführung 21 1.1 Entwurf von Anwendungssystemen 23 1.2 Entwicklung eines Programms 25 1.3 Objektorientierte Programmierung 29 1.4 Darstellung objektorientierter

Mehr

Objektorientierte Programmierung Teil 1: Einführung

Objektorientierte Programmierung Teil 1: Einführung Objektorientierte Programmierung Teil 1: Einführung Prof. Dr. Schoop FHT Esslingen, Sommersemester 2005 Agenda Beispielszenario Eigenschaften des objektorientierten Ansatzes Konzepte des objektorientierten

Mehr

Java Vererbung. Inhalt

Java Vererbung. Inhalt Java Vererbung Inhalt 1 Zielsetzung... 2 1.1 Bewertung... 2 2 Grundlagen der Vererbung... 2 2.1 Super und Subklassen... 2 3 Überladen von Methoden... 4 3.1 Unterschiedliche Parameter... 4 3.2 Gleiche Parameter

Mehr

Anwendungsentwicklung mit Java. Grundlagen der OOP, Vererbung, Schnittstellen, Polymorphie

Anwendungsentwicklung mit Java. Grundlagen der OOP, Vererbung, Schnittstellen, Polymorphie Anwendungsentwicklung mit Java Grundlagen der OOP, Vererbung, Schnittstellen, Polymorphie Vererbung (1) 2 Problem: Objekte mit gleichen Attributen/Methoden, aber nicht völlig identisch, z.b., LKW, PKW,

Mehr

Algorithmen und Programmierung II

Algorithmen und Programmierung II Algorithmen und Programmierung II Vererbung Prof. Dr. Margarita Esponda SS 2012 1 Imperative Grundbestandteile Parameterübergabe String-Klasse Array-Klasse Konzepte objektorientierter Programmierung Vererbung

Mehr

Objektorientierte Programmierung. 1. Einführung. Dresden, 10. April 2008

Objektorientierte Programmierung. 1. Einführung. Dresden, 10. April 2008 Fakultät Informatik, Studienrichtung Lehramt Informatik Objektorientierte Programmierung 1. Einführung Dresden, 10. April 2008 Dr. Michael Unger Gymnasium Coswig Schülerrechenzentrum der TU Dresden (mu2@inf.tu-dresden.de)

Mehr

Dr. Tobias Günther Programmierung Einführung Probeklausur 120 min

Dr. Tobias Günther Programmierung Einführung Probeklausur 120 min Aufgaben zu Kontrollstrukturen (Pseudocode) Aufgabe Schleifen Stellen Sie mit Hilfe von Pseudocode das Hochzählen einer Variablen jeweils mit Hilfe einer "for" bzw. Mit Hilfe einer "while" Schleife dar.

Mehr

Muster in der Software Technik. Grundlegende Konzepte der Software Entwicklung und Objekt Orientierung

Muster in der Software Technik. Grundlegende Konzepte der Software Entwicklung und Objekt Orientierung Muster in der Software Technik Grundlegende Konzepte der Software Entwicklung und Objekt Orientierung Grundlagen für die weitere Vorlesung: Aktivitäten und Prozesse der Software Entwicklung Objektorientierte

Mehr

Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)

Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) Wintersemester 2006/07 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl

Mehr

Automatisierung kompletter Kühlanlagen mittels LabVIEW und PAC-Systemen

Automatisierung kompletter Kühlanlagen mittels LabVIEW und PAC-Systemen Automatisierung kompletter Kühlanlagen mittels LabVIEW und PAC-Systemen "Auf der Grundlage des PAC-Konzeptes mit CompactFieldPoint und LabVIEW 8.6.1 wurde innerhalb kürzester Zeit eine voll funktionsfähige

Mehr

Sind Kühe Tiere? oder Was lehrt uns die Objektorientierung? Prof. Dr. Th. Letschert

Sind Kühe Tiere? oder Was lehrt uns die Objektorientierung? Prof. Dr. Th. Letschert oder Was lehrt uns die Objektorientierung? Prof. Dr. Th. Letschert Kühe Was sind Kühe? 2 Kühe Zwei Kühe 3 Kühe in der Informatik / UML Kuh Kuh Horn: hornlinks Horn: hornrechts Konzept, Typ, Klasse Beschreibt

Mehr

Vorlesung "Software-Engineering"

Vorlesung Software-Engineering Vorlesung "Software-Engineering" Rainer Marrone, TUHH, Arbeitsbereich STS Vorige Vorlesung Pflichtenheft (requirements specification document) Charakterisierung von Software-Qualität Detaillierte Anforderungsanalyse

Mehr

Graphische Benutzungsoberflächen mit Java. Einführung in NetBeans

Graphische Benutzungsoberflächen mit Java. Einführung in NetBeans Graphische Benutzungsoberflächen mit Java Einführung in NetBeans Graphische Benutzungsoberflächen! Interaktion mit dem Programm! Datenein- und ausgabe! Rückmeldungen über Verarbeitung der Daten! Visualisierung

Mehr

Blöcke Strukturelemente. Dr. Beatrice Amrhein

Blöcke Strukturelemente. Dr. Beatrice Amrhein Blöcke Strukturelemente Block Definitionsdiagramm Dr. Beatrice Amrhein Definition Ein Block Definitionsdiagramm (oder Blockdiagramm) o zeigt die statische Struktur des Systems, o beschreibt, welche Systembausteine

Mehr

Jason T. Roff UML. IT Tutorial. Übersetzung aus dem Amerikanischen von Reinhard Engel

Jason T. Roff UML. IT Tutorial. Übersetzung aus dem Amerikanischen von Reinhard Engel Jason T. Roff UML IT Tutorial Übersetzung aus dem Amerikanischen von Reinhard Engel Inhaltsverzeichnis Inhaltsverzeichnis Einführung 11 Grundlagen der UML 15 Warum wir Software modellieren 16 Analyse,

Mehr

Inhaltsüberblick. I. Grundbegriffe - Objekte und Klassen. Organisatorisches. I. Grundbegriffe - Objektorientierte Konzepte

Inhaltsüberblick. I. Grundbegriffe - Objekte und Klassen. Organisatorisches. I. Grundbegriffe - Objektorientierte Konzepte Grundkonzepte Objektorientierter Programmierung Nicole Himmerlich FSU Jena mit Java, Oberon-2, Object-Pascal und Python Inhaltsüberblick I. Grundbegriffe 1) Kopplung 2) Datenkaspelung 3) Konstruktor 4)

Mehr

ObjectBridge Java Edition

ObjectBridge Java Edition ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente

Mehr

Vererbung. Was versteht man unter dem Begriff Vererbung?

Vererbung. Was versteht man unter dem Begriff Vererbung? Was versteht man unter dem Begriff Vererbung? Elternkonstrukt - Datenelemente - Methoden o Deklaration o Definition Kindkonstrukt... Main... Elternkonstrukt b = new Kindkonstrukt() b.fn() Komponenten &

Mehr

Software-Entwurfsmuster

Software-Entwurfsmuster Software-Entwurfsmuster benennen wiederkehrende Probleme und Lösungen dienen dem Austasch von Erfahrungen Wiederverwendung von Erfahrung wo Wiederverwendung von Code versagt sehr abstrakt, daher häufig

Mehr

Objektorientierte Analyse und Entwurf

Objektorientierte Analyse und Entwurf Objektorientierte Analyse und Entwurf Thomas Röfer Funktionale Dekomposition Objektorientierter Ansatz Objekte und Klassen Objektbeziehungen Beispiel Rückblick Datenorganisation und Datenstrukturen Zeichensätze

Mehr

Softwarepraktikum: Enigma

Softwarepraktikum: Enigma Softwarepraktikum: Enigma Martin Steffen Sommersemester 2003 Abschnitt I Softwareentwurf Bereiche der Softwareentwicklung 1 Softwareentwurf eigentliche Softwareentwicklung Projektmanagement Konfigurationsmanagement

Mehr

Neuerungen bei STEP 7 V5.5

Neuerungen bei STEP 7 V5.5 Neuerungen bei STEP 7 V5.5 Support von Ab STEP 7 V 5.5 werden die Betriebssysteme MS Professional,Ultimate und Enterprise in der 32 Bit Standardinstallation unterstützt. Hohe Produktivität durch Seite

Mehr

Objektorientierte Software- Konzepte und UML

Objektorientierte Software- Konzepte und UML Objektorientierte Software- Konzepte und UML Thomas Röfer Funktionale Dekomposition Objektorientierter Ansatz Objekte und Klassen Objektbeziehungen Beispiel Rückblick Konzepte benutzerdefinierter Datenstrukturen

Mehr

Übungsaufgaben: 1. Objektorientierte Programmierung - Teil 1

Übungsaufgaben: 1. Objektorientierte Programmierung - Teil 1 Übungsaufgaben: 1. Objektorientierte Programmierung - Teil 1 1. Das Objekt Bruch mit einem Standardkonstruktor (initialisieren mit 0), einem allgemeinen Konstruktor (Zähler und Nenner können beliebig vorgegeben

Mehr

Die IT steuern mit Key Performance Indicators

Die IT steuern mit Key Performance Indicators Die IT steuern mit Key Performance Indicators» Der IT-Manager «Kirchner + Robrecht GmbH management consultants: info@kirchner-robrecht.de; www. kirchner-robrecht.de Büro Frankfurt: Borsigallee 12, 60388

Mehr

11.3 Virtuelle Methoden

11.3 Virtuelle Methoden 11.3 Virtuelle Methoden Überdeckte Methoden: Betrachten wir noch einmal unsere Klassen Employee und Manager. class Employee void print() const cout

Mehr

Kurzeinführung in UML

Kurzeinführung in UML Kurzeinführung in UML Die Unified Modeling Language (UML) ist eine Sprache zur Beschreibung von Softwaresystemen. Der Grundgedanke bei UML bestand darin, eine einheitliche Notation für viele Einsatzgebiete

Mehr

Dr. Beatrice Amrhein. April 13

Dr. Beatrice Amrhein. April 13 Dr. Beatrice Amrhein April 13 Viele der Ideen und Aufgabenbeispiele stammen aus dem Skript von André- Claude Godet, welches er mir freundlicherweise als Ausgangspunkt für dieses Skript zur Verfügung gestellt

Mehr

Objektorientierte Analyse (OOA) OOA-Pattern

Objektorientierte Analyse (OOA) OOA-Pattern OOA-Muster (Architektur Pattern) Ein Pattern (Entwurfsmuster) ist ein Problem mit seiner Lösung in einem Kontext. Der Kontext enthält in der Regel Zielkonflikte, die der Designer lösen muss, z.b. Performance

Mehr

Java, OO und UML Fortsetzung

Java, OO und UML Fortsetzung Java, OO und UML Fortsetzung Das Objektorientierte Paradigma OO bildet keine geschlossene theoretisch abgegrenzte Basis (wie z.b. das Relationsmodell relationaler Datenbanken) OO ist eine Sammlung und

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

SIMATIC PCS 7 V8.2 Open OS. Integration von Package Units ohne Nebenwirkungen

SIMATIC PCS 7 V8.2 Open OS. Integration von Package Units ohne Nebenwirkungen SIMATIC PCS 7 V8.2 Open OS Integration von Package Units ohne Nebenwirkungen Frei Verwendbar Siemens AG 2016 siemens.com/process-automation SIMATIC PCS 7 V8.2 Open OS Operator Ergonomie Open OS Seite 2

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

Inhaltsverzeichnis. Teil I Einführung 13. Teil II Struktur 41. Vorwort 11

Inhaltsverzeichnis. Teil I Einführung 13. Teil II Struktur 41. Vorwort 11 UML 2 für Studenten Inhaltsverzeichnis Vorwort 11 Teil I Einführung 13 Kapitel 1 UML (nicht nur) für Studenten 15 1.1 Zielgruppen 16 1.2 Konventionen 17 1.3 Abgrenzung 18 1.4 Aufbau dieses Buches 18 Kapitel

Mehr

Wolmerin; Java lernen y. mit Eclipse 3. Galileo Computing

Wolmerin; Java lernen y. mit Eclipse 3. Galileo Computing Wolmerin; Java lernen y mit Eclipse 3 Galileo Computing Inhalt Vorwort 13 Hinweise 15 Teil I Grundwissen und Installation 19 1 Was ist Java? 21 1.1 Warum programmieren? 23 1.2 Was ist eine Programmiersprache?

Mehr

6. Design-Phase Software Engineering (FB EIT) Wintersemester 2007 / 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik

6. Design-Phase Software Engineering (FB EIT) Wintersemester 2007 / 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik 6. Design-Phase Software Engineering (FB EIT) Wintersemester 2007 / 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Software

Mehr

Flexible Automatisierungslösungen für dezentrale zeitkritische Sicherheitsanwendungen

Flexible Automatisierungslösungen für dezentrale zeitkritische Sicherheitsanwendungen Flexible Automatisierungslösungen für dezentrale zeitkritische Sicherheitsanwendungen Komplexe Automatisierungsaufgaben werden immer in einzelne Teilbereiche oder Bearbeitungsschritte aufgeteilt. Diese

Mehr

Nexory TOBIT2ELO Client und Serverseitige E-Mail Archivierung mit Tobit David.fx

Nexory TOBIT2ELO Client und Serverseitige E-Mail Archivierung mit Tobit David.fx 5 Seite 1 von Konto 0304155205 USt. ID-Nr. DE 274910595 BLZ 855 900 00 Nexory TOBIT2ELO Client und Serverseitige E-Mail Archivierung mit Tobit David.fx Mit dieser Serverbasierten Tobit-Integration können

Mehr

MOF Meta Object Facility. Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools

MOF Meta Object Facility. Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools MOF Meta Object Facility Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools Überblick Object Management Group (OMG) Model Driven Architecture (MDA) Exkurs: Modelle, Metamodelle MOF Architektur

Mehr

Analyse und Modellierung von Informationssystemen

Analyse und Modellierung von Informationssystemen Analyse und Modellierung von Informationssystemen Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2014/15 1 / 26 Allgemeines Progammiersprachen Objektorientierte Programmierung Grundlegende Eigenschaften

Mehr

Kapitel 1 1 Einleitung

Kapitel 1 1 Einleitung Kapitel 1 Einleitung 1 1 1 Einleitung 1 Einleitung Die Informatik begegnet uns im Alltag ständig. Einmal natürlich als Rechenanlagen, die wir in Büros, Arztpraxen und zu Hause sehen. Zum anderen ist sie

Mehr

transportation SYMTES Testen mit System www.ics-ag.de

transportation SYMTES Testen mit System www.ics-ag.de transportation SYMTES Testen mit System 1 Motivation Seit mehreren Jahrzehnten ist die ICS AG in Sachen Test in verschiedensten Projekten und bei zahlreichen Kunden unterwegs. Bei eingebetteten Anwendungen

Mehr

Objektorientierte Analyse (OOA) Inhaltsübersicht

Objektorientierte Analyse (OOA) Inhaltsübersicht Inhaltsübersicht Einführung Anforderungen an die UML-Diagramme Verhalten: Use-Case-Diagramm Verhalten: Aktivitätsdiagramm Verhalten: Zustandsautomat Struktur: Klassendiagramm Seite 1 Einführung In der

Mehr

StR C. Müller/Dr. M. Ehmann. Objektorientierung in den (Grund-) Modulen

StR C. Müller/Dr. M. Ehmann. Objektorientierung in den (Grund-) Modulen StR C. Müller/Dr. M. Ehmann Objektorientierung in den (Grund-) Modulen StR Carsten Müller carsten.mueller@uni-bayreuth.de Didaktik der Informatik Universität Bayreuth Dr. Matthias Ehmann matthias.ehmann@uni-bayreuth.de

Mehr

Software- und Systementwicklung

Software- und Systementwicklung Software- und Systementwicklung Seminar: Designing for Privacy 11.11.2009 Moritz Vossenberg Inhalt Vorgehensmodelle Wasserfallmodell V-Modell Phasen (Pflichtenheft) UML Klassendiagramm Sequenzdiagramm

Mehr

01. Grundprinzipien der Vererbung

01. Grundprinzipien der Vererbung 01. Grundprinzipien der Vererbung 1.1 Grundidee der Vererbung Bei der Analyse eines Problems (z.b. Baukasten) stellt man beispielsweise fest, dass 67 % an Daten/Funktionen immer vorkommen 25 % an Daten/Funktionen

Mehr

iba AG Messtechnik- und Automatisierungssysteme ibapda- Signalauswahl per Drag & Drop mit STEP 7- CFC (Siemens) und ALSPA P80i (Alstom)

iba AG Messtechnik- und Automatisierungssysteme ibapda- Signalauswahl per Drag & Drop mit STEP 7- CFC (Siemens) und ALSPA P80i (Alstom) iba AG Messtechnik- und Automatisierungssysteme ibapda- Signalauswahl per Drag & Drop mit STEP 7- CFC (Siemens) und ALSPA P80i (Alstom) Referenten Dieter Kopp und Michael Lange www.iba-ag.com iba AG 2006

Mehr

AUSBILDUNGSFÜHRER 2016

AUSBILDUNGSFÜHRER 2016 AUSBILDUNGSFÜHRER 2016 Einfach entspannt weiterbilden Mit massgeschneiderten Schulungsprogrammen industrial.omron.ch Lieber Schulungsteilnehmer, Omron gehört heute weltweit zu den grössten Anbietern von

Mehr

Industrie 4.0 im Focus

Industrie 4.0 im Focus Industrie 4.0 im Focus Intelligente Maschinen, selbstoptimierende Prozesse und durchgängige Services 13. Mai 2014, Dr. J. Michels Der Weg zur Industrie 4.0 Industrie 4.0 Wir stehen aktuell an der Schwelle

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Die Vererbung ermöglicht es, neue Klassen auf der Basis von schon

Mehr

Projektgruppe 453: Entwurf eines Managementwerkzeugs zur Verwaltung von Sicherheitsdiensten für komplexe eingebettete Dienstesysteme

Projektgruppe 453: Entwurf eines Managementwerkzeugs zur Verwaltung von Sicherheitsdiensten für komplexe eingebettete Dienstesysteme Titel CORBA Eine Middleware-Plattform für objektorientierte Technologien von Martin Villis 6. Mai 2004 Projektgruppe 453: Entwurf eines Managementwerkzeugs zur Verwaltung von Sicherheitsdiensten für komplexe

Mehr

Inhalt. Vorwort. Bibliografische Informationen digitalisiert durch

Inhalt. Vorwort. Bibliografische Informationen  digitalisiert durch Vorwort 1 Einleitung 1 1.1 Programmierung und Programmiersprachen 1 1.1.1 Programmierung 2 1.1.2 Grundlegende Programmstrukturen 3 1.1.3 Programmiersprachen 5 1.2 Was ist Java? 9 1.2.1 Ursprung von Java

Mehr

Orientierte Modellierung mit der Unified Modeling Language

Orientierte Modellierung mit der Unified Modeling Language UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language Michael Hahsler Ziel dieses Seminars Verständnis von Objekt-Orientierung Was sind Klassen? Was ist Vererbung?

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

Von der statischen zur dynamischen Sicherheitstechnik

Von der statischen zur dynamischen Sicherheitstechnik Von der statischen zur dynamischen Sicherheitstechnik Sicherheit und Antriebstechnik Tagung zur IEC 61508 (VDE 0803) Armin Glaser Leiter Produktmanagement Themenübersicht Normative Einbindung der IEC 61800-5-2

Mehr

3D-Simulation in der Intralogistik

3D-Simulation in der Intralogistik 3D-Simulation in der Intralogistik Siemens Postal, Parcel & Airport Logistics AG Seite 1 siemens.ch/logistics Inhalt 3D Simulation in der Intralogistik Abgrenzung/Definition Animation Simulation Emulation

Mehr

IEC Windows- Programmiersoftware für APS-Systeme

IEC Windows- Programmiersoftware für APS-Systeme IEC61131-3 Windows- Programmiersoftware für APS-Systeme 47/15-089.172.03 esitron-electronic GmbH Ernst-Zimmermann-Str. 18 D-88045 Friedrichshafen Internet: www.esitron.de Telefon +49 (0) 7541/6000-0 Telefax

Mehr