1.8 KiB
Programmierparadigmen von verschiedenen Programmiersprachen
Übung 02.11.2023
Java
Imperativ
Objekt-orientiert (OOP)
Streng objekt-orientiert
Konzept: Klassen/Objekte
Vererbung/Kapselung/Polymorphie
Modellierung komplexer Probleme leichter
Wartbar/Skalierbar
Plattform unabhängig
-> Cross-Plattform Kompatibilität
Multi-Threaded
Funktional (seit neueren Versionen)
C
Imperative Programmiersprache
Prozedurale Programmiersprache
Weitergabe von Daten über Funktionen
Typisierte Programmiersprache
-> Streng typisiert
Vorteil: Hardwarenähe, Kompatibilität
Schnelligkeit
Nachteil: Speicherverwaltung
Python
Imperativ
Objekt-orientiert
Klassen und Objekte
Hierarchien
Funktional
Kompakte Syntax
Interpretierte Sprache
Übersetzung in andere Sprachen möglich (Cython, etc.)
Portabilität
Typisierung Dynamisch (Duck Typing)
Go
Modular, imperativ
Breite Palette an Programmierparadigmen
Teilweise Objektorientiert & Funktional
Keine Vererbung
Statt Klassen werden Structs verwendet
Einache, effektive Programmierung
Typisierung: Statisch typisiert
Vor der Kompilierung müssen Typen fest stehen
Mix: Schnelligkeit von C & Anwendungsmöglichkeiten/Simplizität von Python
Multi-Threading
JavaScript
Erweiterung von HTML
Multi-Paradigmen
OOP, Prozedural oder Funktional
Dynamische Typisierung
Anwendung: Interaktive Web-Anwendungen (z.B. Google Maps)
Vorteile: Modernes Erscheinungsbild, Günstiger Server-Traffic (läuft im Browser)
Dynamische Elemente
Event-basiert (Callbacks)
Asynchrone Verarbeitung
TypeScript
Typisiert
Imperativ, OOP
Vererbung
TypeScript hat Einfluss von JavaScript/Java/C#
Baut auf Supermenge von JavaScript Bibliotheken auf
Skalierbarkeit/Wartbarkeit -> Durch Einführung OOP