Übersetzung objektorientierter Programmiersprachen
|
|
- Roland Flater
- vor 8 Jahren
- Abrufe
Transkript
1 Bernhard Bauer Riitta Höllerer Übersetzung objektorientierter Programmiersprachen Konzepte, abstrakte Maschinen und Praktikum Java-Compiler" Mit 29 Abbildungen Springer
2 Teil 1: Theorie 1 Einleitung 3 l. l Übersetzung von Programmiersprachen Objektorientiertheit und objektorientierte Programmiersprachen Reine und hybride objektorientierte Programmiersprachen Die Programmiersprache Java Überblick über die weiteren Kapitel 11 2 Objektorientierte Konzepte Klassenbasierte objektorientierte Sprachen Objekte und Klassen Gleichheit und Kopieren von Objekten Abstrakte Klassen und Interface-Klassen Multi-Methoden Vererbung Einfachvererbung Mehrfachvererbung Dynamische Vererbung Kapselung Parametrisierung und generische Datentypen Parametrisierung versus Vererbung Polymorphismus 53 3 Übersetzung objektorientierter Konzepte und abstrakte Maschinen Lose Übersetzung Abstrakte Maschine AM Laufzeitumgebung der abstrakten Maschine AM Befehle der abstrakten Maschine AM Adressierungsarten 63
3 3.1.2 Klassen und Einfachvererbung Methodendeklarationen Nachrichten und Methodenaufrufe Objekte Semiformale Beschreibung der Semantik der abstrakten Maschine Smalltalk-80-Realisierung Klassen und Einfachvererbung Übersetzung von Methoden Objekte Objektverwaltung Methodenaufruf Die abstrakte Maschine für Smalltalk Java-Realisierung Klassen und einfache Vererbung Einträge im Konstantenpool Einträge für Instanzvariablen Einträge für Methoden Bemerkungen Methodendeklarationen Methodenaufruf und Rücksprung Objekte Die virtuelle Maschine von Java C++-Realisierung Methoden, Klassen und einfache Vererbung Objekte Methodenaufruf Mehrfachvererbung Parametrisierung Kopierende Sicht Echte generische Sicht 121 Typinferenz und Typüberprüfung Typisierung und Binden Typisierung Binden und Methodensuche Zusammenhang von Typisierung und Binden Typisierungsprobleme Typisierung mit Datenflußanalyse Datenflußanalyse Typisierung mit Datenflußanalyse Typisierung mit Constraints 137
4 XI 5 Optimierungen Standardoptimierungen Elimination redundanter Ausdrücke Konstantenfaltung Elimination toten Programmcodes Kopien-Verbreitung Schleifenoptimierungen Reduktion des Operators und algebraische Umformungen Kontrollflußoptimierungen Objektorientierte Optimierungen Intraprozedurale Klassenanalyse Analyse der Klassenhierarchie Effiziente Implementierung der Methodensuche zur Übersetzungszeit Inkrementelle Programmentwicklung und separate Übersetzung Klassentest Einfach-Klassentest Unterklassentest Verwendung von Klassentests und Splitting Funktionsexpansion Wertbasierte Analyse und Instanzvariablen-Optimierung Profile-Informationen Spezialisierte Varianten: Customization Lookup- und Inline-Caches Speicherbereinigung Nicht-inkrementelle Techniken Mark-Scan-Speicherbereinigung Kopierende Speicherbereinigung Kopierende Speicherbereinigung mit zwei Regionen Kopierende Speicherbereinigung mit Generationen Inkrementelle Techniken: Referenzzählende Algorithmen Ausblick Compiler-Entwicklung Bootstrapping und Cross-Compiler Compiler-Generatoren 176
5 XII Inhaltsverzeichnis 7.2 Varianten von Compilern Dynamische Recompilierung Deutsch-Schiffman-Technik Just-In-Time Compiler Compiler und Programmkorrektheit Hardware-Unterstützung 179 Teil 2: Praxis 8 Compilerbaupraktikum Java - Die Programmiersprache Java-Merkmale Objekte in Java Ausdrücke und Statements Einschränkungen Aufgaben Das MAX-System Eigenschaften MAX-Spezifikationen Ordnungssortierte Terme Occurrence- bzw. Knotensorten Muster Sondersymbole in den Mustern Mustersyntax Attribute Funktionen Kontextbedingungen Generierung eines Java-Übersetzers mit dem MAX-System Aufgaben Befehle der virtuellen Java-Maschine Konstanten auf den Keller laden Lokale Variablen auf den Keller laden Speichern in eine lokale Variable Manipulation des Kellers Behandlung von Objekten Arithmetische Befehle Sprungbefehle Methodenaufruf und Rücksprung 207
6 XIII 11.9 Überprüfung der Klassenzugehörigkeit Erzeugung des JVM-Codes Übersetzerspezifikation Bindungsanalyse (Identifikation) Ziele der Bindungsanalyse Bindungsanalyse für Java Aufgaben Typdeklarationen und Typisierung Typdeklarationen Typisierung von Ausdrücken Aufgaben MAX-Spezifikation der Klassendatei Aufgaben Ausdrücke und ihre Codeerzeugung Wert eines Ausdrucks Codeerzeugung für Ausdrücke Statements und ihre Codeerzeugung Statements Code für Statements Ausdrücke als Statements Aufgaben Methodendeklaration Abstrakte Syntax Methodeneinträge in die Klassendatei Attributierung für Method -Knoten Kellerrahmen von Java-Methodeninkarnationen Methodenaufruf Abstrakte Syntax Methodenreferenzeinträge im Konstantenpool JVM-Code Attributierung für MethodCall -Knoten Aufgaben Vererbung Vererbung in Java Implementierung von Vererbung Berücksichtigung der Vererbungshierarchie Implementierung von super Aufgaben Ausgabeschnittstelle Java-Klassen für print-ausgaben Code für print-ausgaben Aufgaben 250
7 XIV Inhaltsverzeichnis Anhang A: Klassenfile und Bytecode 253 Anhang B: Java-Syntax 257 Literatur 273 Sachverzeichnis 277
Springer-Verlag Berlin Heidelberg GmbH
Springer-Lehrbuch Springer-Verlag Berlin Heidelberg GmbH Bernhard Bauer Riitta HöHerer Übersetzung objektorientierter Programmiersprachen Konzepte, abstrakte Maschinen und Praktikum "Java-Compiler" Mit
MehrPrinzipien Objektorientierter Programmierung
Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................
MehrKapitel 12: Übersetzung objektorienter Konzepte
Kapitel 12: Übersetzung objektorienter Konzepte Themen Klassendarstellung und Methodenaufruf Typüberprüfung Klassenhierarchieanalyse Escape Analyse 12.1 Klassendarstellung bei Einfachvererbung class Punkt
MehrOO Softwareentwicklung
OO Softwareentwicklung Objektorientierung Prof. Dr. Bernhard Schiefer 1 OO als Ansatz zur Verbesserung der Software-Qualität Modellierung der Welt als selbständig agierende Objekte. Gemeinsame Beschreibung
MehrObjektorientiertes Programmieren
JL Ute Claussen Objektorientiertes Programmieren Mit Beispielen und Übungen in C++ Zweite, überarbeitete und erweiterte Auflage Mit 24 Abbildungen Springer Inhaltsverzeichnis 1 Einleitung 1 1.1 Was ist
MehrEinführung in Generatives Programmieren. Bastian Molkenthin
Einführung in Generatives Programmieren Bastian Molkenthin Motivation Industrielle Entwicklung *!!*,(% % - #$% #!" + '( & )!* Softwareentwicklung Rückblick auf Objektorientierung Objektorientierte Softwareentwicklung
MehrSQL objektorientiert
Dušan Petković SQL objektorientiert An imprint of Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City Madrid Amsterdam Vorwort 11 Teil 1: Einführung 15
MehrInhaltsverzeichnis. Vorwort...XIII. Aufbau des Buches...
Inhaltsverzeichnis Vorwort...XIII Aufbau des Buches............................................... XV 1 Von der Idee zur Software..................................... 1 1.1 Beispielanwendung... 1 1.2 Schritte
MehrInhaltsverzeichnis. Was ist Informatik? 5. Programmierung 13. Einleitung. 1 Informatik 7 1.1 Was ist Informatik? 7 1.2 Teilgebiete der Informatik 8
Einleitung Was ist Informatik? 5 1 Informatik 7 1.1 Was ist Informatik? 7 1.2 Teilgebiete der Informatik 8 Programmierung 13 2 Vom Problem über den Algorithmus zum Programm 15 2.1 Vorgehensweise bei der
MehrManagementprozesse und Performance
Klaus Daniel Managementprozesse und Performance Ein Konzept zur reifegradbezogenen Verbesserung des Managementhandelns Mit einem Geleitwort von Univ.-Professor Dr. Dr. habil. Wolfgang Becker GABLER EDITION
MehrInformatik für Ingenieure
Informatik für Ingenieure Eine Einführung Von Prof. Dr. rer. nat. Wolfgang Merzenich Universität-Gesamthochschule Siegen und Prof. Dr.-Ing. Hans Christoph Zeidler Universität der Bundeswehr Hamburg B.
Mehr3. Konzepte der objektorientierten Programmierung
3. Konzepte der objektorientierten Programmierung 3.1 Basiskonzepte 3.2 Generalisierung / Spezialisierung 3.3 Aggregation 3.4 Assoziation 3.5 Nachrichten 3.6 Polymorphismus 3. Konzepte der Objektorientierung
MehrUnternehmensmodellierung
Josef L. Staud Unternehmensmodellierung Objektorientierte Theorie und Praxis mit UML 2.0 4ü Springer Inhaltsverzeichnis EINLEITUNG 1 1.1 Unternehmensmodellierung 1 1.2 Objektorientierung als solche 6 1.3
MehrPraktikum Compilerbau
Implementation eines s 20. April 2005 Vorlesungen Vorlesungen, die nützliche für das Praktikum liefern: Automaten, Formale Sprachen und Berechenbarkeit bau Abstrakte Maschinen Programm-Optimierung Fertigkeiten
MehrVerhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...
PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:
MehrLINQ to SQL. Proseminar Objektorientiertes Programmieren mit.net und C# Christoph Knüttel. Institut für Informatik Software & Systems Engineering
LINQ to SQL Proseminar Objektorientiertes Programmieren mit.net und C# Christoph Knüttel Institut für Informatik Software & Systems Engineering Agenda 1. LINQ allgemein Vorteile Bausteine und Varianten
MehrJAVA als erste Programmiersprache Semesterkurs
JAVA als erste Programmiersprache Semesterkurs 0 - Einstieg WS 2012 / 2013 Prof. Dr. Bodo Kraft Prof. Dr. Bodo Kraft FH Aachen University of Applied Sciences Fachbereich Medizintechnik und Technomathematik
MehrFunktionale Programmierung (in Clojure)
Funktionale Programmierung (in Clojure) Einführung Burkhardt Renz Fachbereich MNI Technische Hochschule Mittelhessen Wintersemester 2014/15 Übersicht Paradigmen von Programmiersprachen Paradigmen von Programmiersprachen
MehrWillkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java
Willkommen zur Vorlesung Objektorientierte Programmierung Vertiefung - Java Zum Dozenten Mein Name: Andreas Berndt Diplom-Informatiker (TU Darmstadt) Derzeit Software-Entwickler für Web- Applikationen
MehrDie Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter
Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,
MehrC++-Entwicklung mit Linux
C++-Entwicklung mit Linux Eine Einführung in die Sprache und die wichtigsten Werkzeuge von GCC und XEmacs bis Eclipse Thomas Wieland [Druckvorlage vom 10. August 2004] xiii Inhaltsverzeichnis 1 Programmieren
MehrObjektorientierte Systementwicklung
Objektorientierte Systementwicklung Modellierung und Realisierung komplexer Systeme Herausgeber: Gerhard Held Autoren: Rolf Eisenhauer Thomas Haensse Rudolf Haggenmüller Gerhard Held Jürgen Kazmeier Peter
MehrVorkurs Informatik WiSe 15/16
Java 1 Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 12.10.2015 Technische Universität Braunschweig, IPS Überblick Organisatorisches Arbeitsablauf Hello! 12.10.2015 Dr. Werner Struckmann / Stephan
Mehr1 ALLGEMEINES ZU DYNAMICS NAV... 9. 1.1 Geschichte zu Dynamics NAV... 9. 1.2 Datenbank... 13. 1.3 Wo bekommt man Hilfe zu Dynamics NAV?...
Inhaltsverzeichnis 1 ALLGEMEINES ZU DYNAMICS NAV... 9 1.1 Geschichte zu Dynamics NAV... 9 1.2 Datenbank... 13 1.3 Wo bekommt man Hilfe zu Dynamics NAV?... 13 1.4 Was ist neu an Dynamics NAV 2013?... 14
MehrGradle. Ein kompakter Einstieg in das moderne Build-Management-System ---> Mit einem Geleitwort von Hans Dockter, Erfinder von Gradle
Gradle Ein kompakter Einstieg in das moderne Build-Management-System ---> Mit einem Geleitwort von Hans Dockter, Erfinder von Gradle von Joachim Baumann 1. Auflage Gradle Baumann schnell und portofrei
MehrSchulcurriculum Informationstechnische Grundkenntnisse und Informatik Stand: 18.09.2011
Bezug zu den Leitideen der Bildungsstandards und den Kompetenzen, Inhalte Bemerkungen welche die Schülerinnen und Schüler erwerben Klasse 11 Informatik 4-stündig Einführung in die objektorientierte Modellierung
MehrDie Auflösung von Aktienfonds
Björn Zollenkop Die Auflösung von Aktienfonds Eine empirische Untersuchung für den deutschen Kapitalmarkt it einem Geleitwort von Prof. Dr. Wolfgang Harbrecht GABLER RESEARCH IX Inhaltsübersicht Geleitwort
MehrInstitut für Telematik Universität zu Lübeck. Programmieren. Kapitel 0: Organisatorisches. Wintersemester 2008/2009. Prof. Dr.
Institut für Telematik Universität zu Lübeck Programmieren Kapitel 0: Organisatorisches Wintersemester 2008/2009 Prof. Dr. Christian Werner 1-2 Überblick Ziele Inhaltsüberblick Ablauf der Veranstaltung
MehrSoftware-Entwicklung mit Delphi
Software-Entwicklung mit Delphi Eine systematische Einführung von Dieter Orlamünder, Rüdiger Liskowsky und Heinrich Hußmann mit 170 Bildern und 102 Übungen Fachbuchverlag Leipzig im Carl Hanser Verlag
MehrObjektorientierte Programmiersprachen
Objektorientierte Programmiersprachen 1960 Algol 1970 Simula Pascal 1980 Smalltalk C Ada 1990 C++ Eiffel Eine ovale Box symbolisiert eine objektorientierte Programmiersprache. Eine rechteckige Box steht
MehrDie Bedeutung abstrakter Datentypen in der objektorientierten Programmierung. Klaus Kusche, September 2014
Die Bedeutung abstrakter Datentypen in der objektorientierten Programmierung Klaus Kusche, September 2014 Inhalt Ziel & Voraussetzungen Was sind abstrakte Datentypen? Was kann man damit grundsätzlich?
Mehr0. Einführung. C und C++ (CPP)
C und C++ (CPP) 0. Einführung Prof. Dr. Marc Rennhard Institut für angewandte Informationstechnologie InIT ZHAW Zürcher Hochschule für Angewandte Wissenschaften marc.rennhard@zhaw.ch Marc Rennhard, 05.01.2010,
MehrCurriculum des Wahlfaches Informatik für das Gymnasium Dialog
10.Klasse: Themenschwerpunkt I: Datenbanken Datenbanken o Einsatzbereiche von Datenbanken o Verwaltung von großen Datenmengen o Probleme aus dem Alltag in Datenbanken abbilden o Relationale Datenbanksysteme
MehrJ.5 Die Java Virtual Machine
Java Virtual Machine Die Java Virtual Machine 22 Prof. Dr. Rainer Manthey Informatik II Java-Compiler und Java Virtual Machine Quellcode-Datei class C... javac D.java Java-Compiler - Dateien class class
MehrRoberto lerusalimschy. Programmieren mit Lua
Roberto lerusalimschy Programmieren mit Lua \ Vorwort 13 1 Die Sprache 21 1 Einführung/ 23 1.1 Chunks 24 1.2 Einige lexikalische Konventionen 26 1.3 Globale Variablen 27 1.4 DerStand-alone-Interpreter
MehrInhalt. 1. Sprachspezifische Fehlerrisiken C++ Java. Smalltalk. 2. Coverage - Modelle. Statement Coverage. Branch Coverage
Inhalt 1. Sprachspezifische Fehlerrisiken C++ Java Smalltalk 2. Coverage - Modelle Statement Coverage Branch Coverage Inkrementelles Testen von Klassen Testen Polymorpher Bindungen Optimistischer Ausblick
MehrLaufzeitverifikation
Laufzeitverifikation Martin Möser Seminar Fehlertolerante und Selbstheilende Systeme: Verifikation und Validierung autonomer Systeme Martin Möser - 1 Einführung / Motivation Autonome Systeme Komplexes
MehrIT-Outsourcing-Entscheidungen
Markt- und Unternehmensentwicklung / Markets and Organisations IT-Outsourcing-Entscheidungen Analyse von Einfluss- und Erfolgsfaktoren für auslagernde Unternehmen Bearbeitet von Ralph Pfaller 1. Auflage
MehrProgrammierung 1 für Wirtschaftsinformatik Wintersemester 2013/14
Programmierung 1 für Wirtschaftsinformatik Wintersemester 2013/14 Prof. Dr.-Ing. habil. Peter Sobe Fakultät Informatik / Mathematik Programmierung 1: Programmierung 1 - Ziele Vermittlung von Grundkenntnissen
MehrObjektorientierte Programmierung OOP
Objektorientierte Programmierung OOP Objektorientierte Programmierung OOP Ronja Düffel WS2012/13 08. Oktober 2013 Objektorientierte Programmierung OOP Objektorientierte Programmierung Objektorientierte
MehrGrammatiken. Einführung
Einführung Beispiel: Die arithmetischen Ausdrücke über der Variablen a und den Operationen + und können wie folgt definiert werden: a, a + a und a a sind arithmetische Ausdrücke Wenn A und B arithmetische
MehrInhaltsverzeichnis. 4.9 Aufgaben... 63
Inhaltsverzeichnis 1 Einleitung 1 1.1 Programmierung... 1 1.2 Objektorientierte Programmierung... 2 1.3 Voraussetzungen und Ziele dieses Buches... 3 1.4 Aufbau dieses Buches... 4 2 Das imperative Hamster-Modell
MehrObjektorientierte Programmierung in Java
Objektorientierte Programmierung in Java 1. Auflage Objektorientierte Programmierung in Java schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Verlag C.H. Beck im Internet:
MehrMarkenerfolg durch Brand Communities
Bastian Popp Markenerfolg durch Brand Communities Eine Analyse der Wirkung psychologischer Variablen auf ökonomische Erfolgsindikatoren Mit einem Geleitwort von Prof. Dr. Herbert Woratschek GABLER RESEARCH
Mehr4. Übung zu Software Engineering
4. Übung zu Software Engineering WS 2009/2010 Henning Heitkötter Klassendiagramm: Projektmanagement AUFGABE 10 1 OOA-Methode von Heide Balzert 1. Klassen finden 2. Assoziationen und Kompositionen finden
MehrWas ist ein Compiler?
Was ist ein Compiler? Was ist ein Compiler und worum geht es? Wie ist ein Compiler aufgebaut? Warum beschäftigen wir uns mit Compilerbau? Wie ist die Veranstaltung organisiert? Was interessiert Sie besonders?
Mehr10 Erweiterung und Portierung
10.1 Überblick In vielen Fällen werden Compiler nicht vollständig neu geschrieben, sondern von einem Rechnersystem auf ein anderes portiert. Das spart viel Arbeit, ist aber immer noch eine sehr anspruchsvolle
MehrJava Einführung Operatoren Kapitel 2 und 3
Java Einführung Operatoren Kapitel 2 und 3 Inhalt dieser Einheit Operatoren (unär, binär, ternär) Rangfolge der Operatoren Zuweisungsoperatoren Vergleichsoperatoren Logische Operatoren 2 Operatoren Abhängig
MehrII.1.1. Erste Schritte - 1 -
1. Grundelemente der Programmierung 2. Objekte, Klassen und Methoden 3. Rekursion und dynamische Datenstrukturen 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1 - 1.
MehrC# im Vergleich zu Java
C# im Vergleich zu Java Serhad Ilgün Seminar Universität Dortmund SS 03 Gliederung Entstehung von C# und Java Überblick von C# und Java Unterschiede und Gemeinsamkeiten Zusammenfassung und Ausblick Entstehung
MehrJava Virtual Machine (JVM) Bytecode
Java Virtual Machine (JVM) durch Java-Interpreter (java) realisiert abstrakte Maschine = Softwareschicht zwischen Anwendung und Betriebssystem verantwortlich für Laden von Klassen, Ausführen des Bytecodes,
MehrInhaltsverzeichnis. Grundlagen und Einführung (1. Band) 1
Inhaltsverzeichnis Grundlagen und Einführung (1. Band) 1 1 Einleitung und Vorwort 1 1.1 Vorwort zur 13. Auflage....................... 1 1.2 Vorwort zur 10. Auflage....................... 1 1.3 Voraussetzungen...........................
MehrProgrammieren I. Überblick. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Überblick KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Übersicht Programmieren Programmieren I (1. Semester)
MehrAlexander Niemann. Das Einsteigerseminar Objektorientierte Programmierung in Java. bhv
Alexander Niemann Das Einsteigerseminar Objektorientierte Programmierung in Java G bhv Inhaltsverzeichnis Vorwort 11 Einleitung 13 Lernen - Üben 13 Über dieses Buch 14 Ш11ШШШШ '. ш Ш Java 19 Die Geschichte
MehrInhaltsverzeichnis VII
Inhaltsverzeichnis 1 Erste Schritte...1 1.1 Einführung...1 1.2 Systemvoraussetzungen...2 1.3 Installation...2 1.3.1 Buch online lesen...3 1.3.2 Installation von Caché...3 1.3.3 Die Buch-Beispiele...4 1.4
MehrObjektorientierte Softwaretechnik
Bernd Brügge, Allen H. Dutoit Objektorientierte Softwaretechnik mit UML, Entwurfsmustern und Java ein Imprint von Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney
MehrKlassenbeziehungen & Vererbung
Klassenbeziehungen & Vererbung VL Objektorientierte Programmierung Raimund Kirner teilweise nach Folien von Franz Puntigam, TU Wien Überblick Arten von Klassenbeziehungen Untertypen versus Vererbung in
Mehr1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi
1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in
MehrModellbasierte Bewertung kollaborativer Belieferungskonzepte
i Inhaltsverzeichnis Inhaltsverzeichnis... i Abkürzungsverzeichnis... vi Abbildungsverzeichnis... ix Tabellenverzeichnis... xi Formelverzeichnis... xiv 1 Einleitung... 1 1.1 Motivation... 1 1.2 Ziele und
MehrInhalt. 3.1 Der inkrementelle Entwurf im Überblick... 13 3.2 Flache Aufwandskurve... 14 3.3 Qualitätskriterien für den inkrementellen Entwurf...
ix 1 Einleitung 1 Roman Pichler Stefan Roock 1.1 Agile Softwarewicklung und Scrum............................ 1 1.2 Zielgruppe und Zielsetzung.................................. 2 1.3 Überblick über das
MehrWorkshop 6. Einführung in die objektorientierte Programmierung. Teil: Java mit BlueJ
IBBB 2010 Workshop 6 Einführung in die objektorientierte Programmierung Dozenten: J. Penon, J. Frank, A. Schindler Teil: Java mit BlueJ Dozent: A. Schindler Einf. i. d. OOP - Java u. BlueJ / A. Schindler
MehrProgrammieren Lernen mit BYOB. Gerald Futschek 5. November 2012
Programmieren Lernen mit BYOB Informatiktag 2012 Gerald Futschek 5. November 2012 Erste Programmier Schritte in der Schule Sehr viele verschiedene Dinge zu lernen: Syntax und Semantik der Befehle, Algorithmen,
MehrKnasmüller.book Seite vii Mittwoch, 28. März 2001 11:11 11. vii. Inhaltsverzeichnis
Knasmüller.book Seite vii Mittwoch, 28. März 2001 11:11 11 vii 1 Einführung 1 1.1 Motivation.................................... 1 1.2 Vorteile der neuen Techniken...................... 3 1.3 Aufbau des
MehrTrace- und Zeit-Zusicherungen beim Programmieren mit Vertrag
Trace- und Zeit-Zusicherungen beim Programmieren mit Vertrag Mark Brörkens Universität Oldenburg, Fachbereich Informatik Email: Mark.Broerkens@informatik.uni-oldenburg.de Einleitung Programmieren mit Vertrag
MehrLernziele: Ausgleichstechniken für binäre Bäume verstehen und einsetzen können.
6. Bäume Lernziele 6. Bäume Lernziele: Definition und Eigenschaften binärer Bäume kennen, Traversierungsalgorithmen für binäre Bäume implementieren können, die Bedeutung von Suchbäumen für die effiziente
Mehr2.1.1 Übersichtsraster Unterrichtsvorhaben. I) Einführungsphase. Einführungsphase. Unterrichtsvorhaben E-II. Unterrichtsvorhaben E-I
2.1.1 Übersichtsraster Unterrichtsvorhaben I) Einführungsphase Einführungsphase Unterrichtsvorhaben E-I Einführung in die Nutzung von Informatiksystemen und in grundlegende Begrifflichkeiten Informatiksysteme
Mehr7. Objektorientierte Softwareentwicklung/3. Informatik II für Verkehrsingenieure
7. Objektorientierte Softwareentwicklung/3 Informatik II für Verkehrsingenieure Überblick FOLGENDE BEGRIFFE/PRINZIPIEN SOLLTEN BEKANNT SEIN Objekte Klasse Attribute Fähigkeiten ZIEL DER HEUTIGEN LEHRVERANSTALTUNG
MehrGrundzüge der Programmierung. Konzepte der objektorientierten Programmierung (oop) OBJEKTE - KLASSEN
Grundzüge der Programmierung Konzepte der objektorientierten Programmierung (oop) OBJEKTE - KLASSEN Inhalt dieser Einheit JAVA ist objektorientiert! Grundbegriffe der objektorientierten Programmierung:
MehrSchulinternes Curriculum für Informatik (Q2) Stand April 2015
Schulinternes Curriculum für Informatik (Q2) Stand April 2015 Unterrichtsvorhaben Q2-I Thema: Modellierung und Implementierung von Anwendungen mit dynamischen, nichtlinearen Datenstrukturen Modellieren
MehrInnere Klassen in Java
Innere Klassen in Java SS 2012 Prof. Dr. Margarita Esponda Innere Klassen Klassen- oder Interfacedefinitionen können zur besseren Strukturierung von Programmen verschachtelt werden Eine "Inner Class" wird
MehrAbbildungsverzeichnis. Tabellenverzeichnis. Algorithmenverzeichnis. Abkürzungsverzeichnis. Symbolverzeichnis
Carolin Kellenbrink Ressourcenbeschränkte Projektplanung für flexible Projekte Mit einem Geleitwort von Prof. Dr. Stefan Helber 4^ Springer Gabler Abbildungsverzeichnis Tabellenverzeichnis Algorithmenverzeichnis
MehrII.1.1. Erste Schritte - 1 -
1. Grundelemente der Programmierung 2. Objekte, Klassen und Methoden 3. Rekursion und dynamische Datenstrukturen 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1 - 1.
MehrInteraktionen zwischen Objekten durch Senden von Nachrichten und Reagieren auf empfangene Nachrichten
Objekt Objekt kapselt Variablen und Routinen Interaktionen zwischen Objekten durch Senden von Nachrichten und Reagieren auf empfangene Nachrichten Eigenschaften jedes Objekts: Identität (identisch = mehrere
Mehr1 NF-Röhrenverstärker in Zeiten digitaler Audiotechnik... 1
Inhaltsverzeichnis 1 NF-Röhrenverstärker in Zeiten digitaler Audiotechnik... 1 2 Simulation elektronischer Schaltungen mit SPICE... 7 2.1 Kurzeinführung in SPICE... 9 2.1.1 Die Syntax von SPICE... 10 2.1.2
MehrTel. 0531 295-2599 E-Mail: Hartmut.Helmke@DLR.DE. Vorstellung der eigenen Person
Prof. Dr.-Ing. Hartmut Helmke in Deutsches Zentrum für Luft- und Raumfahrt e.v. (DLR) Institut für Flugführung Abteilung Lotsenassistenzsysteme Postfach 32 67 38108 Braunschweig Know-How-Abfrage Fragebogen
MehrGrundkurs Programmieren in Java
Grundkurs Programmieren in Java Band 1: Der Einstieg in Programmierung und Objektorientierung Bearbeitet von Dietmar Ratz, Jens Scheffler, Detlef Seese 1. Auflage 2001. Taschenbuch. 463 S. Paperback ISBN
MehrJava Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung
Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung Ludwig-Maximilians-Universität München Institut für Informatik Programmierung und Softwaretechnik (PST) Prof. Wirsing 6. Mai 2009 1 Der Name Java
MehrJ.6 Programmierung eingebetteter Systeme
Vorteile von C in eingebetteten Systemen: leichter Zugriff auf die Hardware gute Kontrolle über die verwendeten Ressourcen (Speicher, CPU) Probleme mit C: stark eingeschränkte Laufzeitüberprüfungen ISO
MehrPrüfungszeuch im Fach Objektorientierte Programmierung WS 2000
Prüfungszeuch im Fach Objektorientierte Programmierung WS 2000 A. Beschreibung der Projektarbeit. Welche Aufgabe haben Sie im Rahmen der Projektarbeit gelöst? 2. Mit welchen Tools bzw. Programmen (Anwendung,
Mehr1. Grundlegende Eigenscha5en 2. Redefini+on 3. Polymophie 4. Mehrfachvererbung
K05 Vererbung & Polymorphie in C++ 1. Grundlegende Eigenscha5en 2. Redefini+on 3. Polymophie 4. Mehrfachvererbung 2 Vererbung in C++: Grundlagen Analog zu Java unterstützt C++ das Konzept der Vererbung:
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen
Mehr1. Java ist... 2. Stammbaum der Programmiersprachen 3. Die "Softwarekrise"
im Überblick im Überblick Inhalt 1. Java ist... 2. Stammbaum der Programmiersprachen 3. Die Softwarekrise 1. Merkmale von Software 2. Fortlaufende Veränderungen 3. Erschwerte Rahmenbedingungen bei der
MehrII.1.1. Erste Schritte - 1 -
1. Grundelemente der Programmierung 2. Objekte, Klassen und Methoden 3. Rekursion und dynamische Datenstrukturen 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1 - 1.
MehrClient-Server Beziehungen
Ersetzbarkeit, Client-Server Beziehungen 182.132 VL Objektorientierte Programmierung Peter Puschner nach Folien von Franz Puntigam, TU Wien Überblick Ersetzbarkeit Kovarianz, Kontravarianz, Invarianz Client-Server
MehrBerner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi 06.09.10 1
Kapitel 1 Einstieg in Java Dr. Elham Firouzi 06.09.10 1 1 : Einstieg in Java Einleitung Ein erstes Beispiel Berner Fachhochschule Entwicklung von Java-Programmen Applikationen Applets Vor und Nachteile
MehrEinführung in die Systemprogrammierung
Einführung in die Systemprogrammierung Sprachen und Übersetzer Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 4. Juni 2015 Sprachen vs. Übersetzer Sprache C11 Übersetzer GNU C
Mehr3 Objektorientierte Konzepte in Java
3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine
MehrModel Driven SOA. < J Springer. Anwendungsorientierte Methodik und Vorgehen in der Praxis. Gerhard Rempp Mark Akermann Martin Löffler Jens Lehmann
Gerhard Rempp Mark Akermann Martin Löffler Jens Lehmann Model Driven SOA Anwendungsorientierte Methodik und Vorgehen in der Praxis Mit Illustrationen von Martin Starzmann < J Springer Inhaltsverzeichnis
MehrKapitel 10: Datenbankzugriff & Pufferung 2
Kap. 10 Datenbankzugriff und Pufferung 10.1 Datenbankzugriff in ERP-Systemen 10.2 Pufferung auf Anwendungsebene 10.3 Workshop: ABAP-Programmierung in SAP R/3 Open SQL Native SQL Kapitel 10: Datenbankzugriff
MehrEin Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen
Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen Tom Krauß Agenda Begriffsdefinition Verfahren Praktische Beispiele Vergleich und Bewertung Begriffsklärung
MehrDatabase Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee 2 10245 Berlin Tel.:+49(0) 30 2900 8639 Fax.:+49(0) 30 2900 8695
Database Exchange Manager Replication Service- schematische Darstellung Replication Service- allgemeines Replikation von Daten von bzw. in ein SAP-System und einer relationalen DMS-Datenbank Kombination
Mehrmit Delphi Messen, Steuern, Regeln Franzis Sören Götz/Reiner Mende Objektorientierte Programmierung realer Objekte Mit 100 Abbildungen
' : : :. '. : ' " = : : ^ ' \ Sören Götz/Reiner Mende Messen, Steuern, Regeln mit Delphi Objektorientierte Programmierung realer Objekte Mit 100 Abbildungen Franzis Inhalt 1 Einleitung 11 2 Objektorientierte
MehrKlausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.
Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert
MehrVorkurs C++ Programmierung
Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:
MehrAnalyse von Tabellen und kategorialen Daten
Hans-Jürgen Andreß Jacques A. Hagenaars Steffen Kühnel Analyse von Tabellen und kategorialen Daten Log-lineare Modelle, latente Klassenanalyse, logistische Regression und GSK-Ansatz Mit 32 Abbildungen
MehrProgrammieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine
Mehr5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren:
5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen 5. Abstrakte Klassen Beispiel Beispiel (3) Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Probleme des Implementierungsvorschlags:
MehrKapitel 4. Mehrfachvererbung. Beispiel 1: typische Diamant Struktur. Person. Hiwi
Kapitel 4 Mehrfachvererbung eispiel 1: Person Student ngestellter typische iamant Struktur Hiwi 29 4. Mehrfachvererbung eispiel 2: Fenster mit Rand und Menü; Verteilung von Rand und Menü auf 2 Unterklassen
MehrDiplomarbeit Antrittsvortrag
Diplomarbeit Antrittsvortrag Christian Müller Run-time byte code compilation, interpretation and optimization for Alice Betreuer: Guido Tack Verantwortlicher Prof.: Gert Smolka Die nächsten 15 Minuten...
MehrInhaltsverzeichnis. I LDAP verstehen 1. 1 EinführunginLDAP... 3
xi I LDAP verstehen 1 1 EinführunginLDAP... 3 2 Verzeichnisdienste... 5 2.1 VonX.500zuLDAP... 8 2.2 LDAPv3... 13 2.3 LDAPinderNetzwerkadministration... 14 3 DasX.500-Datenmodell... 17 3.1 Objekte... 18
Mehr