Informationsverarbeitung im Bauwesen

Ähnliche Dokumente
Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

Informationsverarbeitung im Bauwesen

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

Informationsverarbeitung im Bauwesen

Modul 122 VBA Scribt.docx

Informationsverarbeitung im Bauwesen

Repetitorium Informatik (Java)

Theorie zu Übung 8 Implementierung in Java

Einführung in die Programmierung mit VBA

Algorithmen und ihre Programmierung

Excel VBA. Teil Zusammenfassung! Was wir können sollten! V

VBA-Programmierung: Zusammenfassung

Kapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen

Statische und Nichtstatische Methoden Properties/ Eigenschaften

Praxiseinsatz von benutzerdefinierten Klassen in Microsoft Access

Die Klasse Collection (gb) implementiert eine Hash-Tabelle, deren Elemente aus einem Wert-Schlüssel-Paar

3 Kurzeinführung in Matlab

Objektorientierte Programmierung OOP

Einführung in VisualBasic for Applications. Stefan Mahlitz

Container-Klassen in Delphi

Die Programmiersprache C Eine Einführung

Algorithmen und ihre Programmierung

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

Makro + VBA 2007 effektiv

Prof. W. Henrich Seite 1

Michael Kolberg. einfach klipp & klar. Microsofft* Press

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

OLConnector Programmierung

Felder (1) Felder (Arrays) speichern viele Datenelemente des gleichen Typs. Auf einzelne Elemente kann über einen Index zugegriffen werden

Tabellenkalkulation / Funktionen. VBA Visual Basic for Applications VBA auf einfache Art und Weise nutzen Der Makro-Recorder von EXCEL

Informationsverarbeitung im Bauwesen

Einstieg in die Programmierung mit Visual Basic.NET

Kapitel 9: Klassen und höhere Datentypen. Klassen und höhere. Objekte, Felder, Methoden. Küchlin/Weber: Einführung in die Informatik

Der Ball kann angezeigt werden: anzeigen( ) {... } Der Ball kann z.b. seine Größe verändern: groesseaendern(int veraenderung) {... } usw.

Programmieren in Java

Grundzüge der Programmierung. Wiederverwendung VERERBUNG

Einstieg in die Informatik mit Java

Microsoft Visio 2007-Programmierung

Vererbung & Schnittstellen in C#

Teil 2: OOP und JAVA (Vorlesung 11)

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

Einstieg in die Informatik mit Java

2 Anlegen und Konfigurieren von Datenbanken 35

5.5.8 Öffentliche und private Eigenschaften

Objektorientierte Programmierung OOP Programmieren mit Java

Flexibler Einsatz von VBA-Code und Access-Elementen durch Kapselung und modularer Programmierung (Josef Pötzl,

Informatik II (D-ITET) Übungsstunde 6

OOP und Angewandte Mathematik. Eine Einführung in die Anwendung objektorientierter Konzepte in der angewandten Mathematik

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich

Access 2010 Programmierung Import und Export nach Excel

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

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung

Objektorientierte Programmierung OOP

VBA mit Microsoft Excel für Kids

Excel VBA Arrays, Enumeration und benutzerdefinierte Typen

Überlegungen zur Entwicklung von Access- Anwendungen

Übersicht. 4.1 Ausdrücke. 4.2 Funktionale Algorithmen. 4.3 Anweisungen. 4.4 Imperative Algorithmen Variablen und Konstanten. 4.4.

Objektorientierte Programmierung mit Java

Einstieg in die Informatik mit Java

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

Objektorientierte Programmierung mit Java. Grundlagen Übersicht. Programmiersprachen

1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen

ALP II Dynamische Datenmengen

Makro Programmierung User Interface (Entwicklungs- Umgebung) Grafische Werkzeugbox. GUI Form erstellen (UserForm)

12. ArcView-Anwendertreffen Workshop Programmierung in ArcGIS. Daniel Fuchs. Wo kann eigene Programmierung in ArcGIS verwendet werden?

Präsentation Interfaces

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 1. Kapitel 11. Listen. Listen

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

Aufgaben der Klasse FTI33 HTML: 1. Durch welchen Befehl wird ein Hyperlink in einem Bestimmten Frame angezeigt?

Java: Eine kurze Einführung an Beispielen

FH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Wiederholung: Gerüstbeispiel. Vererbungshierarchie: Typ 0

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

4. Objektorientierte Programmierung mit C++

Access-Benutzeroberfläche

VBA mit Office 97 lernen

Welche Informatik-Kenntnisse bringen Sie mit?

Am Anfang werden die Attribute deklariert public class Kreis {

MELANIE BREDEN MICHAEL SCHWIMMER. Das Excel-VBA Codebook

System.out.println("TEXT");

Tutorium Java. Softwaretechnologie: Java I. Marco Jürgens und Mihail Atanassov.

Geschachtelte Klassen

Microsoft Excel VBA - Einführung

11. Funktionale Programmierung Advanced Programming Techniques Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt

Klassen und Objekte. Klassen sind Vorlagen für Objekte. Objekte haben. Attribute. Konstruktoren. Methoden. Merkblatt

Funktionale Programmiersprachen

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung

Programmieren II. Innere Klassen. Heusch 10, Ratz 5.2.1, Institut für Angewandte Informatik

Inhaltsverzeichnis. Teil I Erste Schritte. 1 Einleitung 11. Teil II Grundlagen von VBA. 2 Die ersten VBA-Prozeduren erstellen 17

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 4: Kombination OOP/.NET

Objektorientierte Programmierung

Beispiel. Problem: mehrteilige Nachnamen (von Goethe, Mac Donald, Di Caprio)

Informationsverarbeitung im Bauwesen

Programmierung von MS-Office mit Visual Basic

Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode

I Inhaltsverzeichnis B Beispielverzeichnis Vorwort... 17

Transkript:

12 im Bauwesen Markus Uhlmann 1

Zusammenfassung der 11. Vorlesung Objektorientierte Programmierung (OOP) Wozu eigentlich? Was unterscheidet OOP von traditionellen Techniken? Verwendung von vordefinierten Objekten Beispiele: Collection Objekt Range Objekt Polygon 2

Inhalt / Planung der Vorlesung 1. Informationsdarstellung & -verarbeitung Grundlagen 2. Betriebssysteme, Programmiersprachen * 3. Einführung in Excel/VBA VBA 4. Struktur von (VBA) Programmen * 5. Logische Elemente I * 6. Logische Elemente II * 7. Beispielprogramm (Dynamik starrer Körper) * 8. Datentypen, Eingabe/Ausgabe * 9. Datenfelder * 10. Benutzerdefinierte Datentypen * 11. Objektorientierte Programmiertechniken I * 12. Objektorientierte Programmiertechniken II * 13. Matlab I Matlab 14. Matlab II * 3

Inhalt der heutigen Vorlesung Objektorientierte Programmierung II: Benutzerdefinierte Klassen Definition einfacher Klassen Property Prozeduren Ereignisse bei Initialisierung/Beendigung eines Objektes Schnittstellen Beispiele: Klasse für Kreisobjekt Fahrzeugklasse 4

Erzeugen eigener Klassen VBA: Klassen werden in Klassenmodulen definiert Pro Klassenmodul wird eine Klasse beschrieben Modulname = Klassenname 5

Definition von Eigenschaften Öffentliche Eigenschaften (nicht empfohlen) Definition von Public Variablen innerhalb Klassenmodul Bsp.: [in Klassenmodul Auto ] Public Farbe As Integer Public Vel As Single [in Code-Modul] Sub Test() Dim Auto1 As New Auto Auto1.Farbe=5 Auto1.Vel=35.0 End Sub Analog zu benutzerdefinierten Datentypen 6

Definition von Methoden Öffentliche Methoden Definition von Public Prozeduren innerhalb Klassenmodul Bsp.: [in Klassenmodul Auto ] Public Sub Beschleunigen(dv as Single) Vel = Vel + dv End Sub [in Code-Modul] Sub Test() Dim Auto1 As New Auto Auto1.Beschleunigen 5.0 End Sub 7

Bsp.: Definition einfacher Klassen (Quelltext: VBA) 8

Datenkapselung Öffentliche Eigenschaften sind unsicher Verwendung von privaten Variablen Unsichtbar ausserhalb des Objektes Bsp.: Private pradius As Single (in Klassenmodul) Zugriff auf Eigenschaften durch Property-Prozeduren Spezielle Prozeduren zum Abfragen und Ändern von privaten Eigenschaften Inhalt der Prozedur: beliebiger Programmtext 9

Property Prozeduren Zugriff auf Eigenschaften durch Property Prozeduren Bsp.: [in Klassenmodul Kreis ] Private pradius As Single Public Property Let Radius(Value as Single) pradius = Value End Property Aufruf wie normale Wertzuweisung: [in Code-Modul] Dim circ1 As New Kreis circ1.radius = 3.5 Direkter Zugriff auf Eigenschaft pradius nicht möglich Nach außen nur Eigenschaft Radius sichtbar 10

Property Prozeduren (2) Property Prozedur als Filter für Objektdaten Bsp.: [in Klassenmodul Kreis ] Private pradius As Single Public Property Let Radius(Value as Single) If Value >= 0 Then pradius = Value Else `Fehlerbehandlung (negativer Radius) Endif End Property Fehlerhafte Zuweisungen können durch Property Prozeduren verhindert werden 11

Property Let/Get Prozeduren Property Let/Get Prozeduren treten in Paaren auf Syntax: Property Let name([arglist,]value As type) End Property Property Get name [(arglist)] As type End Property Property Let -> Zuweisen eines Wertes (Set für Objekte) Property Get -> Abfrage eines Wertes Schreibgeschützte Eigenschaften: Let auslassen 12

Bsp.: Property Let/Get Prozeduren (Quelltext: VBA) 13

Get: Berechnete Eigenschaft Property Get Prozedur: Zugriff auf berechnete Werte Im vorigen Beispiel wurde mit Get auf eine verborgene Eigenschaft zurückgegriffen Statt dessen können innerhalb von Eigenschaftsprozeduren Werte durch Berechnungen ermittelt werden Bsp.: eine Eigenschaft Fläche eines Kreisobjektes benötigt keine spezielle verborgene Variable die Information kann aus dem Radius berechnet werden 14

Bsp.: Berechnete Eigenschaft (Quelltext: VBA) 15

Objekte & Ereignisse Initialize Ereignis: wird durch Erzeugung eines Objektes ausgelöst Programmtext kann mit diesem Ereignis verbunden werden (z.b. setzen von Standardwerten) Syntax: [in Klassenmodul] Private Sub Class_Initialize() `Anweisungen werden bei Initialisierung `ausgeführt End Sub Analog für Terminate (Beendigung eines Objektes) Ähnlich C++ Constructor, Destructor 16

Bsp.: Initialize-Event (Quelltext: VBA) 17

Klassen & Schnittstellen Verschiedene Klassen -- gemeinsame Schnittstelle Klassenmodule können als Schnittstelle fungieren: Enthalten lediglich leere Prozeduren Implementierung wird eigentlichen Klassen überlassen abstrakte Klassen Eigenschaft PublicNotCreatable setzen Eigentliche Klassen verwenden Anweisung Implements Schnittstellenname Sind verpflichtet die Prozeduren der Schnittstelle zu implementieren Ermöglicht Standardisierung von polymorphem Verhalten 18

Bsp.: Klassen & Schnittstellen (Quelltext: VBA) 19

Ausblick Thema der nächsten Vorlesung: MATLAB 20

Campuslizenzen KIT (LINK) 21

MATLAB im Softwareshop (LINK) 22