Objektorientierte Programmierung

Slides:



Advertisements
Ähnliche Präsentationen
Blue J.
Advertisements

Objektorientierte Programmierung
Einführung in die Programmierung Zusammenfassung
Unter- und Oberklassen: Beispiel
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
Einführung Blue J.
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
Paul, Morten, Yannick Blue J. Entwicklungsumgebung versteht Java Programmcode versteht Java Programmcode Für die Entwicklung eigener Software.
Java: Objektorientierte Programmierung
Indirekte Adressierung
Das Java-Hamstermodell
DVG Klassen und Objekte
Einführung in die Programmierung Klassendefinition und Objekte
Wizards & Builders GmbH Einführung in die objektorientierte Programmierung Norbert Abb.
Delphi Eine objektorientierte Programmiersprache © Beushausen 2000.
Programmieren mit MS Small Basic
Delphi II - OOP IFB Fortbildung
INHALT INHALT Inhalt Delphi IDE ObjectPascal Hello World! Delphi IDE
Einführung in die Programmiersprache Java
Ham EST Das Schwein Schmatz.. Fressen Beginnen wir.... mit einer Geschichte:
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:
Wiederholte Programmausführung
Willkommen... Studentinnen und Studenten der Studiengänge Umweltnaturwissenschaften Erdwissenschaften Agrarwissenschaften zur.
1. Entwicklungsumgebung 2. Kontextmenü 3. Compile 4. Objekt 5. Attribut 6. Klasse 7. Deklaration 8. Intialisierung.
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
Datenbanken Datenstrukturen.
Informatik Objekte und Klassen 1. Objektorientiertes Modellieren und Programmieren 1.1 Objekte und Klassen.
Grundlagen von Objekt-Pascal Erstellt von J. Rudolf überarbeitet von H.Brehm.
Permanente Datenspeicherung
1. Entwicklungsumgebung 2. Kontextmenü 3. Compile 4. Objekt 5. Attribut 6. Klasse 7. Deklaration 8. Intialisierung.
Java Programmierung.
Objektorientierte Programmierung
Agenda für heute, 22. Juni, 2006 Direkte FilezugriffeDirekte Filezugriffe Datentypen: Mengen Individualisierbare Datentypen.
Willkommen... Studentinnen und Studenten der Studiengänge Umweltnaturwissenschaften Erdwissenschaften Agrarwissenschaften zur.
Agenda für heute, 18. Mai, 2006 Strukturierung von Programmen: ProzedurenStrukturierung von Programmen: Prozeduren Strukturierung von Programmen: Units.
Agenda für heute, 20. April, 2006 Wiederholte ProgrammausführungWiederholte Programmausführung Algorithmische Grundlagen Bedingungen zum Abbruch von Programmschleifen.
Willkommen... Studentinnen und Studenten der Studiengänge Umweltnaturwissenschaften Erdwissenschaften Agrarwissenschaften zur.
Agenda für heute, 12. Mai, 2005 ProzedurenProzeduren Funktionsprozeduren Prozedurparameter Lokale und globale Variablen Datentypen: Ordinaltypen.
Programmierparadigmen
Agenda für heute, 28. April, 2005 Strukturierte VariablenStrukturierte Variablen Arrays.
Agenda für heute, 2. Juni, 2005 Permanente DatenspeicherungPermanente Datenspeicherung Lesen und schreiben in Pascal Filetypen: Drei Kategorien Arbeiten.
Agenda für heute, 7. April, 2005 Bedingte ProgrammausführungBedingte Programmausführung Algorithmische Grundlagen Vergleichsoperatoren, Wahrheitswerte.
Erste Schritte in DELPHI
Programmierparadigmen
Code-Optimierung Philipp Bergener Seminar „Übersetzung künstlicher Sprachen“
Paul, Morten, Yannick Blue J. Entwicklungsumgebung  versteht Java Programmcode  Für die Entwicklung eigener Software  Durch die Programmierung.
Einführung Blue J. Inhaltsverzeichnis  Definition  Vokabeln.
Agenda für heute, 21. April, 2005 Interaktion mit Pascal-ProgrammenInteraktion mit Pascal-Programmen Dateneingabe Programmsteuerung Debugging Datentypen:
Java-Kurs Übung Besprechung der Hausaufgabe
Java-Kurs - 5. Übung Besprechung der Übungsaufgabe Klassen und Objekte
Paul, Morten, Yannick Blue J. Entwicklungsumgebung  versteht Java Programmcode  Für die Entwicklung eigener Software  Durch die Programmierung.
Objektorientierte (OO) Programmierung
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
Objektorientierte Programmierung §Klassen §Objekte §Attribute §Eigenschaften §Methoden §Datenkapselung §Ereignisse §Vererbung §Entwicklungszeit §Laufzeit.
Einführung in AspectJ ● Inhalt: 1)Überblick 2)Elemente des crosscuttings in AspectJ 3)„Hello World“ in AspectJ 4)Wie Aspekte in Java verwoben werden 5)Join.
© Tenbusch Oberstufenzentrum Informations- und Medizintechnik Objektorientierte Programmierung mit Java.
Wiederholte Programmausführung
Programmieren und Problemlösen
Objektorientiertes Modellieren und Programmieren mit Java
Units und Übung 7 Barbara Scheuner
Entwicklungsumgebung Lazarus
Programmierparadigmen
Strukturierte Variablen: Records
Datentypen: integer, char, string, boolean
Programmieren und Problemlösen
Datentypen: integer, char, string, boolean
Implementieren von Klassen
Objektorientierte Programmierung
Objektorientierte Programmierung
 Präsentation transkript:

Objektorientierte Programmierung Agenda für heute, 26. März, 2009 Objektorientierte Programmierung Imperatives vs. objektorientiertes Programmieren Delphi Lesen Sie den Begleittext Seite 79 – 85

Objektorientierte Programmierung Eines der drei wichtigsten Programmierparadigmen (Paradigma: Denkmuster) Imperative Programmierung Befehls- oder Anweisungsorientiert Deklarative Programmierung Funktionen, Fakten & logische Aussagen (Regeln) Objektorientierte Programmierung Objekte mit Eigenschaften und Operationen 2/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Imperative Programmierung Ein Befehl in der Eingabeaufforderung löst eine Folge von Anweisungen aus Befehlszeile Pascal-Anweisungsfolge Bildschirm Programmcode 3/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Objektorientierte Programmierung Konkretes oder imaginäres Objekt hat Eigenschaften kann auf Aktionen reagieren 4/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Objektorientierte Programmierung Grundidee: Objekte der realen oder imaginären Welt abbilden Objekte werden mit Daten und den darauf arbeitenden Prozeduren zu Einheiten zusammengefasst. Jedes Objekt kann Botschaften empfangen, Daten verarbeiten und Botschaften senden. Ein objektorientiertes Programm kann als eine Menge kooperierender Objekte betrachtet werden. Wir befassen uns mit konzeptionellen Aspekten der objektorientierten Programmierung um die technischen Grundlagen von Delphi zu verstehen. 5/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Objektorientierte Programmierung Voraussetzungen für die objektorientierte Programmierung Ereignisse Ein Programm prüft ständig ob gewisse Ereignisse stattgefunden haben und reagiert darauf mit Aktionen. Verwaltung von Objekten Durch einen Datentyp, in dem sowohl Eigenschaften der Speicherung als auch Prozeduren deklariert sind. 6/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Typische Objekte bei Windows-Anwendungen 7/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Typische Ereignisse bei Windows-Anwendungen Befehlsereignisse Starten von Programmen, Speichern von Dateien, usw. Eingabeereignisse Drücken einer Tastaturtaste, Bewegen der Maus, usw. Fensterereignisse Öffnen, Schliessen, eines Fensters, Grösse verändern, usw. 8/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Imperatives vs. objektorientiertes Programmieren Objektorientierte Programmierung Imperatives vs. objektorientiertes Programmieren Delphi

Imperatives vs. objektorientiertes Programmieren Imperativ: Wiederholte, sequentielle Verarbeitung. Objektorientiert: Ereignis-gesteuerte Verarbeitung Bei Mausklick dividiere Menü Auswahl Aktion Beispiel: zeilenweise Verarbeitung Beispiel: grafische Verarbeitung 9/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Gegenüberstellung Imperativ Objektorientiert Daten von Prozeduren getrennt Daten zur Manipulation an Unterprogramme übergeben Kopieren und anpassen von Prozeduren um ähnliche Probleme zu lösen Prozeduren aufrufen und Daten explizit verändern Im Vordergrund steht der Lösungsweg Objektorientiert Daten und Methoden vereinigt Objekte enthalten Daten, die reagieren können Objekte werden vererbt und angepasst um ähnliche Probleme zu lösen Objekte erhalten Botschaften auf die sie gezielt reagieren Im Vordergrund steht das Problem Andere, hier nicht behandelte Programmierparadigmen Funktionale Sprachen Logikorientierte Sprachen Regelorientierte Sprachen 10/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Delphi Objektorientierte Programmierung Imperatives vs. objektorientiertes Programmieren Delphi

Delphi Grundlagen Object-Pascal Erweiterung von Pascal durch Elemente der objektorientierten Programmierung: Klasse Bauplan für die Abbildung realer Objekte in Softwareobjekte Instanz Während der Laufzeit existente, nach dem Bauplan erstellte Objekte Objekt Instanz oder auch Klasse & Instanz Methode Überbegriff für Prozeduren und Funktionen Attribut Beschreiben den Zustand eines Objekts Eigenschaften Regeln Lese- und Schreibzugriffe auf Attribute 11/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Klassendefinition (Bsp.) Delphi Grundlagen Klassendefinition (Bsp.) type TAuto = class private FFarbe: string; FBaujahr: integer; procedure SetFarbe(Farbe: string); public property Farbe: string read FFarbe write SetFarbe; end; Kann überall dort stehen, wo auch Typ-Deklarationen stehen können Objektreferenz var MeinAuto: TAuto; 12/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Grafische Programmierumgebung Delphi Grundlagen Object-Pascal Grafische Programmierumgebung "Drag-and-drop"-Entwurf von Programmoberflächen "Visual Component Library" (VCL) Integrierte Entwicklungsumgebung (IDE) Verwaltung von Projekten, insb. Abhängigkeiten zwischen Units Regeln bez. Programmorganisation 13/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Sichtbare Objekte in Delphi 14/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Unsichtbare Objekte in Delphi Dateiöffnungs- Dialog Drucker- Dialog Timer HTTP-Transfer Speicherungs- Dialog FTP-Transfer 15/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Eigenschaften und Ereignisse in Delphi (Bsp.) 16/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich

Die Projektverwaltung in Delphi In Delphi wird ein Programm Projekt genannt. Ein Delphi-Projekt besteht aus mehreren Dateien von denen jede durch eine spezifische Erweiterung gekennzeichnet ist: .dpr Die Projektverwaltungs-Datei (wird von Delphi automatisch erzeugt und nachgeführt) .pas Quelltext-Datei (Objekt-Pascal-Code, in Units gegliedert) .dfm Binäre Datei für den Aufbau eines Formulars .res Datei mit vom Projekt beanspruchten Ressourcen .dof Projektoptionsdatei (Einstellungen für Compiler und Linker) .exe Ausführbares Programm Wichtiger Hinweis: Immer alle Dateien speichern!! 17/17 Programmieren und Problemlösen © Departement Informatik, ETH Zürich