diff --git a/Lerntagebuch.md b/Lerntagebuch.md index ce0c05f..3d8b817 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -1,6 +1,6 @@ # Mein Lerntagebuch für Programmiermethoden und -werkzeuge -## SU 01 (27.10.2023) +## SU 01 (24.10.2023) ### Lernziel -Organisatorische Informationen @@ -11,11 +11,94 @@ Derzeit liegen noch keine wesentlichen Erkenntnisse vor, die für das Gruppenpro ### Wiederholung Das Gitlab dient als Plattform fuer Studierende, um Projekte miteinander zu bearbeiten und zu teilen. Befehle die ich erlernt habe: --Nano Lerntagebuch.md : Bearbeitung des Lerntagebuchs +-nano Lerntagebuch.md : Bearbeitung des Lerntagebuchs -Git add . -Git commit -Git push ### Kritik --- -## SU 02 (03.11.2023) +## SU 02 (31.10.2023) + +### Lernziel +-Programmiersprachen kennenlernen +-TypeScript und JavaScript ausarbeiten +### Erkenntnis + +### Wiederholung +Prolog +Paradigmen +-Deklarativ +--Programmierbeschreibung ist deklarativ +--aehnlich wie bei +Staerken +Schwaechen +Praxisanwendungen +Logik + +# Java +*Imperativ +*Objektorientiert (OOP) + *Streng objekt-orientiert + *Konzept: Klassen/Objekte + *Vererbung/Kapselung/Polymorphie + *Modellierung komplexer Probleme leichter + *Wartbar/Skalierbar +*Typisierung: Strikt Typisiert +*Plattform-unabhaengig + *Cross-Platform Kompatibilitaet +*Multi-Threaded +*Funktional (seit neueren Versionen) + +# C +*Imperativ (also auch prozedural) + *Weitergabe von Daten über Funktionen +*Streng typisiert +*Vorteile: Hardwarenaee, Kompatibilitaet + *Schnelligkeit +*Zwei Stufen unter den Maschinencode +Nachteil: Speicherverwaltung (selbst übernehmen noetig) + +# Python +*Imperativ +*Objekt-orientiert + *Klassen und Objekte + *Hierachien +*Funktional + *Kompackte Syntax ++Interpretierte Sprache + *Übersetzung in andere Sprache möglich (Cython, etc.) +*Portabilitaet +*Typisierung + *Dynamisch (Duck Typing) + +#Go +*Modular, imperativ +*Breite Palette an Programmierparadigmen +*Teilweise Objektorientiert & Funktional + *Keine Vererbung + *Statt Klassen werden Structs verwendet +*Einfache, effektive Programmierung +*Typisierung: Statisch typisiert + *Vor der Kompilierung müssen Typen fest stehen +*Mix: Schnelligkeit von C & Anwendungsmöglichkeiten/Symplizität von Python +*Multi-Threading + +JavaScript/TypeScript +*Erweiterung von HTML +*Multi-Paradigmen + *OOP, Prozedural oder Funktional +*Dynamische Typisierung +*Anwendung: Interaktive Web-Anwendung (z.B. Google Maps) +*Vorteile: Modernes Erscheinungsbild, Günstiger Server-Traffic (läuft im Browser) + *Dynamische Elemente +*Event-basiert (Callbacks) + *asynchrone Verarbeitung +Typescript +*typisiert +*Imperativ, OOP +*TypeScript hat Einfluss von JavaScript/Java/C# +*Baut auf Supermenge von Javascript Bibliotheken auf +Skalierbarkeit / Wartbarkeit -> Durch Einfuehrung OOP + +SOLID UND STUPID ERARBEITEN