Akademik

Programmierung
Gehirnwäsche; Konditionierung; Manipulation; Engineeringarbeit; Softwareentwicklung; Implementation

* * *

Pro|gram|mie|rung 〈f. 20das Programmieren

* * *

Pro|gram|mie|rung, die; -, -en:
das Programmieren.

* * *

Programmierung,
 
im weiteren Sinn das Festlegen der Reihenfolge, in der ein elektronisches Gerät (z. B. CD-Player) seine Funktionen im automatisierten Betrieb ausübt. Im eigentlichen Sinn das Erstellen eines sog. Programms in einer geeigneten Programmiersprache, bei dessen Ausführung ein Computer die intendierten Aktionen durchführt (dies natürlich nur, sofern die Programmierung korrekt ausgeführt wurde, Bug, Fehler). Man unterscheidet dabei je nach Komplexität des bearbeiteten Programms zwischen Systemprogrammierung, Anwendungs- und Makroprogrammierung (Makrosprache). Zur Programmierung rechnet man dabei nicht nur das reine Verfassen von Quellcode, sondern auch die Konzeption eines Programms inklusive der Formulierung bzw. Auswahl von Algorithmen und das Testen eines Quellcodes auf mögliche Programmierfehler. Auch die Dokumentation eines Programms sowohl für Anwender als auch in Hinblick auf künftige Weiterentwicklungen ist ein wichtiger Bestandteil der Programmierung.
 
Anders als in der Frühzeit der Computergeschichte ist das Programmieren heute eine Ingenieurstätigkeit (Software-Technik, Software Engineering). Zur Vereinfachung der Programmierarbeit ist eine große Zahl von sog. Programmierwerkzeugen und -umgebungen entwickelt worden (Computer-Assisted Software Engineering, CASE).
 
Die professionelle Programmierung kennt mehrere grundlegende Konzepte:
 
- Die imperative Programmierung (prozedurale Programmierung) stellt die Abfolge der einzelnen Befehle in den Vordergrund. Dabei gilt nur noch die strukturierte Programmierung (Verwenden von Schleifen und Bedingungen, Verzicht auf unbedingte Sprünge) als zeitgemäß. Wird dazu mit Unterprogrammen (Prozeduren) gearbeitet, spricht man auch von prozeduraler Programmierung.
 
- Die objektorientierte Programmierung (OOP) fasst zusammengehörige Daten sowie die auf sie anwendbaren Operationen zu sog. Objekten zusammen. Anstelle der Abfolge von Befehlen behandelt man vorrangig die Definition der Objekte sowie ihrer Interaktionen. OOP gilt heute in weiten Gebieten als Stand der Technik, allerdings bedient man sich dabei oft sog. Hybridsprachen, die auch noch Elemente der strukturierten imperativen Programmierweise besitzen.
 
- Die funktional-applikative Programmierung konzentriert sich auf die Definition von Funktionen, die auch rekursiv erfolgen kann (Rekursion). Ein Beispiel hierfür liefert die Sprache Lisp.
 
- Die prädikative Programmierung arbeitet sehr logiknah, versucht die Lösung eines Problems auf das Beweisen von Aussagen zurückzuführen (Prolog).
 
- Die beiden letzten Ansätze fasst man auch unter dem Begriff deklarative Programmierung zusammen; damit meint man, dass weniger die Lösung als die korrekte Beschreibung eines Problems als Hauptaufgabe gesehen wird. Bei einer angemessenen Formulierung der Aufgabe findet der Rechner einen Lösungsweg allein aufgrund der Syntax der Programmiersprache.
 
- Die bisher beschriebenen Programmierstile beziehen sich überwiegend auf Programme für Einprozessorsysteme. Für Parallelrechner mussten dagegen in verschiedenen Bereichen ganz neue Ansätze gefunden werden, da man hier besonderes Augenmerk auf eine effiziente Zuteilung von Aufgaben an die einzelnen Prozessoren bzw. Rechenknoten richten muss (verteilte Datenverarbeitung).

* * *

Pro|gram|mie|rung, die; -, -en: das Programmieren.

Universal-Lexikon. 2012.