diff --git a/Programmierparadigmen.md b/Programmierparadigmen.md new file mode 100644 index 0000000..d4557e4 --- /dev/null +++ b/Programmierparadigmen.md @@ -0,0 +1,77 @@ +### Analyse der verschiedenen Programmiersprachen + +### Java + +• imperative, objektorientierte plattformunabhängige Programmiersprache mit funktionalen Anteilen \ +• strikt typisierte Programmiersprache\ +• enthält Standardbibliothek\ +• automatische Speicherverwaltung\ +• gut testbar\ +• langsamer als C + +### C + +• imperative, prozedurale plattformunabhängige Programmiersprache \ +• typisierte Programmiersprache \ +• hardwarenahe \ +• manuelle Speicherverwaltung\ +• schnell (weil direkte Übersetzung Code in Maschinencode) & wenig Ressourchenverbrauch \ +• relativ kleiner Befehlsatz \ + +### Python + +• imperative, objektorientierte plattformunabhängige Programmiersprache\ +• dynamisch typisierte Programmiersprache\ +• automatische Speicherverwaltung \ +• kombiniert Eigenschaften von Compiler & Interpretersprachen\ +• minimalistisch (klare Syntax, gute Lesbarkeit, wenige Codezeilen, sehr wenige Schlüsselwörter) \ +• geringe Anfälligkeit für Programmierfehler \ +• basiert auf C \ +• als Skriptsprache nutzbar\ + +### Go + +• imperative objektorientierte plattformunabhängige Programmiersprache\ +• statisch typisierte Programmiersprache\ +• automatische Speicherverwaltung\ +• Standardbibliothek\ +• plattformübergreifende Kompilierung (Go-Code auf einem Betriebssystem schreiben & auf anderem kompilieren) \ +• effizient \ +• orientiert sich an C \ +• als Skriptsprache nutzbar\ + +### JavaScript + +• imperative objektorientierte plattformunabhängige Programmiersprache +• dynamisch typisierte Programmiersprache +• automatische Speicherverwaltung +• ähnliche Syntax wie C +• interaktive Benutzeroberfläche +• langsamer +• als Skriptsprache nutzbar + +### TypeScript + +• imperative objektorientierte plattformunabhängige Programmiersprache +• statisch typisierte Programmiersprache +• automatische Speicherverwaltung +• als Skriptsprache nutzbar +• Erweiterung von JavaScript + + +### Weitere Programmierprinzipien + +### DRY - Don't Repeat Yourself + +Der Code sollte nicht wiederholt werden. Stattdessen sollten Funktionen, Klassen oder Module erstellt werden, die den Code wiederverwendbar machen. +Der Code wird dadurch verständlicher, korrekter, robuster und wartbar. + +### DP - Defensive Programming + +Um die Robustheit & Anwendung zu erhöhen, beinhaltet dieses Prinzip das Schreiben von Code, der auf unerwartete Situationen vorbereitet ist & Fehler abfängt. + +### TDD - Test-Driven-Development + +Durch das Schreiben von Tests vor dem eigentlichen Code wird die Korrektheit, Funktionalität und leichtere Wartung sichergestellt. + +