diff --git a/Lerntagebuch.md b/Lerntagebuch.md index 4ae3ea2..38ff9e8 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -26,10 +26,10 @@ Ein Repository ist ein Ort, an dem zentral Dateien im Kontext von Softwareprojek - Deklarative Programmierung - beschreibung des Problems steht im Vordergrund - Lösungsweg wird automatisch ermittelt - - **Beispiele:** SQL, XSLT, Prolog - kürzer als imperative Programme - mathematische beweise sind einfacher - partiell auswertbar + - **Beispiele:** SQL, XSLT, Prolog - Prozedurale Programmierung - imperativer Algorithmus kann in überschaubare Teile zerlegt werden: - Unterprogramm, Routine, Prozedur, Funktion @@ -42,32 +42,31 @@ Ein Repository ist ein Ort, an dem zentral Dateien im Kontext von Softwareprojek - Objekte, Klassen und Vererbungen werden unterstützt - Kapselung von Daten und Funktionen - Polymorphie - - **Beispiele:** Smalltalk, C++, Java, Kotlin - bessere Struktur - Wiederverwendbarkeit von Programmteilen - bessere Testbarkeit + - **Beispiele:** Smalltalk, C++, Java, Kotlin - Funktionale Programmierung - grundlegende Ausdrücke sind Erzeugungen und Anwendungen von Funktionen - ineinander verschachtelt - Daten fliessen durch das Programm - - **Beispiele:** Lisp, Scala, (C++, Java, Kotlin nicht das Hauptfeature der Sprachen) - Berechnungen effizient und übersichtlich - neue Funktionen können in der Laufzeit generiert werden - für nebenläufige Prozesse geeignet - nur Berechnungen + - **Beispiele:** Lisp, Scala, (C++, Java, Kotlin nicht das Hauptfeature der Sprachen) - typisierte Programmiersprachen - Datentyp von Variablen, Parametern und Rückgabewerten sind festgelegt (implizit oder explizit) - - **Beispiele:** C, C++, Java, Typescript - **Vorteile** - Fehler schneller erkennen - Hilfe durch IDE - Typen müssen zum Programmmierzeitpunkt bekannt sein - nachträgliche Änderung an Typen können den Code brechen + - **Beispiele:** C, C++, Java, Typescript - typenlose Programmiersprachen - Datentyp wird nicht festgelegt - - **Beispiele:** sh, cmd, JavaScript - implizite Konvertierung - Typenfehler treten erst in der Laufzeit auf + - **Beispiele:** sh, cmd, JavaScript **Prinzipien der Programmierung** | SOLID | STUPID |