In diesem Praktikum sollen die Studenten die Prinzipien der objektorientierten
Programmierung anhand der Programmiersprache C++ (einschl. STL) anwenden
lernen. Im Vordergrund steht nicht die Vermittlung der Sprachelemente von
C++, sondern die Anwendung der Begriffswelt und der Programmentwurf im
Sinne der objektorientierten Programmierung. Grundlegende Kenntnisse der
Sprache C++ werden vorausgesetzt oder müssen ggf. vor / während
des Praktikums anhand der Literatur oder eines Online-Tutorials erworben
werden. Das Skript zum Praktikum enthält alle benötigten Syntaxelemente
als Kurzreferenz zum Nachschlagen.
Das Praktikum wird im CIP-Pool der Fakultät Elektrotechnik und Informationstechnik (Seminargebäude,
Wüllnerstr. 5-7, 2. Stock) durchgeführt. Als Programmierumgebung
wird Visual Studio 2012 unter Windows 7 eingesetzt. Aus organisatorischen Gründen wird die Grafikausgabe unter Linux nicht mehr unterstützt.
Wenn Sie sich am System anmelden wollen, verwenden Sie bitte die allgemeine Benutzerkennung des CIP-Pools, die Sie bereits im PI1-Praktikum erhalten haben.
Bei der Anmeldung zum Praktikum wählen Sie die Termine nach ihrer Präferenz aus. Sie bekommen dann automatisch einen Termin zugeteilt. An diesem Termin besteht während der 12 Praktikumswochen jeweils Anwesenheitspflicht.
Bei Verhinderung kann vorher ein Ersatztermin (einer der anderen
7 Termine) vereinbart werden. Nachträglich kann nur mit Attest ein
Ersatztermin eingeräumt werden.
Bei der Praktikumsaufgabe handelt es sich um 9 aufeinander aufbauende Teilaufgaben, die den kompletten Sprachumfang von C++ abdecken. Diese sind zu 3 Aufgabenblöcken mit jeweils 3 Aufgaben zusammengefasst. Für die Lösung der einzelnen Aufgabenblöcke stehen 4 Wochen zur Verfügung.
Ist jemand vorzeitig mit der jeweiligen Teilaufgabe fertig, kann er das
Anwesenheitstestat für diesen Termin erhalten oder an der nächsten Teilaufgabe weiterarbeiten.
Die Aufgaben können zu Hause oder während der normalen Öffnungszeiten
des CIP-Pools (bei freien Arbeitsplätzen auch während der anderen
Praktikumstermine) vorbereitet und ggf. fertiggestellt werden. Datenübertragung
in den CIP-Pool ist per E-Mail
oder über Diskette/ZIP-Medium möglich.
Bei den Praktikumsterminen stehen immer mehrere Mitarbeiter zur Verfügung, die bei aufkommenden
Fragen oder Problemen beraten. Zusätzlich sind die Betreuer über
die E-Mail-Adresse PI2Betreuung@cip1.eecs.rwth-
aachen.de erreichbar.
Zur Diskussion allgemein interessanter Fragestellungen mit Kommilitonen oder den
Betreuern kann zusätzlich das Diskussionsforum im Lehr- und Lernportal (L²P) verwendet werden.
Jede Teilaufgabe sollte mit entsprechender Vorbereitung an dem vorgegebenen
Termin zu lösen sein. Die einzelnen Aufgabenblöcke werden nach
Abschluss des Blockes einem der Betreuer zur Abnahme vorgelegt (s. Bewertung).
Zur vollständigen Lösung zählt ein in der Praktikumsumgebung
lauffähiges Programm, ein ausreichend dokumentierter Quelltext und
die Beantwortung von Fragen zu den Lernzielen des Aufgabenblocks.
Zeitplan des Praktikums
Zeitplan |
Aufgabe |
Termin |
Beschreibung |
Anmeldung |
|
CAMPUS-Anmeldung |
Einführungsveranstaltung |
15.10.2013 |
Erläuterung des organisatorischen Ablaufs und Beantwortung von Fragen im Vorfeld |
1) Einfache Klassen |
Woche ab 21.10. |
Einführung in das Klassenkonzept von C++ Implementierung eines Fahrzeugs |
2) Vererbung |
Woche ab 28.10. |
Erzeugung von Klassen durch Ableiten von einer Basisklasse Erweiterung der abgeleiteten Klassen Pkw und Fahrrad |
3) Operatoren überladen |
Woche ab 4.11. |
Definition und Anwendung von Operatoren für eigene Klassen |
4) Fertigstellung Block1: Grundlagen des Verkehrssystems |
Woche ab 11.11. |
Abschluss und Abnahme des ersten Blocks |
5) STL |
Woche ab 18.11. |
Verwendung der Standard Template Library von C++ Einführung der Klasse Weg |
6) Exception Handling |
Woche ab 25.11. |
Behandlung von Ausnahmesituationen(Fehler) in C++ Grafische Darstellung der Simulation |
7) Templates |
Woche ab 2.12. |
Implementierung einer Template-Klasse zur Realisierung einer Liste |
8) Fertigstellung Block2: Erweiterung des Verkehrssystems |
Woche ab 6.01. |
Abschluss und Abnahme des zweiten Blocks |
9) Methodenprogrammierung |
Woche ab 13.01. |
Einführung eines Überholverbotes |
10) Klassenhierarchie erweitern |
Woche ab 20.01. |
Einführung der Klasse Kreuzung |
11) File Streams |
Woche ab 27.01. |
Einlesen des Verkehrssystems aus einer Datei |
12) Fertigstellung Block3: Simulation des Verkehrssystems |
Woche ab 3.02. |
Abschluss und Abnahme des dritten Blocks Gesamttestat |
|