Willkommen

(Anmelden)

Mein Konto

Merkliste

Hilfe & Kontakt Häufige Servicefragen: Wie lange dauert die Lieferung Was kostet der Versand? Wie kann ich bezahlen? Wie gebe ich meine Ware zurück? Wie löse ich einen Gutschein ein? Weitere Fragen & Antworten im Hilfe-Center Kontaktformular Kundenhotline 0 18 05 / 30 91 80 (0,14 EUR/Min. aus dem Festnetz; max. 0,42 Euro/ Min. aus Mobilfunknetzen).
Sie erreichen uns:
Montags bis Samstags
von 8 bis 20 Uhr.
Haben Sie Fragen? Eva hilft Ihnen

Detail-Suche

Objektorientierte Programmierung. Galileo Computing

von Bernhard Lahres, Gregor Rayman (Buch)

  • ISBN:3-8362-1401-6
  • EAN:9783836214018
  • Veröffentlichungsdatum:März 2009
  • Gewicht in g:1215
  • Auflage:2. aktualisierte Auflage
  • Reihe:Galileo Computing
  • Seiten:656

Inhaltsverzeichnis:

1 ... Einleitung ... 13
... 1.1 ... Was ist Objektorientierung? ... 13
... 1.2 ... Hallo liebe Zielgruppe ... 14
... 1.3 ... Was bietet dieses Buch (und was nicht)? ... 15
... 1.4 ... Warum überhaupt Objektorientierung? ... 22


2 ... Die Basis der Objektorientierung ... 27
... 2.1 ... Die strukturierte Programmierung als Vorläufer der Objektorientierung ... 28
... 2.2 ... Die Kapselung von Daten ... 31
... 2.3 ... Polymorphie ... 32
... 2.4 ... Die Vererbung ... 34


3 ... Die Prinzipien des objektorientierten Entwurfs ... 39
... 3.1 ... Prinzip 1: Prinzip einer einzigen Verantwortung ... 40
... 3.2 ... Prinzip 2: Trennung der Anliegen ... 45
... 3.3 ... Prinzip 3: Wiederholungen vermeiden ... 47
... 3.4 ... Prinzip 4: Offen für Erweiterung, geschlossen für Änderung ... 50
... 3.5 ... Prinzip 5: Trennung der Schnittstelle von der Implementierung ... 53
... 3.6 ... Prinzip 6: Umkehr der Abhängigkeiten ... 56
... 3.7 ... Prinzip 7: Mach es testbar ... 62


4 ... Die Struktur objektorientierter Software ... 65
... 4.1 ... Die Basis von allem: das Objekt ... 65
... 4.2 ... Klassen: Objekte haben Gemeinsamkeiten ... 84
... 4.3 ... Beziehungen zwischen Objekten ... 117
... 4.4 ... Klassen von Werten und Klassen von Objekten ... 133


5 ... Vererbung und Polymorphie ... 155
... 5.1 ... Die Vererbung der Spezifikation ... 155
... 5.2 ... Polymorphie und ihre Anwendungen ... 193
... 5.3 ... Die Vererbung der Implementierung ... 239
... 5.4 ... Mehrfachvererbung ... 261
... 5.5 ... Statische und dynamische Klassifizierung ... 289


6 ... Persistenz ... 299
... 6.1 ... Serialisierung von Objekten ... 299
... 6.2 ... Speicherung in Datenbanken ... 300
... 6.3 ... Abbildung auf relationale Datenbanken ... 307
... 6.4 ... Normalisierung und Denormalisierung ... 320


7 ... Abläufe in einem objektorientierten System ... 337
... 7.1 ... Erzeugung von Objekten mit Konstruktoren und Prototypen ... 338
... 7.2 ... Fabriken als Abstraktionsebene für die Objekterzeugung ... 349
... 7.3 ... Objekte löschen ... 397
... 7.4 ... Objekte in Aktion und in Interaktion ... 412
... 7.5 ... Kontrakte: Objekte als Vertragspartner ... 455
... 7.6 ... Exceptions: Wenn der Kontrakt nicht eingehalten werden kann ... 471


8 ... Module und Architektur ... 503
... 8.1 ... Module als konfigurierbare und änderbare Komponenten ... 503
... 8.2 ... Die Präsentationsschicht: Model, View, Controller (MVC) ... 511


9 ... Aspekte und Objektorientierung ... 527
... 9.1 ... Trennung der Anliegen ... 527
... 9.2 ... Aspektorientiertes Programmieren ... 539
... 9.3 ... Anwendungen der Aspektorientierung ... 550
... 9.4 ... Annotations ... 562


10 ... Objektorientierung am Beispiel: Eine Web-Applikation mit PHP 5 und Ajax ... 573
... 10.1 ... OOP in PHP ... 574
... 10.2 ... Das entwickelte Framework -- Trennung der Anliegen -- Model View Controller ... 578
... 10.3 ... Ein Dienst in PHP ... 580
... 10.4 ... Ein Klient in Ajax ... 586
... 10.5 ... Ein Container für Dienste in PHP ... 598
... 10.6 ... Ein Klient ohne JavaScript ... 615
... 10.7 ... Was noch übrigbleibt ... 619


... Anhang ... 621


A ... Verwendete Programmiersprachen ... 623
... A.1 ... C++ ... 623
... A.2 ... Java ... 626
... A.3 ... C# ... 629
... A.4 ... JavaScript ... 629
... A.5 ... CLOS ... 632
... A.6 ... Python ... 635
... A.7 ... Ruby ... 637


B ... Literaturverzeichnis ... 641
... B.1 ... Allgemeine Bücher zur Softwareentwicklung ... 641
... B.2 ... Bücher über die UML und die verwendeten Programmiersprachen ... 643

Kurzbeschreibung:

Kaum eine Software, die nicht mehr objektorientiert entworfen und entwickelt wird!
In diesem Buch finden Sie alles, was Sie brauchen, um sich in die objektorientierte Programmierung einzuarbeiten. Die beiden Autoren erläutern alle Prinzipien und ihre Umsetzung anschaulich und verständlich anhand einer Vielzahl typischer Beispiele. Als Sprachen werden C++, Java, Ruby, C# und PHP eingesetzt. Anhand eines größeren Projekts bekommen Sie zudem einmal von Anfang bis Ende gezeigt, wie Sie OOP konsequent realisieren können. Des Weiteren bietet das Buch eine Einführung in die aspektorientierte Programmierung.
Aus dem Inhalt - Prinzipien des objektorientierten Entwurfs
- Basis der Objektorientierung
- Kapselung von Daten
- Polymorphie
- Struktur objektorientierter Software
- Klassen und Vererbung
- Konkrete und abstrakte Datentypen
- Beziehungen zwischen Objekten
- Klassen von Werten und Objekten
- Vererbungsbeziehungen
- Mehrfachvererbung
- Statische und dynamische Klassifizierung
- Persistenz
- Erzeugung von Objekten
- Zerstörung von Objekten
- Objekte in Aktion und in Interaktion
- Objekte als Vertragspartner
- Module als konfigurierbare und änderbare Komponenten
- MVC
- Aspekte und Objektorientierung
- Beispielprojekt

Autorenportrait:

Gregor Raýman, Diplom-Mathematiker, arbeitet
als Software-Berater und -Entwickler in den Branchen
Industrie, Automotive, Dienstleistungen und
Telekommunikation. Er ist technischer Architekt
bei Oracle und arbeitet im Kompetenzzentrum
für Mittel- und Osteuropa (ICCC).

Rezension:

Breiter angelegt geht es kaum. Von den wesentlichen Eigenschaften der OOP bis hin zur Aspektorientierung reicht das Themenspektrum, das ausreichend Lernstoff bieten sollte. (iX 2009)

49,90* EUR