: Marco Skulschus, Marcus Wiederstein
: PHP – OOP, Design Patterns und UML
: Comelio GmbH
: 9783939701668
: 1
: CHF 26.60
:
: Programmiersprachen
: German
: 435
: DRM
: PC/MAC/eReader/Tablet
: PDF
PHP 5 bietet dem Programmierer die Möglichkeit, PHP objektorientiert und unter Einsatz von gängigen objektorientierten Entwurfstechniken zu verwenden. Dieses Buch will Anfängern in der OOP, die aber gleichzeitig fortgeschrittene PHP-Programmierer sind, die OOP-Prinzipien anhand der PHP-Syntax erläutern. Nach einer Darstellung der neuen PHP-Techniken folgt ein umfangreicher Teil, der in das Wesen und den Nutzen von Entwurfsmustern einführt und eine Reihe von Mustern aus Standard- und Enterprisekatalog für die Entwicklung von erweiterbaren und wieder verwendbaren Architekturen in PHP vorstellt. Die Enterprise-Muster werden unter dem Blickwinkel der Mehrschichtigkeit eingeführt. Zur besseren Planung, Kontrolle und Dokumentation lernen PHP-Programmierer, eine Reihe von UML-Diagrammen sowie die Use Case-Technik zu verwenden
Inhaltsverzeichnis6
Vorwort11
1. Einfache Klassen18
1. 1. Aufbau einer Klasse19
1. 1. 1. Eigenschaften und Methoden19
1. 1. 2. Konstruktoren und Destruktoren28
1. 1. 3. Zugriffsschutz und Zugriffsmethoden32
1. 2. Erweiterte Klassenstrukturen40
1. 2. 1. Statische Methoden und Eigenschaften40
1. 2. 2. Konstanten46
1. 3. Klassenverbünde50
1. 3. 1. Klassen kombinieren50
1. 3. 2. Referenzen verstehen und beherrschen57
1. 3. 3. Algorithmen auslagern61
2. Erweiterte Klassen67
2. 1. Vererbung67
2. 1. 1. Einfache Vererbung68
2. 1. 2. Programmierung auf eine Schnittstelle hin75
2. 1. 3. Dynamische Bindung und Polymorphismus89
2. 2. Abstraktion93
2. 2. 1. Vererbungshierarchie und Prinzip94
2. 2. 2. Klienten100
2. 2. 3. Beziehungen zwischen Klassen105
2. 3. Schnittstellen109
2. 3. 1. Einfache Verwendung109
2. 3. 2. Mehrfache Implementierung117
3. Das UML-Klassendiagramm120
3. 1. Grundlagen120
3. 1. 1. Definition120
3. 1. 2. Einsatz der UML in PHP124
3. 1. 3. UML als Modellierungswerkzeug127
3. 2. Einfache Klassen und Verbünde127
3. 2. 1. Einfaches Klassendiagramm127
3. 2. 2. Statische Mitglieder und Konstanten129
3. 2. 3. Beziehungen zwischen Klassen130
3. 3. Klassenhierarchien133
3. 3. 1. Vererbung133
3. 3. 2. Abstraktion137
3. 3. 3. Schnittstellen139
3. 4. Beziehungen zwischen Klassen140
3. 4. 1. Assoziation140
3. 4. 2. Aggregation141
3. 4. 3. Komposition142
4. PHP-Spezialitäten144
4. 1. Magische Methoden144
4. 1. 1. Überladung von Eigenschaften145
4. 1. 2. Überladung von Methoden148
4. 1. 3. Zustand überprüfen151
4. 1. 4. Zeichenkette-Ausgabe155
4. 1. 5. Serialisierung157
4. 1. 6. Klassen exportieren162
4. 1. 7. Klassen automatisch laden163
4. 2. Ausnahmen164
4. 2. 1. Standard-Ausnahmen166
4. 2. 2. Abgeleitete Ausnahmen170
4. 3. Reflection173
4. 3. 1. Einfache Reflection174
4. 3. 2. PHP5-Reflection184
4. 3. 3. Dynamische Instanziierung193
5. Entwurfsmuster des Standardkatalogs (GoF)198
5. 1. Erzeugung198
5. 1. 1. Singleton201
5. 1. 2. Einfache Fabrik und Fabrikmethode205
5. 2. Struktur212
5. 2. 1. Dekorierer212
5. 2. 2. Kompositum218
5. 2. 3. Adapter223
5. 2. 4. Fassade228
5. 3. Verhalten233
5. 3. 1. Befehl233
5. 3. 2. Schablonenmethode242
5. 3. 3. Besucher247
5. 3. 4. Strategie250
6. Mehrschichtigkeit254
6. 1. Architekturvarianten254
6. 1. 1. Einführung255
6. 1. 2. Zwei Schichten261
6. 1. 3. Drei Schichten262
6. 1. 4. Vier und mehr Schichten263
6. 1. 5. Übersicht266
6. 2. Umsetzung in PHP267
6. 2. 1. Prozedurale Lösung mit Arrays269
6. 2. 2. Objektorientierte Variante279
6. 2. 3. XML291
6. 2. 4. WebServices303
7. Enterprise Application Muster320
7. 1. Basis-Muster320
7. 1. 1. Registry321
7. 1. 2. Weitere Basis-Muster324
7. 2. Datenzugriffsschicht325
7. 2. 1. Active Record325
7. 2. 2. Data Mapper333
7. 2. 3. Row Data Gateway340
7. 2. 4. Table Data Gateway347
7. 2. 5. Beziehungen352
7. 2. 6. Sonstige Muster357
7. 3. Domänenlogik361
7. 3. 1. Allgemeine Überlegungen361
7. 3. 2. Transaction Script364
7. 3. 3. Domain Model367
7. 3. 4. Table Module371
7. 3. 5. Service Layer373
7. 4. Präsentationsschicht375
7. 4. 1. Page Controller375
7. 4. 2. Front Controller377
7. 4. 3. Transform View378
7. 4. 4. Two Step View381
8. Planung mit Use Cases384
8. 1. Darstellung der Use Case-Technik384
8. 1. 1. Einführung385
8. 1. 2. Basismethodik386
8. 1. 3. Format der Anwendungsfälle396
8. 2. Anwendungsfälle in Text und UML397
8. 2. 1. Anwendungserzählungen398
8. 2. 2. Tabellarische Anwendungsfälle400
8. 2. 3. Use Case-Diagramm der UML403
8. 2. 4. Aktivitätsdiagramm der UML411
Index424