Was unter Programmiersprachen in der Informatik zu verstehen ist
Eine Programmiersprache legt fest, wie Anweisungen, Bedingungen, Funktionen und Daten fuer Maschinen verstaendlich beschrieben werden. Sie bildet damit die Grundlage fuer Quellcode, der kompiliert, interpretiert oder in Mischformen ausgefuehrt wird. Je nach Sprache unterscheiden sich etwa Lesbarkeit, Fehlerverhalten, Speicherzugriff, Abstraktionsgrad und Oekosystem. Zur Leistung gehoert deshalb nicht nur die Nennung einzelner Sprachen, sondern auch die Einordnung ihrer technischen Eigenschaften und ihres typischen Verwendungszwecks.
Typische Einsatzkontexte von Programmiersprachen
Programmiersprachen werden in Webanwendungen, Unternehmenssoftware, Skripting, Datenverarbeitung, Automatisierung und Systementwicklung eingesetzt. HTML und CSS beschreiben vor allem Struktur und Darstellung im Web, waehrend Sprachen wie JavaScript, PHP, Python, Java oder C# Logik, Verarbeitung und Interaktion umsetzen. C++ wird haeufig naeher an System- oder Laufzeitanforderungen eingesetzt, waehrend Ruby oder Perl oft in skript- und anwendungsnahen Umgebungen vorkommen. Welche Sprache sinnvoll ist, haengt vom Zielsystem, vom Entwicklungsumfeld, von vorhandenen Schnittstellen und von Wartbarkeit sowie Teamkompetenz ab.
Relevante Auspraegungen und Teilbereiche
Innerhalb dieser Leistung lassen sich Programmiersprachen nach mehreren Kriterien unterscheiden: objektorientiert, prozedural, funktional oder multiparadigmatisch; statisch oder dynamisch typisiert; kompiliert, interpretiert oder ueber virtuelle Laufzeitumgebungen ausgefuehrt. Zu den Unterleistungen gehoeren konkrete Sprachen und webnahe Technologien wie C#, C++, Java, JavaScript, PHP, Python, Ruby, Perl sowie HTML, HTML5, XHTML und CSS3. Ajax und APIs sind keine Programmiersprachen im engeren Sinn, stehen in diesem Zusammenhang jedoch fuer typische Entwicklungsansaetze und Schnittstellenarbeit, bei denen mehrere Sprachen und Formate zusammenspielen.
Abgrenzung zu verwandten Technologien
Programmiersprachen unterscheiden sich von Algorithmik und Optimierung dadurch, dass sie das Ausdrucksmittel fuer die Implementierung liefern, waehrend Algorithmik die Loesungslogik selbst beschreibt. Gegenueber Blockchain, IoT, KI und Robotik sind sie keine Anwendungsdomaenen, sondern technische Grundlagen, mit denen solche Systeme entwickelt werden. Innerhalb der Hierarchie gehoeren Programmiersprachen damit zur Elternleistung Technologien. Sie stehen auf einer allgemeineren Ebene als einzelne Frameworks, Bibliotheken oder konkrete Softwareprodukte.