Grundlagen der Programmkonstruktion
LVA 185.A02, VU 2.0, 2011 W
Grundlagen der Programmkonstruktion
Überblick
ACHTUNG:
Der zweite Teil des
Skriptums ist bereits verfügbar.
Ziele der Lehrveranstaltung:
Fachliche und methodische Kenntnisse:
- Basis- und Hintergrundwissen hinsichtlich der Erstellung von Programmen in einer stark typisierten objektorientierten Programmiersprache (Java)
- Systematische und konstruktive Vorgehensweise bei der Erstellung und Evaluation von Programmen
Kognitive und praktische Fertigkeiten:
- Abstrakte und systemorientierte Denkweise in der Programmierung
- Fähigkeit zum Einsatz einfacher formaler und informeller Methoden bei der Erstellung und Evaluation von Programmen
Soziale Kompetenzen, Innovationskompetenz und Kreativität:
- Selbstorganisation und Eigenverantwortlichkeit
- Neugierde an der Programmierung
Inhalt der Lehrveranstaltung:
- Ziele und Qualitätsbegriff in der Programmierung
- Abstraktes Modell (= Objekt oder abstrakte Maschine), dessen Verhalten durch ein Programm beschrieben wird
- Grundlegende Sprachkonstrukte und ihre Anwendung
- Zusicherungen (formal und informell) und Testfälle zur Spezifikation des Programmverhaltens und zur Evaluation
- Umgang mit und Strategien zur Vermeidung von Laufzeitfehlern (Debugging, Exception Handling, Programmanalyse)
- Verwendung einer Programmierumgebung und von Programmierwerkzeugen
- Problemlösungsstrategien, Datenstrukturen und Algorithmen
- Implementierung von Listen, Stacks und Bäumen
- Rekursion in Datenstrukturen und Algorithmen
- Prinzipien der objektorientierten Programmierung (Datenabstraktion, Untertypen, Polymorphie, Vererbung)
- Verwendung von Standardbibliotheken
- Ein- und Ausgabe sowie die interne Repräsentation von Daten
- Basiswissen über Generizität und nebenläufige Programmierung
- Sicherheit in der Programmierung (Gefahrenquellen und Vermeidungsstrategien)
- Verweise auf und Beispiele in andere(n) Programmiersprachen zur Förderung des Interesses an der Programmierung
Modulzuordnung:
Die Lehrveranstaltung
Grundlagen der Programmkonstruktion bildet zusammen mit der Lehrveranstaltung
Programmierpraxis das Modul
Programmkonstruktion.
Dieses Modul beinhaltet die erste Stufe der Programmierausbildung für alle Bachelorstudien der Informatik und Wirtschaftsinformatik.
Da das Modul zur Studieneingangs- und Orientierungsphase (STEOP) zählt, ist es ganz zu Beginn eines entsprechenden Studiums zu absolvieren.
Während Grundlagen der Programmkonstruktion im Wesentlichen einen theoretischen Überblick über die Programmierung in Java gibt, werden in der Programmierpraxis praktische Programmierfähigkeiten entwickelt.
Es wird dringend empfohlen, beide Lehrveranstaltungen zusammen zu absolvieren, da sie sowohl inhaltlich als auch hinsichtlich des Ablaufs stark ineinander verzahnt sind.
Notwendige Vorkenntnisse:
Da die Lehrveranstaltung für Studienanfänger vorgesehen ist, werden keine besonderen Vorkenntnisse vorausgesetzt.
Der Aufbau ist so, dass Personen ohne vorherige Programmiererfahrung das Programmieren erlernen können, gleichzeitig aber Personen, die schon Programmierkenntnisse haben, neue Sichtweisen auf die Programmierung erhalten.
Zielpublikum:
In erster Linie ist Grundlagen der Programmkonstruktion zusammen mit Programmierpraxis für Studierende eines Informatik-Bachelorstudiums gedacht, die im ersten Semester sind oder die nicht mehr angebotene Lehrveranstaltung
Einführung in das Programmieren
(EPROG) noch nicht absolviert haben.
Für diese Studierenden ist Grundlagen der Programmkonstruktion eine Voraussetzung für den Studienabschluss und die Absolvierung der STEOP.
Auch Studierende, die EPROG bereits absolviert haben, können sich Grundlagen der Programmkonstruktion als ergänzende PflichtLVA
anrechnen lassen.
Das ist in einigen Fällen sinnvoll, vor allem für Studierende, die noch relativ am Anfang des Studiums stehen.
Für Studierende kurz vor Abschluss ihres Bachelorstudiums ist es jedoch nicht sinnvoll, und es wird dringend davon abgeraten.
Anmeldung (Registrierung):
Die Teilnahme an der Lehrveranstaltung setzt eine Anmeldung über
TISS (das Informationssystem der TU Wien) voraus.
Gelegenheit dazu besteht vom 6. Oktober (ab 15:00 Uhr) bis zum 15. Oktober 2011.
Ablauf:
Die Lehrveranstaltung setzt sich aus mehreren Teilen zusammen:
- Der Stoff wird in einer Vorlesung vermittelt, in den ersten Wochen mit bis zu vier Stunden pro Woche, später mit weniger – siehe Terminplan.
- Zur Verfestigung des Stoffes müssen insgesamt fünf Übungsaufgaben in Gruppen bei freier Zeit- und Gruppeneinteilung (je zwei bis sechs Personen gemeinsam) gelöst werden.
Die Lösungen sind bis 20.10.2011, 27.10.2011, 17.11.2011, 12.12.2011 un 12.01.2012 um jeweils 12:00 Uhr über TUWEL (die E-Learning- und Kommunikationsplattform der TU Wien) abzugeben.
Die Aufgaben werden mindestens eine Woche vor den Abgabeterminen über TUWEL sowie über diese Webseite verfügbar sein.
- An den Tagen, an denen Lösungen abzugeben sind, finden Übungsbesprechungen statt – siehe Terminplan.
Dabei werden nicht nur Lösungsvarianten bereits gelöster Aufgaben besprochen, sondern es werden auch Empfehlungen zu künftigen Aufgaben und Tests gegeben.
- Als wichtigste Grundlage für die Beurteilung dienen die Ergebnisse von vier Tests.
Testaufgaben müssen von jedem Teilnehmer alleine ohne Verwendung von Unterlagen gelöst werden.
Die genaue Testeinteilung (wer zu welcher Uhrzeit) wird rechtzeitig bekanntgegeben.
Beurteilung:
Die Beurteilung erfolgt über ein einfaches Punktesystem, wobei die Anzahl der erreichten Punkte über die Note entscheidet:
- Abgegebene Lösungen jeder der fünf Übungsaufgaben werden nach Qualität mit bis zu 4 Punkten honoriert.
Für nicht oder zu spät abgegebene Lösungen gibt es keine Punkte.
Insgesamt sind 20 Punkte aus den Übungsaufgaben erreichbar.
- Jeder Test wird mit bis zu 20 Punkten beurteilt.
Für versäumte Tests gibt es keine Punkte.
Bei den Tests sind insgesamt 80 Punkte erreichbar.
- Sollte sich herausstellen, dass eine Leistung durch Schummeln erreicht wurde, werden alle entsprechenden Punkte aberkannt.
- Die Note ergibt sich aus den erreichten Punkten folgendermaßen:
- Sehr gut: 88 bis 100 Punkte
- Gut: 76 bis 87 Punkte
- Befriedigend: 63 bis 75 Punkte
- Genügend: 51 bis 62 Punkte
- Nicht genügend: 0 bis 50 Punkte
In strittigen Fällen ist durch das Punktesystem keine eindeutige Einstufung möglich.
Diese Fälle werden durch ein Prüfungsgespräch in Ergänzung oder als Ersatz des Puntkesystems entschieden.
Als strittig werden vor allem Situationen betrachtet, in denen
- ein begründeter Verdacht auf Schummeln besteht, das Schummeln selbst aber nicht nachweisbar ist,
- oder wegen Krankheit, Unfall, dem Tod eines nahen Angehörigen oder aus ähnlichen schwerwiegenden Gründen die Teilnahme an Tests nicht möglich war.
Kein Anspruch auf ein Prüfungsgespräch als Ersatz für versäumte Tests besteht, wenn der Testtermin wegen beruflicher Verpflichtungen oder Urlaub, aus Prüfungsangst, oder wegen mangelhafter Vorbereitung nicht wahrgenommen wurde.
Zeit und Ort:
Die
Vorbesprechung findet zusammen mit der ersten Vorlesung und der Vorbesprechung zu
Programmierpraxis am Donnerstag, den 6. Oktober 2011 ab 13:00 Uhr im
AudiMax statt.
Zu diesem Termin werden wichtige Informationen zum Ablauf und zur Beurteilung gegeben.
Auch alle weiteren
Zusammenkünfte dieser Lehrveranstaltung finden im AudiMax statt.
Vortragende und Betreuer:
Bei Fragen und Problemen:
Gemeinsame Mailadresse für Grundlagen der Programmkonstruktion und Programmierpraxis:
Details und Download
Terminplan:
Hier ist eine vorläufige Semestereinteilung.
Repetitorien werden als Teil der Programmierpraxis abgehalten.
Ort ist jeweils das AudiMax.
| Tag |
13:00–14:00 |
14:00–15:00 |
| Do 06.10. |
Vorbespr. |
Vorlesung |
| Mo 10.10. |
Vorlesung |
Vorlesung |
| Do 13.10. |
Vorlesung |
Vorlesung |
| Mo 17.10. |
Vorlesung |
Vorlesung |
| Do 20.10. |
Vorlesung |
Übungsbesprechung |
| Mo 24.10. |
Vorlesung |
Vorlesung |
| Do 27.10. |
Vorlesung |
Übungsbesprechung |
| Mo 31.10. |
Vorlesung |
— |
| Do 03.11. |
Vorlesung |
(Repetitorium) |
| Mo 07.11. |
Vorlesung |
(Repetitorium) |
| Do 10.11. |
Test |
Test |
| Mo 14.11. |
Vorlesung |
— |
| Do 17.11. |
Vorlesung |
Übungsbesprechung |
| Mo 21.11. |
Vorlesung |
— |
| Do 24.11. |
Vorlesung |
(Repetitorium) |
| Mo 28.11. |
Vorlesung |
(Repetitorium) |
| Do 01.12. |
Test |
Test |
| Mo 05.12. |
Vorlesung |
— |
| Mo 12.12. |
Vorlesung |
Übungsbesprechung |
| Do 15.12. |
Vorlesung |
(Repetitorium) |
| Mo 19.12. |
Vorlesung |
(Repetitorium) |
| Do 22.12. |
Test |
Test |
| Mo 09.01. |
Vorlesung |
— |
| Do 12.01. |
Vorlesung |
Übungsbesprechung |
| Mo 16.01. |
Vorlesung |
(Repetitorium) |
| Do 19.01. |
Vorlesung |
(Repetitorium) |
| Mo 23.01. |
Vorlesung |
— |
| Do 26.01. |
Test |
Test |
Skriptum:
Das Skriptum ist in zwei Teilen verfügbar.
Der erste Teil steht schon seit Oktober zum Download bereit, der zweite Teil erst seit Dezember.
Weitere Teile wird es in diesem Semester nicht mehr geben.
Varianten desselben Teils sind bis auf das Format identisch.
Sie können eine davon wählen.
- Teil 1 des Skriptums zum Einheften in Ordner
- Teil 2 des Skriptums zum Einheften in Ordner
- gesamtes Skriptum zum Einheften in Ordner
- 2 Seiten/Blatt bei einseitigem Druck, 4 Seiten/Blatt bei doppelseitigem Druck
- Teil 1 des Skriptums in sehr großer Schrift
- Teil 2 des Skriptums in sehr großer Schrift
- gesamtes Skriptum in sehr großer Schrift
- 1 Seite/Blatt, zum Online-Lesen oder Verkleinern
Folien:
Folien zu Vorbesprechung, Vorlesungen und Übungsbesprechungen:
- Vorbesprechung am 6. Oktober 2011
- Vorlesung am 6. Oktober 2011
- Vorlesung am 10. Oktober 2011
- Vorlesung am 13. Oktober 2011
- (keine Folien zur Vorlesung am 17. Oktober 2011)
- Vorlesung am 20. Oktober 2011 (mit Java-Dateien)
- Übungsbesprechung am 20. Oktober 2011
- Vorlesung am 24. Oktober 2011
- Vorlesung am 27. Oktober 2011
- Übungsbesprechung am 27. Oktober 2011
- Vorlesung am 31. Oktober 2011
- Vorlesung am 3. November 2011
- Vorlesung am 7. November 2011
- Vorlesung am 14. November 2011
- Vorlesung am 17. November 2011
- Übungsbesprechung am 17. November 2011
- Vorlesung am 21. November 2011
- Vorlesung am 24. November 2011
- Vorlesung am 28. November 2011
- Vorlesung am 5. Dezember 2011
- Vorlesung am 12. Dezember 2011
- Übungsbesprechung am 12. Dezember 2011
- Vorlesung am 15. Dezember 2011
- Vorlesung am 19. Dezember 2011
- Vorlesung am 9. Jänner 2012
- Vorlesung am 12. Jänner 2012
- Übungsbesprechung am 12. Jänner 2012
- Vorlesung am 16. Jänner 2012
- Vorlesung am 19. Jänner 2012
- Vorlesung am 23. Jänner 2012
Übungsaufgaben:
Die folgenden Übungsaufgaben (auch in TUWEL sichtbar) sind bis zu den angegebenen Terminen zu lösen und in TUWEL abzugeben:
- 1. Aufgabe bis 20. Oktober 2011, 12:00 Uhr (mit Lösungen)
- 2. Aufgabe bis 27. Oktober 2011, 12:00 Uhr (mit Lösungen)
- 3. Aufgabe bis 17. November 2011, 12:00 Uhr (mit Lösungen)
- 4. Aufgabe bis 15. Dezember 2011, 12:00 Uhr (mit Lösungen)
- 5. Aufgabe bis 12. Jänner 2012, 12:00 Uhr (mit Lösungen)