|
@ -13,7 +13,7 @@ Außerdem kann ich als Developer mit den gelernten vim-Befehlen vor anderen flex |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## SU 02 (31.09.2023) |
|
|
|
|
|
|
|
|
## SU 02 (31.10.2023) |
|
|
|
|
|
|
|
|
### Lernziel |
|
|
### Lernziel |
|
|
- Imperative Programmierung |
|
|
- Imperative Programmierung |
|
@ -39,7 +39,7 @@ Der Ablauf des Programms, also in welcher Reihenfolge alles ausgefuehrt wird, is |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## SU 3 (7.9.2023) |
|
|
|
|
|
|
|
|
## SU 3 (7.11.2023) |
|
|
|
|
|
|
|
|
### Lernziel |
|
|
### Lernziel |
|
|
- Erzeugungsmuster |
|
|
- Erzeugungsmuster |
|
@ -78,3 +78,70 @@ Refactoring bezeichnet die Prozedur, den Code nachhaltig zu verbessern, indem ma |
|
|
oder diesen lesbarer umschreibt. Beim Refactoring wird die Funktion des originalen Codes nicht veraendert. |
|
|
oder diesen lesbarer umschreibt. Beim Refactoring wird die Funktion des originalen Codes nicht veraendert. |
|
|
|
|
|
|
|
|
### Kritik |
|
|
### Kritik |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## SU 4 (14.11.2023) |
|
|
|
|
|
|
|
|
|
|
|
### Lernziel |
|
|
|
|
|
- Sourcecodemanagement |
|
|
|
|
|
- Permanenter Zugang zu dem letzten Arbeitszustand |
|
|
|
|
|
- Zugang zu verschiedenen Zuständen des Codes |
|
|
|
|
|
- Vergleich von unteschieden |
|
|
|
|
|
- Speichert nur die Änderungen(spart Speicherplatz) |
|
|
|
|
|
- Navigation ist einfach |
|
|
|
|
|
|
|
|
|
|
|
- Simple Möglichkeiten zur sicherung des Sourcecodes |
|
|
|
|
|
- lokale Kopien |
|
|
|
|
|
- zip archiv |
|
|
|
|
|
- Kopien im Netz |
|
|
|
|
|
|
|
|
|
|
|
- Zentralisierte SCM |
|
|
|
|
|
- Vorteile |
|
|
|
|
|
- Jeder commit ist verfügbar für alle |
|
|
|
|
|
- wenn einer am Projekt arbeitet wissen das alle und es können keine anderen daran arbeiten |
|
|
|
|
|
- leichte Backup und Wiederherstellung |
|
|
|
|
|
- unendliche Ressource fürs Repository |
|
|
|
|
|
- Nachteile |
|
|
|
|
|
- Zentrale Instanz ist notwending |
|
|
|
|
|
- locking verhindert paralleles Arbeiten |
|
|
|
|
|
|
|
|
|
|
|
- Verteiltes SCM |
|
|
|
|
|
- Vorteile |
|
|
|
|
|
- kein zentraler Server notwendig |
|
|
|
|
|
- mehrere remotes möglich |
|
|
|
|
|
- funktioniert ohne permanente Netzwerkverbindung |
|
|
|
|
|
- impliziete Backups |
|
|
|
|
|
- offline Arbeit - eigene/lokale 'Experimente' bleiben privat |
|
|
|
|
|
- Nachteile |
|
|
|
|
|
- lokaler Verlauf ist nicht synchron |
|
|
|
|
|
- kein Schutz gegen gleichzeitige Änderungen |
|
|
|
|
|
|
|
|
|
|
|
- Git Konzept |
|
|
|
|
|
- basiert auf Veränderungen und nicht auf Dateien |
|
|
|
|
|
- commits sind durch SHA geschützt |
|
|
|
|
|
- branches sind Labels für commits |
|
|
|
|
|
- staging area (Änderungen werden gesammelt bis sich ein commit lohnt) |
|
|
|
|
|
|
|
|
|
|
|
- Commits |
|
|
|
|
|
- sollten klein sein um Konflikte leichter zu lösen |
|
|
|
|
|
- Veränderungen sind leichter zu finden |
|
|
|
|
|
- sollten clean sein |
|
|
|
|
|
|
|
|
|
|
|
- Branches |
|
|
|
|
|
- kommen vom initial commit |
|
|
|
|
|
- jeder Branch hat einen bestimmten Committer |
|
|
|
|
|
- kann unendlich lang gehen |
|
|
|
|
|
- alle commits im Master branch müssen clean sein, weil er an den Kunden geht |
|
|
|
|
|
|
|
|
|
|
|
### Erkenntnis |
|
|
|
|
|
Ich kenne jetzt das Konzept von Git und werde es im Gruppenprojekt verwenden. |
|
|
|
|
|
Außerdem weiß ich jetzt wie ein clean Commit aussieht und kann dadurch das Gruppenprojekt sauber |
|
|
|
|
|
und übersichtlich halten. |
|
|
|
|
|
|
|
|
|
|
|
### Wiederholung |
|
|
|
|
|
Ein Clean Commit ist eine Commmit der nicht zu groß ist. Er sorgt außerdem nicht für Probleme |
|
|
|
|
|
z.B. wenn man eine Methode umbenennt sollte man darauf achten, dass die Methode auch überall im Code umbenannt wird, |
|
|
|
|
|
damit der Code weiterhin funktioniert. Wenn man das nicht macht wäre es kein clean Commit. |
|
|
|
|
|
|
|
|
|
|
|
### Kritik |