Читать книгу Algorithmen und Datenstrukturen - Gunter Saake - Страница 60

3.1Überblick über Algorithmenparadigmen

Оглавление

Ein Algorithmenparadigma legt die Denkmuster fest, die einer Beschreibung eines Algorithmus zugrunde liegen. Ein Algorithmus ist eine Beschreibung eines allgemeinen Verfahrens unter Verwendung ausführbarer elementarer (Verarbeitungs-)Schritte (vergl. Abschnitt 2.1).

Wir werden zwei grundlegende Arten kennen lernen, Schritte von Algorithmen zu notieren:

Applikative Algorithmen

 Applikative Algorithmen sind eine Verallgemeinerung der Funktionsauswertung mathematisch notierter Funktionen. In ihnen spielt Rekursion eine wesentliche Rolle.

Imperative Algorithmen

 Imperative Algorithmen basieren auf einem einfachen Maschinenmodell mit gespeicherten und änderbaren Werten. Hier werden primär Schleifen und Alternativen als Kontrollbausteine eingesetzt.

In der Informatik werden weitere Paradigmen diskutiert: logisch, objektorientiert, agentenorientiert, parallel sind einige der bekannteren Stichwörter in diesem Zusammenhang.

Logisches Paradigma

Wir werden das logische Paradigma ebenfalls vorstellen, obwohl es streng genommen kein Algorithmenparadigma gemäß unserer intuitiven Begriffsbildung ist (wohl aber ein Programmierparadigma, doch dazu später) – ein logisches Programm ergibt erst zusammen mit einem von mehreren möglichen Interpretationsalgorithmen und einer Anfrage einen ausführbaren Algorithmus im engeren Sinne.

Objektorientiertes Paradigma

Auch das objektorientierte Paradigma ist kein Algorithmenparadigma im engeren Sinne, da es sich um ein Paradigma zur Strukturierung von Algorithmen handelt, das sowohl mit applikativen, imperativen und logischen Konzepten zusammen eingesetzt werden kann. Wir werden es im Zusammenhang mit der Programmiersprache Java intensiver diskutieren.

Paradigmen von Java

Zu den Paradigmen korrespondieren jeweils Programmiersprachen, die diesen Ansatz realisieren. Moderne Programmiersprachen vereinen oft Ansätze mehrerer Paradigmen. Die Sprache Java kann als objektorientiert und imperativ zusammen mit Elementen von applikativen Algorithmen charakterisiert werden.

Algorithmen und Datenstrukturen

Подняться наверх