TU Wien:Grundlagen der Programmkonstruktion VU (Puntigam)

Aus VoWi
Wechseln zu: Navigation, Suche
Diese LVA wird nicht mehr von dieser Person angeboten, ist ausgelaufen, oder läuft aus und befindet sich daher nur noch zu historischen Zwecken im VoWi. Eventuell findest du über dieser Meldung noch andere Vortragende, oder Links für dieselbe LVA.


WICHTIG[Bearbeiten]

Diese LVA wurde im SS2015 durch Programmkonstruktion (PK) ersetzt.

Daten[Bearbeiten]

Inhalt[Bearbeiten]

Einführung in die Programmierung am Beispiel von Java. Inhaltlich wird mit einem Hello World begonnen und bespricht dann die klassischen Themen wie Variablen, Funktionen bzw. Methoden, Rekursion, Klassen, etc.

Ablauf[Bearbeiten]

SS 2012 Die Aufgaben werden in Kleingruppen bis zu 6 Personen ausgearbeitet. Alle zwei Wochen finden Übungsgruppen statt, in denen die Lösungen von jeder Einzelgruppe präsentiert werden, wobei jedes einzelne Mitglied fähig sein sollte die Gruppenlösungen zu erklären. Zu jedem Beispiel wird eine Person aufgerufen, die es präsentiert und ihre ganze Gruppe repräsentiert. Es gibt auch Ausnahmen, wenn nur einzelne Mitglieder in einer Gruppe ein bestimmtes Beispiel gelöst werden, dann bekommen aber auch nur jene die Punkte. Insgesamt gibt es 6 Übungsrunden zu je 5 Punkten, also sind aus den Übungen maximum 30 Punkte erreichbar, was fast die Hälfte einer positiven Note ausmacht.

WS 2014 Es gibt einen Vorlesungsteil, in dem eine Einführung in Java gemacht wird. Zusätzlich wurden gegen Ende Semesters weitere Aspekte der Softwareentwicklung erwähnt. Vorkenntnisse sind zwar keine Erforderlich, das Tempo ist allerdings sehr hoch. Wer noch nicht programmieren kann, sollte unbedingt mitlernen, sonst ist der Zug schnell abgefahren! Der Vortrag ist abwechslungsreich gestaltet, es wird oft zwischen Folien und Entwicklungsumgebung gewechselt. Zwischendurch gibt's immer wieder Zwischenfragen und kleine Aufgabe ans Publikum.

Im Übungsteil gibt es keine Gruppenarbeiten mehr, jede/r muss alleine 5 Übungsblätter machen, wovon das erste eine nichtbeurteilte Proberunde ist. (die 5 Runden sind mMn etwas wenig,...) Dazu kommen noch Ad-Hoc Aufgaben, die erst in der Übung bekanntgegeben werden. Zu den Übungsbeispielen gibt es immer automatische Tests, man weiß also vor der Abgabe, ob die eigene Lösung stimmt. Außerdem sind meist noch 2-3 kurze Zusatzfragen verbal zu beantworten. Sowohl in der VO, also auch in der Übung, sowie bei den Tests wird die Entwicklungumgebung IntelliJ verwendet. Der Test wird unter Linux durchgeführt.

Ab SS 2015 GPK und PP wurden zu Programmkonstruktion VU (PK) zusammengelegt, wobei es als ein Fach gilt (VU). Ablauf wie bei GPK und PP, der einzige Nachteil (oder vielleicht auch Vorteil) ist, dass man die zwei Fächer nicht mehr getrennt voneinander absolvieren kann.

Anmerkung: Dafür, dass die LVA nur 3 ECTS bringt, finde ich die 5 Übungsblätter angebracht. -- Berti933 (Diskussion) 17:56, 22. Jan. 2015 (CET)
Anmerkung: Die 5 Übungsblätter sind für fortgeschrittene Gruppen, normale Gruppen haben 8 Übungsblätter zu lösen.

Benötigte/Empfehlenswerte Vorkenntnisse[Bearbeiten]

Java- bzw. Programmier-Kenntnisse machen das Leben natürlich leichter. Von Seiten der LVA-Leitung wird empfohlen, das offizielle Skriptum (siehe Materialien) vor dem Start schon einmal durchgelesen zu haben. Kann sicher nicht schaden, bei ca. 500 A4-Seiten allerdings auch mit ein bisschen Arbeit verbunden.

Vortrag[Bearbeiten]

Der Vortrag ist solide, aber nicht weltbewegend. Prof. Puntigam trägt eher langsam vor, es werden auch nur ca. 13 Folien pro VO-Einheit behandelt. Für jemand, der mit dem Stoffgebiet schon vertraut ist, lohnt es sich (bis jetzt) noch nicht, die VO zu besuchen. Der Theorieteil der Vorlesungen wird außerdem als aufgezeichneter Stream angeboten.

Ab SS 2015 Professor Pavlus Vortrag ist gut verständlich und hilft beim Lösen der Übungsrunden. Meiner Meinung nach sollte man den Vortrag besuchen, damit einem die Tests einfacher fallen.

Prüfung, Benotung[Bearbeiten]

Stand: WS 2015

Es gibt drei reguläre Tests, die den Schwerpunkt der Berurteilung bilden. Sie finden am Computer in der von den Übungen gewohnten Labor-Umgebung (allerdings abgeschottet, d.h. ohne Zugriff auf Internet) statt. Es gibt Theoriefragen (Multiple Choice) und praktische Beispiele. Der Test beginnt mit dem Theorieteil, bei welchem man aus einem Formular die passenten Antworten waehlen muss, eine IDE steht nicht zur Verfuegung. Wenn man den Theorieteil abgeschlossen hat, kann man zum praktischen Teil wechseln, aber nicht mehr zurueck. Eine Aufteilung von 30 Minuten Theorie und 60 Minuten Praxis wird empfohlen.

Jeder von den drei Tests wird mit 100 Prozentpunkten beurteilt. Ein Nachtragstest am Ende des Semesters ersetzt einen negativen Test bzw. einen Nichtantritt. Die Tests zählen 3/4 zur Note, 1/4 zählen die Übungen. Alle Komponenten (Tests, Übungen) müssen für sich positiv sein.

In den Übungen müssen immer wieder Ad-hoc-Aufgaben vollständig vor Ort gelöst werden. Diese werden noch vor Ort überprüft und anerkannt. Meistens handelt es sich um kleine Abwandlungen der regulären Übungsaufgaben. Mindestens 50% der Übungsbeispiele müssen anerkannt sein. Ein Beispiel wird anerkannt wenn es rechtzeitig abgegeben wurde und in TUWEL angekreuzt wurde.

Wenn man sein Programm in der Gruppe praesentieren muss, wird dieses Beispiel bzw. die "Leistung" der Praesentation fuer die gesamte Beurteilung des Uebungsblattes herangezogen. Hat man ein Beispiel gekreuzt aber nicht geloest und kommt dran, entspricht das 0% des gesamten Uebungsblattes.


Dauer der Zeugnisausstellung[Bearbeiten]

noch offen

Zeitaufwand[Bearbeiten]

  • Es müssen ~7-8 Übungen besucht werden, die jeweils ca. 2 h dauern. Außerdem müssen 7-8 Übungsblätter ausgearbeitet werden, hier hängt der Aufwand natürlich extrem von den Vorkenntnissen ab.

Unterlagen[Bearbeiten]

Tipps[Bearbeiten]

Eigentlich ist Grundlagen der Programmkonstruktion auch für Anfänger schaffbar, aber der Stoff kann heftig sein.

Verbesserungsvorschläge / Kritik[Bearbeiten]

  • Theoretische Fragen über fortgeschrittene Programmierkonzepte (Vererbung, Generizität, usw.) sind meiner Meinung nach ziemlich sinnlos, wenn man diese praktisch noch nie verwendet hat.

Links[Bearbeiten]