Browse Source

Lerntagebuch auf neusten Stand gebracht

remotes/origin/HEAD
fdai7409 2 years ago
parent
commit
964ddb77b4
  1. 17
      Lerntagebuch.md
  2. 50
      Programmierparadigmen.md

17
Lerntagebuch.md

@ -1,5 +1,7 @@
# Mein Lerntagebuch für Programmiermethoden und -werkzeuge # Mein Lerntagebuch für Programmiermethoden und -werkzeuge
## SU 01 (26.10.2022) ## SU 01 (26.10.2022)
### Lernziel ### Lernziel
- Organisatorisches - Organisatorisches
- Vorstellung des Dozenten - Vorstellung des Dozenten
@ -18,20 +20,23 @@
- Anlegen eines Repositorys - Anlegen eines Repositorys
- Grundlegende Befehle (vim, push, pull, etc.) - Grundlegende Befehle (vim, push, pull, etc.)
### Erkenntnis ### Erkenntnis
Git-Lab ermöglicht das parallele Arbeiten in Team an einem Projekt. SO haben alle Beteiligten immer Zugriff auf die neuste Projekt-Version. Sollte es Probleme mit der aktuellen Softwareversion geben, kann jederzeit auf eine ältere, funktionierende Version zurückgegriffen werden.
Git-Lab ermöglicht das parallele Arbeiten in Team an einem Projekt. So haben alle Beteiligten immer Zugriff auf die neuste Projekt-Version. Sollte es Probleme mit der aktuellen Softwareversion geben, kann jederzeit auf eine ältere, funktionierende Version zurückgegriffen werden.
### Wiederholung ### Wiederholung
mit 'git push' wird mein aktueller Projektstand in GitLab hochgeladen. Dies ist essentiell, damit alle Team-Mitglieder immer an der neusten Version des Projekts arbeiten können und alle auf dem neusten Stand sind. Sollte doch mal etwas nicht funktionieren kann über die Updates in GitLab herausgefunden werden, was genau geändert wurde und dadurch der Fehler gefunden werden. mit 'git push' wird mein aktueller Projektstand in GitLab hochgeladen. Dies ist essentiell, damit alle Team-Mitglieder immer an der neusten Version des Projekts arbeiten können und alle auf dem neusten Stand sind. Sollte doch mal etwas nicht funktionieren kann über die Updates in GitLab herausgefunden werden, was genau geändert wurde und dadurch der Fehler gefunden werden.
---
## SU 02 (02.11.2022) ## SU 02 (02.11.2022)
### Lernziel ### Lernziel
- Kennenlernen verschiedener Programmierparadigmen - Kennenlernen verschiedener Programmierparadigmen
- Unterschiede von Imperativen und Deklarativen Programmiersprachen
- Weitere Unterteilung in Prozdurale und Objektorientierte Programmiersprachen
- Prinzipien der Programmierung "STUPID" und " SOLID" sowie weitere Prinizipien (z.B.: KISS, YAGNI, ...)
- Unterschiede von imperativen und deklarativen Programmiersprachen
- Weitere Unterteilung in prozdurale, objektorientierte und funktionale Programmiersprachen
- typisierte und typenlose Programmiersprachen
- Prinzipien der Programmierung "STUPID" vs. " SOLID" sowie weitere Prinizipien (z.B.: KISS, YAGNI, ...)
### Erkenntnis ### Erkenntnis
Für unser Gruppenprojekt wird sich am Besten eine objektorientierte Programmiersprache eigenen, da diese für gute Struckturierung und bessere Testbarkeit sorgen. So können die anderen Gruppenmitglieder leichter nachvollziehen, was gemacht wurde und Programmteile auch wiederverwenden.
### Wiederholung ### Wiederholung
Bei imperativen Programmiersprachen, wie z.B. Java, laufen Programme in einer vorgegeben Reihenfolge ab. Hier werden genaue Schritt-für-Schritt-Anleitungen benötigt. Bei der deklarativen Programmierung stehen hingegen die Beschreibungen der Probleme im Vordergrund, sodass der Lösungsweg automatisch ermittelt werden kann. Die Programme der deklarativen Programmierung sind meist kürzer als die der Imperativen und Beweise sind leichter durchführbar.

50
Programmierparadigmen.md

@ -0,0 +1,50 @@
# Analysieren Sie die Programmiersprachen hinsichtlich der in der Vorlesung genannten Kriterien
## Java
- Imperative Programmierung
- Objektorientierte Programmierung
- Funktionale Programmierung (ab Version 8)
- typisierte Programmiersprache
### Vorteile:
- gute Testbarkeit durch die Klassen
- Vervollständigung durch IDE
### Nachteile:
- nachtraegliche Aenderungen koennen bestehenden Code brechen
---
##C
- Imperative Programmierung
- Prozedurale Programmierung
- typisierte Programmiersprache
### Vorteile:
- Hierachie von Funktionen, sequentiell abgeareitet
- Uebersichtlichkeit
---
## Python
- ImperativeProgrammierung
- Objektorientierte Programmierung
- typisierte Programmiersprache
### Vorteile:
- Script-Sprache
---
## go
- typisierte Programmiersprache
### Vorteile:
- geringer Speicherbedarf
- wenig Datenstrucktur
---
## JavaScript
- typenlose Programmiersprache
### Vorteile:
- Script-Sprache
- implizite Konvertrierung
### Nachteile:
- Typenfehler treten erst zur Laufzeit des Programms auf
---
## TypeScript
- typisierte Programmiersprache
### Vorteile:
-Script-Sprache
---
#Weitere Programmierprinzipien
- DRY - Don't repeat yourself: Wiederhole dich nicht. COde sollte nict dupliziert und anschließend garnicht oder nur minimal verändert werden.
-
Loading…
Cancel
Save