gfs:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
gfs:start [05.07.2011 00:35] – simeo | gfs:start [25.04.2013 12:52] (aktuell) – Stefan Gaum | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== | + | ====== |
- | 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). | + | |
- | {{:gfs:bsp.jpg|}} | + | |
- | + | ||
- | 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 $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===== | + | |
- | {{:htmlcss:work_64.png|}} | + | |
- | + | ||
- | - 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 | + | |
- | + | ||
- | ==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.1309826152.txt.gz · Zuletzt geändert: 05.07.2011 00:35 von simeo