Glossar
Fachbegriffe, die auf inf.zone vorkommen, kurz erklärt. Im Text sind sie gepunktet unterstrichen: Fahren Sie mit der Maus darüber oder tippen Sie sie an, dann erscheint die Erklärung.
- Basis
- Die Inhalte und Aufgabentypen, die zum Bestehen der Klausur reichen. Auf den Seiten der Shorts steht, welche Folien dazugehören (Basis-Code: selbst schreiben können; Basis-Konzept: erklären und von Hand durchspielen). Alles darüber hinaus heißt Kür. Mehr dazu →
- Befehlszeilenargument
- → siehe Kommandozeilenargument
- Bibliothek
- Sammlung fertiger Funktionen, die Sie in eigenen Programmen aufrufen, zum Beispiel
printfaus der Standardbibliothek von C oderget_intaus der CS50-Bibliothek. - Bonuspunkte
- Bis zu 20 Punkte, die zum Ergebnis Ihrer Prüfung addiert werden und die Note verbessern, wenn die Prüfung schon ohne sie bestanden ist: bis zu 15 für Ihr Projekt auf der Projektmesse, bis zu 5 aus dem Midterm. Die Übungen selbst bringen keine Bonuspunkte; von ihnen hängt ab, ob die Bonuspunkte aus dem Midterm zählen (Joker-Regel). Mehr dazu →
cd- Wechselt das Verzeichnis:
cd megeht in den Ordnerme,cd ..eine Ebene nach oben,cdallein ins Homeverzeichnis. - Challenge
- Freiwillige Zusatzaufgabe zu vielen Übungsaufgaben: eine kleine Änderung an Ihrem eigenen Programm, etwa die unterste Zeile von Mario mit Punkten statt Rauten. Für die Joker-Regel spielt sie keine Rolle, dafür zählt nur Ihre normale Abgabe; sie übt aber genau das, was im Midterm vorkommen kann. Sie geben sie mit
--challengeab, etwainf upload mario --challenge, und sehen, welche ihrer eigenen Tests Ihr Programm besteht. Ihre normale Abgabe bleibt davon unberührt. Mehr dazu → check50- Prüfprogramm von CS50: Es testet Ihr Programm mit vorgegebenen Eingaben und zeigt mit fröhlichen und traurigen Gesichtern, welche Tests es besteht.
code- Öffnet eine Datei in VS Code und legt sie an, falls es sie noch nicht gibt:
code hello.c. - Codespace
- Eine Arbeitsumgebung auf einem Rechner von GitHub im Internet, auf dem die CS50-Werkzeuge installiert sind. Sie öffnen ihn unter cs50.dev im Browser und arbeiten dort in VS Code. Mehr dazu →
- Compiler
- Programm, das Quellcode in Maschinencode übersetzt; diesen Vorgang nennt man kompilieren. Jedes C-Programm muss kompiliert werden, bevor es laufen kann. Mehr dazu →
- Container
- Abgeschottete Umgebung mit einem eigenen kleinen Linux und fertig installierten Programmen, die auf Ihrem Rechner läuft, ohne Ihr System zu verändern. Der Container für den Kurs enthält den Compiler,
make,check50und die übrigen CS50-Werkzeuge. - Debugger
- Werkzeug, mit dem Sie ein Programm Zeile für Zeile ablaufen lassen und dabei die Werte der Variablen ansehen. In CS50 startet
debug50 ./programmden Debugger von VS Code. - Dev Container
- Ein Container, mit dem sich VS Code verbindet. Sie bedienen VS Code wie gewohnt, aber die Befehle im Terminal laufen im Container. Mehr dazu →
- Docker
- Programm, das Container (abgeschottete Mini-Umgebungen) auf Ihrem eigenen Rechner startet und verwaltet. Unter macOS installieren Sie dafür „Docker Desktop“; unter Windows richtet unser Einrichtungsskript Docker im WSL ein.
- Eingabeaufforderung (Prompt)
- Das Zeichen am Anfang der Zeile im Terminal, etwa
$oderme/ $. Es zeigt, dass das Terminal auf Ihren nächsten Befehl wartet. Steht davor ein Ordnername wieme/, befinden Sie sich gerade in diesem Ordner. Unter Windows heißt außerdem ein Programm so (cmd), in dem man Befehle eintippt. Die Setup-Anleitung für den Dev Container meint dieses Programm. - Erweiterung (VS Code)
- Zusatzmodul, das VS Code um Funktionen ergänzt, etwa „Dev Containers“ oder „GitHub Codespaces“. Sie installieren es im Extensions-Panel (Strg+Shift+X).
- FlexNow
- Das Prüfungsverwaltungssystem der Universität Bamberg. Dort melden Sie sich zu Prüfungen an und sehen später Ihre Noten.
- Git
- Programm, das frühere Stände Ihres Codes speichert, sodass Sie zu ihnen zurückkehren und mit anderen am selben Code arbeiten können. Ein Projektordner unter Git heißt Repository.
- GitHub
- Plattform von Microsoft, auf der man Code speichert und gemeinsam bearbeitet. Für den Codespace brauchen Sie dort ein kostenloses Konto.
- Hashwert
- Kurze Zeichenfolge, die aus dem Inhalt einer Datei berechnet wird und sich komplett ändert, sobald sich auch nur ein Byte ändert. Damit lässt sich später prüfen, ob eine Datei unverändert ist. Einen SHA-256-Hashwert berechnen Sie im Codespace oder unter Linux mit
sha256sum datei.pdf, unter macOS mitshasum -a 256 datei.pdfund unter Windows in der PowerShell mitGet-FileHash datei.pdf. - Header-Datei
- Datei mit der Endung
.h, die ankündigt, welche Funktionen eine Bibliothek bereitstellt.#include <cs50.h>macht zum Beispielget_stringverfügbar. - Homeverzeichnis
- Ihr persönlicher Ordner auf einem Linux-System, auf den Prüfungslaptops zum Beispiel
/home/student. Der Befehlcdohne weitere Angabe bringt Sie dorthin. inf- Das Abgabewerkzeug des Kurses:
inf upload meim Terminal lädt Ihre Lösung hoch, lässt die Tests laufen und zeigt, ob die Übung ihren Stern hat, also für die Joker-Regel zählt. Sie installieren es einmal mit einer Zeile im Terminal und melden sich mit einem Code an, der an Ihre Uni-Mail geht. Im Codespace auf cs50.dev verschwindet es, wenn der Codespace neu erstellt wird; dann installieren Sie es noch einmal.inf statuszeigt Ihren Stand über alle Übungen. Mehr dazu → - Interpreter
- Programm, das Quellcode liest und gleich ausführt, ohne dass Sie vorher kompilieren müssen. So laufen Python-Programme:
python3 hello.py. - Joker-Regel
- Bedingung dafür, dass die Bonuspunkte aus dem Midterm zählen: Jede Übung ohne Stern, die Sie also nicht fristgerecht abgeben, kostet einen Joker. Sie haben drei Joker in den C-Übungen und einen in den Übungen zu Python und Web und setzen nie zwei hintereinander ein. Für die Prüfung mit 6 ECTS zählen nur die C-Übungen, für die mit 9 ECTS beide Teile. Warm-ups, die Checks „Stadt, Land, Fluss“, Scratch und Challenges kosten keinen Joker. Mehr dazu →
- Kommandozeilenargument
- Angabe, die Sie beim Start eines Programms hinter dessen Namen schreiben. Bei
./caesar 13ist13das Argument; in C kommt es überargcundargvim Programm an. - kompilieren
- → siehe Compiler
- Linux
- Ein Betriebssystem wie Windows oder macOS. Die CS50-Umgebung und die Prüfungslaptops laufen mit Linux.
ls- Listet die Dateien und Ordner im aktuellen Verzeichnis auf.
make- Befehl, der den Compiler mit den richtigen Einstellungen aufruft:
make helloerzeugt aushello.cdas Programmhello. - man pages
- Handbuchseiten zu C-Funktionen und Linux-Befehlen, im Terminal aufrufbar mit
man, etwaman 3 printf. Mitqverlassen Sie die Anzeige. Während des Semesters finden Sie dieselben Informationen einsteigerfreundlicher unter manual.cs50.io. In der Prüfung stehen die man pages auf den Laptops zur Verfügung. - Maschinencode
- Befehle als Nullen und Einsen, die der Prozessor direkt ausführt.
make helloerzeugt den Maschinencode in der Dateihello. - Midterm
- Klausur von 75 Minuten mitten im Semester, in C an den Prüfungslaptops. Sie bringt bis zu 5 Bonuspunkte für die Prüfung. Mehr dazu →
mkdir- Legt einen neuen Ordner an:
mkdir meerzeugt den Ordnerme. - Notes
- Die schriftliche Fassung einer Vorlesung auf dieser Website, zum Nachlesen und Nachschlagen.
pip- Programm, das Python-Pakete (fertige Bibliotheken) aus dem Internet installiert, zum Beispiel
pip install flask. - Port
- Nummer, unter der ein Programm auf einem Rechner Verbindungen annimmt. Webseiten laufen meist auf Port 80 oder 443, Flask beim Entwickeln auf Port 5000.
- Prompt
- → siehe Eingabeaufforderung (Prompt)
- Pseudocode
- Die Schritte eines Programms in normaler Sprache, ohne die Regeln einer Programmiersprache. Oft schreibt man ihn als Kommentare in die Datei, bevor man den eigentlichen Code schreibt.
- PSI-Postfach
- Webportal unseres Lehrstuhls (PSI), in dem Sie persönliche Dokumente abrufen, etwa nach der Prüfung Ihre korrigierte Klausur. Sie melden sich mit Ihrer Uni-Kennung an. Die digitale Einsichtnahme nach der Prüfung funktioniert nur im Netz der Universität oder über VPN.
- Quellcode
- Der Programmtext, den Sie schreiben, zum Beispiel die Datei
hello.c. Ein C-Programm kann erst laufen, wenn ein Compiler den Quellcode übersetzt hat. - Repository
- → siehe Git
- Reverse Proxy
- Server, der Anfragen aus dem Internet entgegennimmt und an Ihre eigentliche Anwendung weiterreicht, die selbst nicht direkt erreichbar ist.
rm- Löscht Dateien. Es gibt keinen Papierkorb; was mit
rmgelöscht ist, lässt sich nicht wiederherstellen. - Shorts
- Kurze Videos zu je einem Thema der Vorlesung, jeweils mit Folien. Am Ende stehen „Die drei Extra-Minuten“; sie gehen meist über die Basis hinaus (Kür).
- Spickzettel
- Ein Blatt DIN A4, das Sie eigenhändig von Hand beschrieben haben und als Hilfsmittel in die Klausur mitbringen dürfen. Im Midterm ist er nicht erlaubt. Mehr dazu →
- Stern
- Den Stern einer Übung bekommen Sie, wenn Sie bis zur Abgabefrist mit
inf uploadabgeben und Ihr Programm einen bestimmten Test besteht, den Test mit dem Stern (★). Mit dem Stern zählt die Übung für die Joker-Regel. Welcher Test es ist, steht auf der Seite der Übung im Kasten mit den Aufgaben. Die übrigen Tests zeigen, was noch fehlt; Sie können also auch abgeben, wenn eine Aufgabe noch nicht ganz läuft. Mehr dazu → style50- Prüfprogramm von CS50, das zeigt, wo Ihr Code von den Formatierungsregeln abweicht. In Grün zeigt es, was Sie ergänzen sollten, in Rot, was wegfallen soll. Mehr dazu →
- Terminal
- Fenster, in dem Sie dem Computer Befehle als Text eintippen statt zu klicken. In VS Code liegt es im unteren Bereich des Fensters. Auch „Kommandozeile“, „Konsole“ oder „Shell“ genannt. Im Kurs kompilieren, starten und prüfen Sie Ihre Programme im Terminal, zum Beispiel mit
make hellound./hello. Mehr dazu → unzip- Entpackt eine ZIP-Datei in das aktuelle Verzeichnis.
- venv
- Eine „virtuelle Umgebung“ für Python: ein Ordner (meist
.venv) mit eigenen Paketen, also Bibliotheken, für genau ein Projekt, damit sich Projekte nicht gegenseitig stören. - Verzeichnis
- Anderes Wort für Ordner. Im Terminal befinden Sie sich immer in genau einem Verzeichnis, dem aktuellen Arbeitsverzeichnis.
pwdzeigt es an,cdwechselt es. - VPN
- Verbindung, über die Ihr Rechner von zu Hause aus so ins Internet geht, als stünde er im Netz der Universität. Manche Dienste der Uni funktionieren nur so.
- VS Code
- Visual Studio Code, der kostenlose Code-Editor von Microsoft, in dem Sie im Kurs programmieren.
wget- Lädt eine Datei aus dem Internet in das aktuelle Verzeichnis herunter, im Kurs zum Beispiel das Aufgabenmaterial einer Übung.
- WSL
- Das „Windows-Subsystem für Linux“, eine Funktion von Windows, mit der ein Linux im Hintergrund läuft. Docker braucht sie unter Windows.
Diese Seite als Markdown: ansehen herunterladen