gfs:start:oop
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
gfs:start:oop [25.04.2013 12:51] – angelegt Stefan Gaum | gfs:start:oop [25.04.2013 12:52] (aktuell) – gelöscht Stefan Gaum | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Objektorientierte Programmierung ====== | ||
- | Bei der Objektorientierten Programmierung(OOP) sollen Daten zusammengefasst um Programmierung mit größeren Datenmengen zu vereinfachen. | ||
- | OOP lohnt sich daher haupsächlich bei größeren Projekten. | ||
- | Im folgenden Kapitel wird die Funktionsweise von OOP mit PHP erklärt. | ||
- | Die Objektorientierte Programmierung besteht aus vier Grundelementen: | ||
- | |||
- | **Klasse, Objekt, Eigenschaft, | ||
- | |||
- | ===== Klassen, Objekte, Eigenschaften und Methoden ===== | ||
- | ==Klasse:== | ||
- | Eine Klasse beschreibt Eigenschaften und Methoden eines Objektes und wird daher benötigt um ein Objekt zu erstellen. | ||
- | ==Objekt:== | ||
- | Ein Objekt verfügt über Eigenschaften und Methoden. | ||
- | (Genauere Erklärung folgt noch.) | ||
- | ==Eigenschaft: | ||
- | Eigenschaften sind -wie der Name schon sagt- Eigenschaften von Objekten. Sie sind vergleichbar mit Variablen. | ||
- | ==Methode: | ||
- | Methoden sind eine Art Funktionen, die ein Objekt nutzen kann. | ||
- | ====Beispiel==== | ||
- | Das alles erscheint noch etwas abstrakt, es lässt sich aber einfach anhand eines Beispiels erläutern. | ||
- | |||
- | Nehmen wir zum Beispiel wortwörtlich eine Klasse als Klasse, eine Informatikklasse. | ||
- | Die Objekte wären dabei die Schüler mit ihren Eigenschaften und Methoden (=was die Schüler machen). | ||
- | {{: | ||
- | |||
- | In diesem Beispiel kann man das Geschlecht und die Haarfarbe der Schüler aus dem Kurs Inf1 bestimmen. Die Schüler können arbeiten und in Facebook gehen. | ||
- | Bei Olaf hat man bestimmt, dass er ein Mann ist und schwarze Haare hat. | ||
- | |||
- | ===In PHP=== | ||
- | In PHP sieht das alles folgendermaßen aus: | ||
- | |||
- | <code php> | ||
- | class Inf // | ||
- | { | ||
- | var $Geschlecht; | ||
- | var $Haarfarbe; | ||
- | function arbeiten($dauer) | ||
- | { | ||
- | } | ||
- | function Facebook() | ||
- | { | ||
- | } | ||
- | } | ||
- | </ | ||
- | |||
- | Erzeugen eines Objekts | ||
- | <code php> | ||
- | class Inf | ||
- | {...} | ||
- | $Olaf = new Inf; | ||
- | </ | ||
- | |||
- | Damit ist Olaf zwar ein Schüler des Informatikkurses, | ||
- | |||
- | <code php> | ||
- | class Inf | ||
- | {...} | ||
- | $Olaf = new Inf; | ||
- | $Olaf -> Geschlecht = " | ||
- | </ | ||
- | Glückwunsch Olaf, jetzt bist du ein Mann. | ||
- | |||
- | |||
- | Ein wichtiges Element im OOP ist das ' | ||
- | <code php> | ||
- | class Inf | ||
- | { | ||
- | var $Geschlecht; | ||
- | var $Haarfarbe; | ||
- | function haarfarbe($farbe) | ||
- | { | ||
- | $this -> Haarfarbe = $farbe; | ||
- | } | ||
- | } | ||
- | $Olaf = new Inf; | ||
- | $Olaf -> Geschlecht = " | ||
- | $Olaf -> haarfarbe(" | ||
- | </ | ||
- | |||
- | =====Übungen===== | ||
- | {{: | ||
- | |||
- | - Erstelle ein Programm, das die Seitenlängen eines Quaders abfragt und dieses Quader als Objekt einer Klasse erstellt | ||
- | - Erstelle Methoden, die Oberfläche und Volumen des Quaders berechnen und ausgeben | ||
- | |||
- | ==Zusatzaufgaben== | ||
- | * Erweitere dein Programm so, dass es auch regelmäßige quadratische Pyramiden als Objekte erstellen kann | ||
- | * Bei Interesse kannst du dich über **Vererbung**, |
gfs/start/oop.1366894294.txt.gz · Zuletzt geändert: 25.04.2013 12:51 von Stefan Gaum