diff --git a/Programmierparadigmen.md b/Programmierparadigmen.md index 0400c1a..0c602b8 100644 --- a/Programmierparadigmen.md +++ b/Programmierparadigmen.md @@ -8,15 +8,25 @@ ### 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) @@ -24,12 +34,19 @@ 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 @@ -37,14 +54,23 @@ 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) @@ -52,14 +78,23 @@ 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 @@ -67,13 +102,21 @@ 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 @@ -81,10 +124,15 @@ 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