|
|
@ -1,2 +1,40 @@ |
|
|
|
Vorlesung(2.11.2022) |
|
|
|
|
|
|
|
Lernziele |
|
|
|
|
|
|
|
Es gibt viele Arten von programmierParadigmen: |
|
|
|
1. Imperative programmierung erklärt, dass ein Programm aus einer Folge von Anweisungen besteht, die vorgeben, |
|
|
|
in welcher Reihenfolge was vom Computer getan werden soll. |
|
|
|
2. Bei Deklarative Programmierung steht die Beschreibung des Problems im Vordergrund. Danach wird der Lösungsweg automatisch ermittelt. |
|
|
|
3. Die prozedurale Programmierung ergänzt das imperative Konzept aufeinander folgender Befehle um den Ansatz, |
|
|
|
einen Algorithmus in überschaubare Teile zu zerlegen. |
|
|
|
4. Objektorientierte Programmierung, wie der Name beschreibt, bezieht sich auf eine Prorammiersprache(Java :D), |
|
|
|
welche Objekte, Kalssen und Vererbung unterstützt. |
|
|
|
5. Funktionalen Programmierung ist eine Verfeinerung der deklarative Progammierung, |
|
|
|
bei dem die grundlegenden Ausdrücke die Erzeugung von Funktionen (die Abstraktion) und |
|
|
|
die Anwendung von Funktionen (die Applikation) sind. Aber nur für Berechnungen. |
|
|
|
6. Bei typisierten Progammiersprachen wird für Variablen sowie Parameter und Rückgabewerte von Prozeduren festgelegt, |
|
|
|
von welchem Datentypen sie sind(int oder void und so weiter). |
|
|
|
7. Typenlose Programmiersprachen ist das Gegenteil von typisierte Programmiersprache. |
|
|
|
den Typ von Variablen, Parametern und Rückgabewerten wird nicht festgelegt. |
|
|
|
8. SOLID vs STUPID |
|
|
|
|
|
|
|
SOLID |
|
|
|
Seperation of Concern |
|
|
|
Open/closed Principle |
|
|
|
Liskov Substitution Principle |
|
|
|
Interface Segregation Principle |
|
|
|
Dependency Inversion Principle |
|
|
|
|
|
|
|
STUPID |
|
|
|
Singleton |
|
|
|
Tight Coupling |
|
|
|
Untestability |
|
|
|
Premature Optimization |
|
|
|
Indescriptive Naming |
|
|
|
Duplication |
|
|
|
|
|
|
|
Kritik |
|
|
|
|
|
|
|
Keep It Simple and Stupid(Komplezität soll vermieden werden). |
|
|
|
|