Kursziel

Sie verstehen die wichtigsten Programmierparadigmen wie objektorientierte, logische und funktionale Programmierung. Sie wissen, wie diese Paradigmen in einigen ausgewählten Programmiersprachen eingesetzt werden und sind in der Lage, in diesen Sprachen einfache Programme zu schreiben.

Teilziele

  • Sie haben einen Überblick über die Geschichte höherer Programmiersprachen und verstehen, wie Compiler arbeiten und was Laufzeitumgebungen leisten.
  • Sie verstehen das objektorientierte Paradigma und lernen Smalltalk als dynamische, objektorientierte Programmiersprache mit dynamischem Typenkonzept inklusive Entwicklungsumgebung kennen.
  • Sie verstehen logische Programmierung und lernen Prolog als Vertreter dieses Paradigmas kennen.
  • Sie lernen das Konzept der Module kennen und in welchem Bezug dieses zum objektorientierten Paradigma steht. Zusätzlich lernen sie den Umgang mit Coroutines und ihren Bezug zu Threads.
  • Sie haben einen Überblick über die funktionale Programmierung und kennen deren wesentliche Konzepte. Dabei lernen sie Lisp kennen. (Lisp ist eigentlich eine Multiparadigmensprache mit Wurzeln in der funktionalen Programmierung. Lisp ist als eine der ältesten Programmiersprachen nach wie vor Vorbild für viele moderne Programmierkonzepte.)
  • Sie kennen eine moderne Scriptsprache wie Python, die verschiedene Programmierparadigmen unterstützt. Im diesem Zusammenhang verstehen sie die Unterschiede zwischen statischem und dynamischem Typenkonzept und die jeweiligen Vor- und Nachteile.