Inhaltsverzeichnis
Übersicht aller Programmiersprachen
Hier ist eine Liste mit der Übersicht aller relevanten Programmiersprachen und ihren häufigsten Anwendungsgebiete.
C
1.1 Einsatzgebiete
- Betriebssystem-Kernel (z. B. Linux, Windows)
- Eingebettete Systeme und IoT-Geräte
- Gerätetreiber und hardwarenahe Firmware
- Performance-kritische Systembibliotheken
1.2 Objektorientiert
Nein (Rein prozedurales Programmierparadigma)
1.3 Compiler benötigt
Ja (Direkte Kompilierung in maschinenspezifischen Binärcode)
1.4 Komplexität
Hoch (Minimalistischer Sprachumfang, aber manuelle Speicherverwaltung über Pointer)
C#
2.1 Einsatzgebiete
- Enterprise-Software und Backend-Services
- Windows-Desktop-Anwendungen (.NET Framework / .NET)
- Spieleentwicklung (primäre Sprache der Unity-Engine)
- Cross-Platform-Apps (z. B. mit .NET MAUI)
2.2 Objektorientiert
Ja (Streng objektorientiert mit modernen Erweiterungen)
2.3 Compiler benötigt
Ja (Kompiliert in Common Intermediate Language (CIL), Ausführung via Just-In-Time-Compiler in der CLR)
2.4 Komplexität
Mittel bis Hoch (Umfangreicher Sprachschatz, aber automatische Speicherverwaltung erleichtert den Einstieg)
C++
3.1 Einsatzgebiete
- High-End-Spieleentwicklung (z. B. Unreal Engine)
- Grafik- und Videoschnittsoftware (z. B. Adobe-Produkte)
- Echtzeitsysteme und Hochfrequenz-Handelsplattformen
- Webbrowser-Engines (z. B. V8, Blink)
3.2 Objektorientiert
Ja (Unterstützt Mehrfachvererbung, ist jedoch eine Multiparadigmen-Sprache)
3.3 Compiler benötigt
Ja (Direkte Kompilierung in hochoptimierten, nativen Maschinencode)
3.4 Komplexität
Sehr hoch (Komplexe Features wie Zeigerarithmetik, RAII, Templates und manuelle Speicherverwaltung)
Bearbeiten
CSS
4.1 Einsatzgebiete
- Optische Gestaltung und Layoutierung von Webseiten
- Responsive Design für verschiedene Bildschirmgrößen
- Animationen und visuelle Effekte im Webbrowser
4.2 Objektorientiert
Nein (Keine Programmiersprache, sondern eine deklarative Stylesheet-Sprache)
4.3 Compiler benötigt
Nein (Wird direkt vom Rendering-Engine des Browsers interpretiert)
4.4 Komplexität
Gering bis Mittel (Syntax ist extrem einfach, die Kaskadierung und Layout-Logiken fehlerfrei zu beherrschen erfordert jedoch Übung)
HTML
5.1 Einsatzgebiete
- Strukturierung und semantischer Aufbau von Dokumenten im World Wide Web
- Definition von Texten, Hyperlinks, Formularen und Medienelementen im Browser
5.2 Objektorientiert
Nein (Keine Programmiersprache, sondern eine reine Auszeichnungssprache / Markup Language)
5.3 Compiler benötigt
Nein (Wird nativ vom Webbrowser in das Document Object Model (DOM) übersetzt)
5.4 Komplexität
Gering (Sehr flache Lernkurve, da keinerlei Programmierlogik oder Kontrollstrukturen existieren)
Java
6.1 Einsatzgebiete
- Große Unternehmensanwendungen (Enterprise Backends)
- Android-App-Entwicklung (traditionell und via Frameworks)
- Cloud-Infrastrukturen und Big-Data-Anwendungen (z. B. Apache Hadoop)
6.2 Objektorientiert
Ja (Erzwingt Klassenstrukturen; fast alles muss innerhalb einer Klasse definiert sein)
6.3 Compiler benötigt
Ja (Kompiliert in plattformunabhängigen Bytecode, der auf der Java Virtual Machine (JVM) ausgeführt wird)
6.4 Komplexität
Mittel (Strikte Typisierung und automatische Speicherverwaltung sorgen für hohe Wartbarkeit, Code ist jedoch oft langatmig / verbose)
JavaScript
7.1 Einsatzgebiete
- Clientseitige Interaktivität und Dynamik auf Webseiten
- Serverseitige Backend-Entwicklung (via Node.js)
- Mobile Apps (z. B. mit React Native) und Desktop-Apps (via Electron)
7.2 Objektorientiert
Ja (Nutzt prototypenbasierte Vererbung, moderne Versionen bieten jedoch vertraute `class`-Syntax)
7.3 Compiler benötigt
Nein (Traditionell eine interpretierte Skriptsprache; moderne Browser-Engines optimieren den Code zur Laufzeit über JIT-Kompilierung)
7.4 Komplexität
Gering bis Mittel (Schnelle sichtbare Erfolge im Browser, fortgeschrittene asynchrone Konzepte und Typschwächen erfordern jedoch Aufmerksamkeit)
Swift
8.1 Einsatzgebiete
- Native App-Entwicklung für das Apple-Ökosystem (iOS, macOS, iPadOS, watchOS, tvOS)
- Gelegentlicher Einsatz bei modernen Server-Backends
8.2 Objektorientiert
Ja (Multiparadigmen-Sprache mit starkem Fokus auf Protokoll-orientierte und funktionale Programmierung)
8.3 Compiler benötigt
Ja (Nutzt das LLVM-Compiler-Framework für die Übersetzung in schnellen Maschinencode)
8.4 Komplexität
Mittel (Moderne, intuitive Syntax; Sicherheitsfeatures wie Optionals erfordern zu Beginn Umdenken, verhindern aber Laufzeitabstürze)
PowerShell
9.1 Einsatzgebiete
- Systemadministration und Automatisierung (primär Windows, auch Linux)
- Cloud-Ressourcenmanagement (z. B. Microsoft Azure, AWS)
- Konfigurationsmanagement und CI/CD-Pipelines
9.2 Objektorientiert
Ja (Gibt im Gegensatz zu textbasierten Shells wie Bash echte .NET-Objekte durch die Pipeline weiter)
9.3 Compiler benötigt
Nein (Interpretierte Skriptsprache und interaktive Befehlszeilen-Shell)
9.4 Komplexität
Mittel (Einfache Befehle/Cmdlets sind schnell gelernt; fortgeschrittene Skripte verlangen Verständnis der objektbasierten Pipeline)