BIN004: Einführung in die Programmierung

Einführung in die Informatik

BIN004: Einführung in die Programmierung

Kurzporträt BIN004: Einführung in die Programmierung
Worum geht es? Das Modul führt in das Programmieren ein. Die Studierenden lernen, einfache Anforderungen in Programme zu überführen, Programme auszuführen, Fehler zu finden und Lösungen nachvollziehbar zu verbessern. Dabei geht es sowohl um grundlegende Sprachkonzepte als auch um praktische Entwicklungswerkzeuge.
Wofür braucht man es? Programmierkenntnisse werden in nahezu allen weiteren Informatikmodulen benötigt. Sie sind Grundlage für Softwareentwicklung, Datenanalyse, Systemprogrammierung, Webanwendungen, Machine Learning und viele Projektaufgaben. Wer Programme lesen und selbst schreiben kann, kann technische Ideen im Studium praktisch umsetzen.
Wieso ist es interessant? Programmieren macht abstrakte Ideen ausführbar. Schon mit einfachen Konzepten lassen sich kleine Werkzeuge, Simulationen, Analysen oder interaktive Anwendungen bauen. Das Modul zeigt, wie aus einer Problemstellung schrittweise ein funktionierendes Programm entsteht und wie man Fehler systematisch als Teil des Lernprozesses nutzt.
Modulverantwortung

Prof. Dr. Michael Gref

Lehrperson(en)
  • Prof. Dr. Michael Gref
  • Prof. Dr. Duc Duy Pham
Verwendbarkeit

Bachelor Informatik

Fächergruppe

Informatik

Modultyp
Pflicht
Sprache

Deutsch

Angebot

jedes Semester

Dauer

1 Semester

Credits

5 ECTS

Benotung

Deutsche Notenskala 1-5

SWS

2 V | 1 Ü | 1 P | - S

Workload
Präsenzstudium: 45 Std. Selbststudium: 90 Std.
Engl. Titel

Introduction to Programming

Empfohlene Voraussetzungen

Keine angegeben.

Lernergebnisse / Kompetenzen
WAS

Mit erfolgreichem Abschluss des Moduls sind die Studierenden in der Lage, einfache Programme anhand gegebener Anforderungen und algorithmischer Lösungsansätze zu verstehen, zu erstellen, zu überprüfen und nachvollziehbar weiterzuentwickeln.

WOMIT

Die Studierenden erreichen dieses Lernergebnis, indem sie

  • grundlegende Konzepte einer höheren, dynamisch typisierten Programmiersprache anwenden und einfache Anforderungen in strukturierte Programme übertragen,
  • geeignete Daten- und Sammlungstypen zur Verarbeitung einfacher Datenbestände einsetzen,
  • vorhandenen Code lesen, das Programmverhalten nachvollziehen und Fehler lokalisieren,
  • Programme mit einer zeitgemäßen Entwicklungsumgebung ausführen, untersuchen und verbessern,
  • Funktionen und kleinere Programme durch einfache Tests überprüfen,
  • grundlegende Prinzipien lesbarer und nachvollziehbarer Programmgestaltung anwenden,
  • ausgewählte Bibliotheken, Standardfunktionen und grundlegende objektorientierte Konzepte zur Lösung einfacher Aufgaben verwenden,
  • einfache Entwicklungsabläufe unter Nutzung einer Versionsverwaltung nachvollziehen und eigene Arbeitsergebnisse versionieren.
WOZU

Die Studierenden nutzen diese Kompetenzen, um in nachfolgenden Informatikmodulen programmierbezogene Aufgabenstellungen eigenständig bearbeiten, vorhandenen Code kritisch nachvollziehen und eigene Lösungen systematisch umsetzen zu können.

Inhalte
  • Grundbegriffe der Programmierung und Programmausführung
  • Entwicklungsumgebung, Debugger und Versionsverwaltung
  • Variablen, Datentypen, Ausdrücke und Operatoren
  • Ein- und Ausgabe, Zeichenketten und einfache Textverarbeitung
  • Kontrollstrukturen und strukturierter Programmablauf
  • Funktionen, Parameter, Rückgabewerte und Modularisierung
  • Sammlungstypen und einfache Datenstrukturen
  • Umsetzung einfacher algorithmischer Lösungsansätze
  • Lesen, Nachvollziehen und Bewerten von Programmcode
  • Fehlersuche, Debugging und einfache Fehlerbehandlung
  • Grundlagen des Testens kleiner Programme
  • Grundlegende objektorientierte Konzepte
Prüfungsvorleistung

Testat durch erfolgreiche Bearbeitung semesterbegleitender Programmieraufgaben.

Prüfungsleistung

Computergestützte Klausurarbeit (90 Minuten). Das Prüfungskonzept umfasst Aufgaben zur Codeanalyse, Fehlersuche, Erklärung des Programmverhaltens sowie zur eigenständigen Implementierung kleiner Programme.

Literatur
  • Eric Matthes: Python Crash Course. 3rd edition, No Starch Press, 2023.
  • Allen B. Downey: Think Python. 3rd edition, O’Reilly Media, 2024.
  • Al Sweigart: Automate the Boring Stuff with Python. 2nd edition, No Starch Press, 2019.
  • Johannes Ernesti; Peter Kaiser: Python 3: Das umfassende Handbuch. Rheinwerk Verlag, 2023.