Main Page

From Informatik-Vorkurs
Revision as of 16:06, 15 June 2015 by Fischer (talk | contribs) (Externe Links)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Einsteigerkurs nach dem SS2015: C++ Basics

Der Einsteigerkurs C++ Basics ist ein Intensivkurs für Anfänger ohne oder mit nur geringen Vorkenntnissen und für Umsteiger. Er vermittelt wichtige Konzepte der Objektorientierten Programmierung und die Implementierung in der Sprache C++. Der Kurs ist in der Physik anrechenbar als "berufsbezogene Schlüsselkompetenz" und bringt einen Leistungspunkt. Der Kurs wird als Blockkurs in Deutsch gehalten. Er findet diesmal in der Woche nach dem Sommersemester vom 27-31.7.2015 statt. Die Teilnehmerzahl ist auf 50 beschränkt. Die Anmeldung erfolgt über die Übungsgruppenverwaltung der Physik (s.u.).

Im Verlauf einer Woche werden die einzelnen Themen eingeführt und anhand einfacher Beispiele demonstriert. Der Stoff wird immer wieder durch betreute Übungen gefestigt und vertieft. Um in der kurzen Zeit alle genannten Themen behandeln zu können, ist das Tempo des Kurses hoch und es ist eine konzentrierte Mitarbeit nötig.

Der Kurs behandelt unter anderem folgende Themen:

  • Einfache Programmierwerkzeuge (Linux Shell, Editor, Compiler, Linker)
  • Einfache Typen, Variablen, Operatoren, zusammengesetzte Typen
  • Flusskontrolle
  • Funktionen, Überladen von Operatoren
  • Zeiger, Referenzen und dynamische Variablen
  • Klassen, Methoden, Vererbung
  • Ein/Ausgabe
  • Standard Bibliothek

Am Ende des Kurses sollte jeder Teilnehmer / jede Teilnehmerin die wichtigsten Programmierkonzepte kennen und einfache Programme in C++ schreiben können. Mit dieser Basis ist eine selbstständige Einarbeitung in weiterführende Themen möglich.

Der Kurs wird von Prof. Dr. Peter Fischer (ZITI) durchgeführt. Kommentare & Berichtigungen bitte an peter punkt fischer at ziti punkt uni minus heidelberg punkt de.

Zeit, Ort, Anmeldung

Der Kurs findet von Mo, 27.7.2015 bis Fr, 31.7.2015, jeweils ganztägig (9:15-10:45, 11:00-12:30, 13:30-16:30) im CIP-Pool des Kirchhoff-Instituts für Physik, Im Neuenheimer Feld 227, statt.

Für die praktischen Übungen im CIP Pool benötigen Sie einen URZ Account!

Die Anmeldung zum Kurs erfolgt auf dieser Seite. (Die Anmeldung ist nur innerhalb der 'uni-heidelberg' domain möglich, zur Anmeldung ist ein URZ Account erforderlich.) Aus Platzgründen muss die Anzahl der Teilnehmerinnen / Teilnehmer leider auf maximal 50 beschränkt werden.

Verwendete Werkzeuge

Zum Erlernen einer Programmiersprache gehört auch der Umgang mit den entsprechenden Werkzeugen. Für diesen Kurs werden die nicht nur in der UNIX-Welt weit verbreiteten GNU Tools verwendet, die frei und auf allen relevanten Plattformen zugänglich sind. Im Kurs wird bewußt auf den Komfort einer Intergrierten Entwicklungsumgebung verzichtet, um zunächst einmal die zugrunde liegenden Mechanismen (Übersetzen, Binden) zu verstehen. Weitere Informationen zu den Werkzeugen finden Sie auf der Seite Werkzeuge. Hier finden Sie auch eine Anleitung zur Installation der benötigten Programme unter Windows.

Um nach der Vorlesung weiter zu üben, können Sie sich am Einfachsten remote auf den CIP Pool Rechnern einloggen. Öffnen Sie hierzu einfach eine sichere Sitzung unter https://physik1.kip.uni-heidelberg.de (oder physik2 oder physik2).

Kursunterlagen & Beispiele

Hier sind die Folien. Diese enthalten wenige Beispiele. Ich habe daher einige der in der Vorlesung erzeugten Code-Fragmente mit Kommentaren versehen und in dieser Sammlung von Code-Stückchen zusammengestellt. Ein paar Zusatzinfos (Newton, Karatsuba, includes) sind hier.

Praktische Übungen

Im den Übungen soll das erlernte Wissen sofort anhand einfacher Beispiele gefestigt werden. Alle Übungen finden Sie auf der Übungsseite. Erzeugen Sie am Besten für jede Übung ein eigenes Verzeichnis. Versuchen Sie, die Programme immer neu einzugeben (nicht kopieren), denn nur so erlernen Sie die Syntax! Musterlösungen zu den Aufgaben finden Sie zur Nachbereitung auf der Seite mit Musterlösungen.

Ein paar Anregungen für Übungsprogramme...

Nach dem Kurs sind Sie natürlich hochmotiviert, das erworbene Wissen an ein paar spannenden Beispielen auszuprobieren.... Hier ein paar Anregungen, jeweils mit ein paar Tipps:

Tipps & Tricks & Fun

Ein paar interessante Zusatzinfos sind auf Tipps & Tricks Seite zusammengestellt.

Externe Links

Hier ein paar externe Links zu C++ und Linux

und hier ein paar interessante Links 'for fun'

  • [1] Eine Online Version von ZORK
  • [2] Im 'Mcell' Teil gibt es ein schönes (Windows) Programm zur Simulation von zellulären Automaten, wie z.B. Conway's game of life
  • [3] Buchtipp: Das tolle Buch 'On Numbers and Games' von J.H.Conway (bei einem Online Buchladen)
  • [4] oder [5] Buchtipp: Eine spielerische Annäherung an Conway's Zahlentheorie.
  • [6] Buchtipp: Ein tolles Buch über pi und über große Zahlen..
  • [7] Der indische Mathematiker Ramanujan in Wikipedia
  • [8] Seite zu Ludoph van Ceulen, der im 17. Jahrhundert 35 Stellen von Pi berechnete.