Zum Hauptinhalt springen

Programmieren

Als ein Teilbereich der Softwareentwicklung umfasst das Programmieren vor allem die Umsetzung eines Softwareentwurfes in Quellcode. Generell versteht man unter Programmieren die Umsetzung von Algorithmen in lauffähige Computer-Programme.

Hinweis

Ein Algorithmus ist eine Handlungsvorschrift zur Lösung eines Problems.

Programmierparadigmen

Unter einem Programmierparadigma versteht man die grundlegende Herangehensweise, Probleme mit Hilfe einer Programmiersprache zu lösen. Aber auuch wenn Programmiersprachen oft anhand ihrer grundlegenden Merkmale genau einem Programmierparadigma zugeordnet werden, unterstützen viele Programmiersprachen mehrere Programmierparadigmen.

Bei der imperativen Programmierung bestehen Programme aus verzweigten und sich wiederholenden Folgen von Anweisungen, die den Programmablauf steuern.

Programmausführung

Programme auf einem Computer können auf unterschiedliche Arten ausgeführt werden: Compilersprachen übersetzen den Quellcode in eine Datei, die vom jeweiligen Betriebssystem ausgeführt werden kann, Interpretersprachen übersetzen den Quellcode direkt in den Arbeitsspeicher und führen das Programm sofort aus und Just-In-Time Compilersprachen (JIT) übersetzen den Quellcode mit Hilfe eines Compilers zunächst in den sogenannten Bytecode und übersetzen diesen bei der Ausführung in den Arbeitsspeicher. Compilersprachen wie z.B. C++ sind dabei deutlich performanter und ermöglichen eine sicherere Entwicklung, Interpretersprachen wie z.B. PHP sind dagegen plattformunabhängig und Just-In-Time Compliersprachen vereinen die Vorteile von beiden.

Hinweis

In Java wird der Interpreter als Java Virtual Machine bezeichnet.

Programmiersprachen

Maschinen sind im Vergleich zu menschlichen Gehirnen sehr primitive Gebilde. Die Diskrepanz zwischen der menschlichen Denkweise und der Arbeitsweise von Maschinen bezeichnet mal als Semantische Lücke. Programmiersprachen ermöglichen es, Problemstellungen der realen Welt abstrahiert und maschinengerecht abzubilden und damit die Semantische Lücke zu verringern. Je höher die Abstraktion einer Programmiersprache dabei ist, desto mehr kann die Semantische Lücke verringert werden: Maschinenorientierte Programmiersprachen (wie z.B. Assembler) abstrahieren kaum und sind daher für den Menschen schwerer verständlich, problemorientierte Programmiersprachen (wie z.B. Java) abstrahieren stark und sind daher für den Menschen leichter verständlich.

Die Programmiersprachen Java, Python und JavaScript gehören zu den am weitesten verbreiteten bzw. beliebtesten Programmiersprachen.

TIOBERedMonkPYPL
PythonJavaScriptPython
CPythonJava
C++JavaJavaScript
JavaPHPC/C++
C#C++C#
Quellen

Tiobe Programming Community Index Januar 2024, RedMonk Programming Language Rankings Januar 2023, PopularitY of Programming Language Januar 2024