mirror of
https://github.com/MartinThoma/LaTeX-examples.git
synced 2025-04-25 06:18:05 +02:00
42 lines
1.6 KiB
TeX
42 lines
1.6 KiB
TeX
\chapter{Programmiersprachen}
|
|
Im folgenden werden einige Begriffe definiert anhand derer
|
|
Programmiersprachen unterschieden werden können.
|
|
|
|
\section{Paradigmen}
|
|
Die grundlegendste Art, wie man Programmiersprachen unterscheiden
|
|
kann ist das sog. \enquote{Programmierparadigma}, also die Art wie
|
|
man Probleme löst.
|
|
|
|
\begin{definition}[Imperatives Paradigma]\xindex{Programmierung!imperative}
|
|
In der imperativen Programmierung betrachtet man Programme als
|
|
eine folge von Anweisungen, die vorgibt auf welche Art etwas
|
|
Schritt für Schritt gemacht werden soll.
|
|
\end{definition}
|
|
|
|
\begin{definition}[Prozedurales Paradigma]\xindex{Programmierung!prozedurale}
|
|
Die prozeduralen Programmierung ist eine Erweiterung des imperativen
|
|
Programmierparadigmas, bei dem man versucht die Probleme in
|
|
kleinere Teilprobleme zu zerlegen.
|
|
\end{definition}
|
|
|
|
\begin{definition}[Funktionales Paradigma]\xindex{Programmierung!funktionale}
|
|
In der funktionalen Programmierung baut man auf Funktionen und
|
|
ggf. Funktionen höherer Ordnung, die eine Aufgabe ohne Nebeneffekte
|
|
lösen.
|
|
\end{definition}
|
|
|
|
\section{Typisierung}
|
|
Eine weitere Art, Programmiersprachen zu unterscheiden ist die stärke
|
|
ihrer Typisierung.
|
|
|
|
\begin{definition}[Dynamische Typisierung]\xindex{Typisierung!dynamische}
|
|
Bei dynamisch typisierten Sprachen kann eine Variable ihren Typ ändern.
|
|
\end{definition}
|
|
|
|
Beispiele sind Python und PHP.
|
|
|
|
\begin{definition}[Statische Typisierung]\xindex{Typisierung!statische}
|
|
Bei statisch typisierten Sprachen kann eine niemals ihren Typ ändern.
|
|
\end{definition}
|
|
|
|
Beispiele sind C, Haskell und Java.
|