diff --git a/Programmierparadigmen.md b/Programmierparadigmen.md index d2c9bed..be6c4de 100644 --- a/Programmierparadigmen.md +++ b/Programmierparadigmen.md @@ -1,14 +1,14 @@ # Programmiersprachen: - ## Java +## Java - imperativ - Streng typisiert - objektorientiert - funktionale Sprache + - imperativ + - Streng typisiert + - objektorientiert + - funktionale Sprache - ## C +## C Imperativ Streng typisiert @@ -16,7 +16,7 @@ Schnelligkeit Nachteil: Speicherverwaltung - ## Phyton +## Phyton Imperativ Objektorientiert @@ -30,7 +30,7 @@ Typisierung *Dynamisch (Duck Typing) - ## Go +## Go Modular, imperativ breite Palette an Programmierparadigmen @@ -43,7 +43,7 @@ Schnelligkeit von C & Anwendungsmöglichkeiten/Simplizität von Python Multi-Threading - ## JavaScript/TypeScript +## JavaScript/TypeScript Erweiterung von HTML Multi-Paradigmen @@ -55,7 +55,7 @@ Event-basiert (Callbacks) asynchrone Verarbeitung - ## TypeScript +## TypeScript typisiert imperativ, OOP @@ -66,7 +66,7 @@ # Programmierprinzipien: - ## DO IT +## DO IT (S) eparation of Concern (Programme aufteilen in kleine Teile, Methoden, Funktionen, Prozeduren) (O) pen/Closed Priciple (einfach neue Funktionalität zuzufügen, Änderungen bleiben lockal und haben keine Auswirkunng nach Aussen) @@ -74,7 +74,7 @@ (I) nterface Segregation Principle (Clients sollen nicht gezwungen sein, die Schnittstellen abhängige Methoden zu implementieren. die sie nicht verwenden.Dies führt zu Schnittstellen, die nur die benötigten Methoden enthalten.) (D) ependency Inversion Principle (Teil der Logik in andere Klassen auslagern) - ## DON'T DO IT +## DON'T DO IT (S) ingleton (zur Laufzeit des Programms gibt es nur eine Kopie des Codes) (T) ight Coupling (Teile die nichts miteinander zu tun haben sind sehr verbunden und die kann man nicht teilen)