Lehrinhalte |
Begriffsfestlegungen: Problemlösungsstrategien; Maschinen, Daten und Befehle; Algorithmusbegriff; Formale Sprachen, Ausdrücke, Grammatiken; Programmiersprachen und Übersetzer
Syntaxkonstrukte: Primitive Datentypen und Literale; Variablen, Namen, Deklaration, Initialisierung; Operatoren (arithmetische, Vergleichs-, Zuweisungs-, logische, bitweise, unäre); Operatorprioritäten, Typumwandlung; Anweisungen, Sichtbarkeit und Anweisungsfolgen; Arrays und Zeichenketten; Kontrollstrukturen
Grundkonzepte zur Programmierung: Objekte, Klassen, Attribute, Methoden; Referenzen auf Objekte, Konstruktoren; Programmierung mit Objekten; Prozeduren und Parameter; Ein- Ausgabe, Files; Interfaces; Erweiterungen von Klassen (Überladung, Vererbung)
Ausgewählte Spezielle Programmierkonzepte: Dynamische Datenstrukturen (Beispiel Listen); Überblick Dynamische Datenstrukturen (Graphen, Queues, Stapel, Mengen); Selbstbezug und Beschreibungsmittel; Rekursive Algorithmen (lineare und nichtlineare, Beispiel Mergesort); Rekursive Datenstrukturen (Beispiel Bäume); Ereignisse und Ereignisbehandlung; Ausnahmen; Threads
Organisation der Programmierung: Programmierkonventionen (Code Conventions); Dateiorganisation, Gliederung, Kommentare; Strukturierungskonzepte für umfangreiche Programme; Dokumentation; Pakete; Tools und Entwicklungsumgebungen
|