diff --git a/Lerntagebuch.md b/Lerntagebuch.md index c518a57..b387150 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -19,11 +19,34 @@ -> Das committen einer erstellen oder veränderten Datei und das anschließende pushen der Datei. ### Wiederholung --> Ein Lerntagebuch wird mit Hilfe von git hub und dem vim Editor erstellt. Dortwird auf die wesentlichen Inhalte der letzten Vorlesung/Übung eingegangen. Das fertige Lerntagebuch wird anschließend mit git push auf das gitlab geladen. +-> Ein Lerntagebuch wird mit Hilfe von git hub und dem vim Editor erstellt. +Dortwird auf die wesentlichen Inhalte der letzten Vorlesung/Übung eingegangen. +Das fertige Lerntagebuch wird anschließend mit git push auf das gitlab geladen. ### Kritik +--- +----------------------------------------- ---- +## SU 01 (31.10.2023) + +### Lernziel +-> Programmierparadigmen +-> Entwurfsmuster Vor- und Nachteile +-> Geschichte der Programmierwerkzeuge +-> Integrated Development Environment + +### Erkenntnis +-> Es gibt verschiedene anwendbare Programmiersprachen für das Gruppenprojekt. +-> Entwurfsmuster sind Lösungsschablonen für wiederkehrende Entwurfsprobleme. + +### Wiederholung +-> C gehört zur Imperativen Programmierung, welche von der Prozeduralen Programmierung ergänzt wird. +Außerdem ist C sehr Hardware nahe und schnell in der Ausführung. +Der einzige Nachteil liegt in der Speicherverwaltung. + +### Kritik +--- +----------------------------------------- diff --git a/Programmierparadigmen.md b/Programmierparadigmen.md new file mode 100644 index 0000000..201ad64 --- /dev/null +++ b/Programmierparadigmen.md @@ -0,0 +1,63 @@ +### Programmiersprache C: + +Imperative Programmierung besteht aus einer Folge von Anweisungen. +Weitergabe von Daten über Funktionen + +Vorteil: C ist sehr Hardware nahe und lässt sich einfach auf andere Systeme übertragen. + C Programme sind schnell in der Ausführung und benötigen wenige Ressourcen. + +Imperative Prog. wird von der Prozeduralen Programmierung ergänzt. + +Der Algorithmus wird in überschaubare Teile zerlegt (Funktionen). + +Ist eine typisierte Programmiersprache.(Datentypen werden festgelegt.) + +Nachteil: Speicherverwaltung + +## Java +Imperativ + +Objektorientiert +Streng objekt-orientiert +Konzept: Klassen/Objekte +Vererbung/Kapselung/Polymorphie +Modellierung komplexer Probleme leichter + +Platform-unabhängig +Cross-Platform Kompatibilität + +Multi-Threaded + +Funktional + +##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 + +Einfache, effektive Programmierung + +Typisierung: Statisch typisiert +Vor der Kompilieruung müssen Typen fest stehen + +