Ein unabhängiger Ratgeber für alle, die von null an programmieren lernen. Nicht verbunden mit der früheren Website auf dieser Domain, mit Unternehmen oder Schulen; wir verkaufen keine Kurse und versprechen keine Jobs.

Glossar

Glossar

In den ersten Lektionen bricht eine Lawine unbekannter Wörter über Einsteiger herein: Variable, Funktion, Abhängigkeit, Commit, Branch. Viele davon klingen komplizierter, als sie sind. Hier finden Sie die wichtigsten Begriffe in drei Gruppen: der Code selbst, Entwicklerwerkzeuge und die Zusammenarbeit an einem Projekt. Die Definitionen sind der Verständlichkeit halber vereinfacht; genaue Formulierungen finden Sie in der Dokumentation der Sprache und der Werkzeuge.

Das Wort „Rekursion“ müssen Sie in der ersten Woche nicht kennen, das Wort „Commit“ brauchen Sie dagegen schon am zweiten Tag.

— Aus der Redaktion

So ist dieser Bereich aufgebaut: Wir erklären Begriffe in einfachen Worten und geben manchmal fiktive Beispiele. Hat ein Begriff eine strenge Definition in einer Spezifikation oder Dokumentation, richten Sie sich nach dieser.

Code

Programm
Eine Folge von Anweisungen, die der Computer der Reihe nach ausführt. Es wird in einer Programmiersprache in gewöhnlichen Textdateien geschrieben.
Variable
Ein Name, unter dem das Programm einen Wert speichert: eine Zahl, einen Text, eine Liste. Der Wert lässt sich während der Ausführung lesen und ändern.
Funktion
Ein benannter Codeabschnitt, der eine Aufgabe löst und beliebig oft aufgerufen werden kann. Er nimmt Eingabedaten entgegen und gibt oft ein Ergebnis zurück.
Bedingung
Ein Konstrukt, das einen Teil des Codes ausführt, wenn eine Aussage zutrifft, und einen anderen, wenn nicht. Fiktives Beispiel: Ist die Einkaufsliste leer, gib „Alles gekauft“ aus.
Schleife
Ein Konstrukt zum Wiederholen von Schritten: solange eine Bedingung erfüllt ist oder für jedes Element einer Liste.
Syntax
Die Schreibregeln einer bestimmten Sprache: wo Klammern, Anführungszeichen, Einrückungen und Satzzeichen stehen. Syntaxverstöße sind der häufigste Fehler von Einsteigern.
Bibliothek
Eine fertige Sammlung von Funktionen, die andere geschrieben haben. Man bindet sie ins eigene Programm ein, um bereits gelöste Aufgaben nicht neu lösen zu müssen.

Werkzeuge

Interpreter
Ein Programm, das Code direkt liest und ausführt, ohne separaten Build-Schritt. So startet man zum Beispiel üblicherweise Programme in Python.
Compiler
Ein Programm, das Quellcode vorab in eine ausführbare Datei oder ein Zwischenformat übersetzt. Syntaxfehler zeigt es schon vor dem Start an.
Terminal
Eine Textoberfläche, über die man den Computer mit Befehlen steuert. Man nennt sie auch Kommandozeile oder Konsole.
Code-Editor
Ein Texteditor mit Syntaxhervorhebung, Vorschlägen und Fehlerprüfung. Eine erweiterte Variante mit eingebautem Debugger und Build-Funktionen heißt Entwicklungsumgebung (IDE).
Paketmanager
Ein Werkzeug, das Bibliotheken aus dem Verzeichnis der Sprache herunterlädt, installiert und ihre Versionen verwaltet.
Abhängigkeit
Eine externe Bibliothek, ohne die Ihr Projekt nicht läuft. Eine Liste der Abhängigkeiten mit Versionen hilft, das Projekt auf einem anderen Computer zu starten.

Zusammenarbeit

Repository
Der Speicherort eines Projekts samt vollständigem Änderungsverlauf. Er kann auf Ihrem Computer liegen und eine Kopie auf einem entfernten Server haben.
Commit
Ein festgeschriebener Stand des Projekts mit einer Beschreibung dessen, was sich geändert hat. Aus Commits setzt sich der Verlauf zusammen, über den man zurückgehen kann.
Branch
Eine eigene Entwicklungslinie im Repository. In einem Branch kann man Neues ausprobieren, ohne die Hauptversion anzutasten.
Merge
Das Zusammenführen von Änderungen aus einem Branch in einen anderen. Wurden dieselben Zeilen unterschiedlich geändert, entsteht ein Konflikt, der von Hand gelöst wird.
Semantische Versionierung
Eine Konvention für Versionsnummern der Form MAJOR.MINOR.PATCH: Die erste Zahl ändert sich bei inkompatiblen Änderungen, die mittlere bei neuen Funktionen, die letzte bei Fehlerkorrekturen. Beschrieben in der Spezifikation auf semver.org.
Offene Lizenz
Die Bedingungen, unter denen eine Urheberin oder ein Urheber erlaubt, den eigenen Code zu nutzen, zu untersuchen, zu verändern und weiterzugeben. Die Definition von Open Source pflegt die Open Source Initiative.
  • Werkzeuge

    Die Grundausstattung ohne Marken: Code-Editor, Terminal, Interpreter oder Compiler, Versionsverwaltung, Repository-Hosting, Paketmanager.

  • Anleitungen

    Schritt-für-Schritt-Anleitungen: Umgebung, erstes Skript, erstes Repository, Fehlermeldungen, Fragen an die Community. Dazu der Beitragskatalog.

  • Sicherheit

    Risiken für Einsteiger: Schlüssel und Passwörter im Code, fremde Skripte, gefälschte Pakete, veraltete Abhängigkeiten, private Daten im Repository.

Quellen

  • Git documentation
  • Python documentation
  • Semantic Versioning specification (semver.org)
  • Open Source Initiative — The Open Source Definition

Daten und Definitionen stammen aus offizieller Dokumentation und Spezifikationen zum angegebenen Stand. Sprachen und Werkzeuge entwickeln sich weiter – prüfen Sie Details daher in den aktuellen Primärquellen.