Übersetzung objektorientierter Programmiersprachen als Buch
PORTO-
FREI

Übersetzung objektorientierter Programmiersprachen

Konzepte, abstrakte Maschinen und Praktikum 'Java-Compiler'. 'Springer-Lehrbuch'. Auflage 1998. Mit 29…
Buch (kartoniert)
Dieses Buch vermittelt sowohl Studierenden der Informatik als auch Softwareentwicklern fundierte Grundlagen und Vorgehensweisen zur Entwicklung von Compilern für objektorientierte Programmiersprachen. Anhand mehrerer Sprachen (Smalltalk-80, Java, C++ … weiterlesen
Buch

32,99 *

inkl. MwSt.
Portofrei
Sofort lieferbar
Übersetzung objektorientierter Programmiersprachen als Buch

Produktdetails

Titel: Übersetzung objektorientierter Programmiersprachen
Autor/en: Bernhard Bauer, Riitta Höllerer

ISBN: 3540642560
EAN: 9783540642565
Konzepte, abstrakte Maschinen und Praktikum 'Java-Compiler'.
'Springer-Lehrbuch'.
Auflage 1998.
Mit 29 Abbildungen.
Springer-Verlag GmbH

15. Oktober 1998 - kartoniert - XIV

Beschreibung

Dieses Buch vermittelt sowohl Studierenden der Informatik als auch Softwareentwicklern fundierte Grundlagen und Vorgehensweisen zur Entwicklung von Compilern für objektorientierte Programmiersprachen. Anhand mehrerer Sprachen (Smalltalk-80, Java, C++) werden die Konzepte objektorientierter Sprachen und ihrer Übersetzung dargestellt.
Die Themengebiete des Theorieteils sind: - objektorientierte Konzepte - Übersetzung objektorientierter Sprachen - abstrakte (virtuelle) Maschinen - Typinferenz und Typüberprüfung - Optimierungen - Speicherbereinigung (garbage collection). Im Praxisteil des Buches wird die Spezifikation eines Übersetzers für Java entwickelt. Diese Spezifikation kann als Eingabe für einen Übersetzergenerator verwendet werden, der daraus ein ablauffähiges C-Programm erzeugt.
Zahlreiche Illustrationen und Beispiele veranschaulichen die Lerninhalte. Durch das Praktikum im zweiten Teil mit Aufgaben und Lösungen (im WWW) kann der vermittelte Stoff am Beispiel eines Java-Compilers eingeübt werden. Das Buch entstand aus einer zweistündigen Vorlesung mit darauf aufbauendem Praktikum. Es ist auch zum Selbststudium geeignet.

Inhaltsverzeichnis

1: Theorie.- 1 Einleitung.- 1.1 Übersetzung von Programmiersprachen.- 1.2 Objektorientiertheit und objektorientierte Programmiersprachen.- 1.3 Reine und hybride objektorientierte Programmiersprachen.- 1.4 Die Programmiersprache Java.- 1.5 Überblick über die weiteren Kapitel.- 2 Objektorientierte Konzepte.- 2.1 Klassenbasierte objektorientierte Sprachen.- 2.1.1 Objekte und Klassen.- 2.1.2 Gleichheit und Kopieren von Objekten.- 2.1.3 Abstrakte Klassen und Interface-Klassen.- 2.1.4 Multi-Methoden.- 2.2 Vererbung.- 2.2.1 Einfachvererbung.- 2.2.2 Mehrfachvererbung.- 2.2.3 Dynamische Vererbung.- 2.3 Kapselung.- 2.4 Parametrisierung und generische Datentypen.- 2.5 Parametrisierung versus Vererbung.- 2.6 Polymorphismus.- 3 Übersetzung objektorientierter Konzepte und abstrakte Maschinen.- 3.1 Lose Übersetzung.- 3.1.1 Abstrakte Maschine AM.- 3.1.1.1 Laufzeitumgebung der abstrakten Maschine AM..- 3.1.1.2 Befehle der abstrakten Maschine AM.- 3.1.1.3 Adressierungsarten.- 3.1.2 Klassen und Einfachvererbung.- 3.1.3 Methodendeklarationen.- 3.1.4 Nachrichten und Methodenaufrufe.- 3.1.5 Objekte.- 3.1.6 Semiformale Beschreibung der Semantik der abstrakten Maschine.- 3.2 Smalltalk-80-Realisierung.- 3.2.1 Klassen und Einfachvererbung.- 3.2.2 Übersetzung von Methoden.- 3.2.3 Objekte.- 3.2.4 Objektverwaltung.- 3.2.5 Methodenaufruf.- 3.2.6 Die abstrakte Maschine für Smalltalk-80.- 3.3 Java-Realisierung.- 3.3.1 Klassen und einfache Vererbung.- 3.3.1.1 Einträge im Konstantenpool.- 3.3.1.2 Einträge für Instanzvariablen.- 3.3.1.3 Einträge für Methoden.- 3.3.1.4 Bemerkungen.- 3.3.2 Methodendeklarationen.- 3.3.3 Methodenaufruf und Rücksprung.- 3.3.4 Objekte.- 3.3.5 Die virtuelle Maschine von Java.- 3.4 C++-Realisierung.- 3.4.1 Methoden, Klassen und einfache Vererbung.- 3.4.2 Objekte.- 3.4.3 Methodenaufruf.- 3.4.4 Mehrfachvererbung.- 3.5 Parametrisierung.- 3.5.1 Kopierende Sicht.- 3.5.2 Echte generische Sicht.- 4 Typinferenz und Typüberprüfung.- 4.1 Typisierung und Binden.- 4.1.1 Typisierung.- 4.1.2 Binden und Methodensuche.- 4.1.3 Zusammenhang von Typisierung und Binden.- 4.1.4 Typisierungsprobleme.- 4.2 Typisierung mit Datenflußanalyse.- 4.2.1 Datenflußanalyse.- 4.2.2 Typisierung mit Datenflußanalyse.- 4.3 Typisierung mit Constraints.- 5 Optimierungen.- 5.1 Standardoptimierungen.- 5.1.1 Elimination redundanter Ausdrücke.- 5.1.2 Konstantenfaltung.- 5.1.3 Elimination toten Programmcodes.- 5.1.4 Kopien-Verbreitung.- 5.1.5 Schleifenoptimierungen.- 5.1.6 Reduktion des Operators und algebraische Umformungen.- 5.1.7 Kontrollflußoptimierungen.- 5.2 Objektorientierte Optimierungen.- 5.2.1 Intraprozedurale Klassenanalyse.- 5.2.2 Analyse der Klassenhierarchie.- 5.2.3 Effiziente Implementierung der Methodensuche.- zur Übersetzungszeit.- 5.2.4 Inkrementelle Programmentwicklung und separate Übersetzung.- 5.2.5 Klassentest.- 5.2.5.1 Einfach-Klassentest.- 5.2.5.2 Unterklassentest.- 5.2.5.3 Verwendung von Klassentests und Splitting.- 5.2.6 Funktionsexpansion.- 5.2.7 Wertbasierte Analyse und Instanzvariablen-Optimierung..- 5.2.8 Profile-Informationen.- 5.2.9 Spezialisierte Varianten: Customization.- 5.2.10 Lookup- und Inline-Caches.- 6 Speicherbereinigung.- 6.1 Nicht-inkrementelle Techniken.- 6.1.1 Mark-Scan-Speicherbereinigung.- 6.1.2 Kopierende Speicherbereinigung.- 6.1.2.1 Kopierende Speicherbereinigung mit zwei Regionen.- 6.1.2.2 Kopierende Speicherbereinigung mit Generationen.- 6.2 Inkrementelle Techniken: Referenzzählende Algorithmen.- 7 Ausblick.- 7.1 Compiler-Entwicklung.- 7.1.1 Bootstrapping und Cross-Compiler.- 7.1.2 Compiler-Generatoren.- 7.2 Varianten von Compilern.- 7.2.1 Dynamische Recompilierung.- 7.2.2 Deutsch-Schiffman-Technik.- 7.2.3 Just-In-Time Compiler.- 7.2.4 Compiler und Programmkorrektheit.- 7.3 Hardware-Unterstützung.- 2: Praxis.- 8 Compilerbaupraktikum.- 9 Java - Die Programmiersprache.- 9.1 Java-Merkmale.- 9.2 Objekte in Java.- 9.3 Ausdrücke und Statements.- 9.4 Einschränkungen.- 9.5 Aufgaben.- 10 Das MAX-System.- 10.1 E

Mehr aus dieser Reihe

zurück
Klinische Psychologie und Psychotherapie für Bachelor
Buch (kartoniert)
Mathematische Formelsammlung
Buch (kartoniert)
von Lothar Papula
Roloff/Matek Maschinenelemente Formelsammlung
Buch (kartoniert)
von Herbert Wittel, …
Biologie für Mediziner
Buch (kartoniert)
von Werner Buselmaie…
Experimentalphysik 1
Buch (kartoniert)
von Wolfgang Demtröd…
vor
Servicehotline
089 - 70 80 99 47

Mo. - Fr. 8.00 - 20.00 Uhr
Sa. 10.00 - 20.00 Uhr
Filialhotline
089 - 30 75 75 75

Mo. - Sa. 9.00 - 20.00 Uhr
Bleiben Sie in Kontakt:
Sicher & bequem bezahlen:
akzeptierte Zahlungsarten: Überweisung, offene Rechnung,
Visa, Master Card, American Express, Paypal
Zustellung durch:
¹ Mängelexemplare sind Bücher mit leichten Beschädigungen, die das Lesen aber nicht einschränken. Mängelexemplare sind durch einen Stempel als solche ge-
kennzeichnet. Die frühere Buchpreisbindung ist aufgehoben.
* Alle Preise verstehen sich inkl. der gesetzlichen MwSt. Informationen über den Versand und anfallende Versandkosten finden Sie hier.
** Deutschsprachige eBooks und Bücher dürfen aufgrund der in Deutschland geltenden Buchpreisbindung und/oder Vorgaben von Verlagen nicht rabattiert werden. Soweit von uns deutschsprachige eBooks und Bücher günstiger angezeigt werden, wurde bei diesen kürzlich von den Verlagen der Preis gesenkt oder die Buchpreisbindung wurde für diese Titel inzwischen aufgehoben. Angaben zu Preisnachlässen beziehen sich auf den dargestellten Vergleichspreis.