Skip to content

Commit 4024b5d

Browse files
committed
[CLEANUP] Übungsaufgaben autoformatieren
1 parent c288d53 commit 4024b5d

File tree

3 files changed

+88
-52
lines changed

3 files changed

+88
-52
lines changed

composer/composer-exercises-de.md

Lines changed: 32 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
[zum Cheatsheet](composer-cheatsheet-de.md)
44

55
## Installation
6+
67
1. Prüft, dass PHP lokal installiert ist und im Pfad liegt, und welche Version
78
installiert ist.
89
1. Geht auf https://getcomposer.org/ und schaut, was beim Neuladen der Seite
@@ -16,17 +17,19 @@
1617
1. Lasst ein Composer-Update laufen.
1718

1819
## Grundlagen
20+
1921
1. Erzeugt interaktiv ein neues Composer-Stand-Alone-Projekt.
20-
- Überlegt euch dafür einen Vendor-Namen (entweder für eure Firma oder euch
21-
als Person).
22-
- Nehmt `workshop` als Produktnamen.
23-
- Nehmt `GPL-3.0+` als Lizenz.
24-
- An dieser Steller braucht das Projekt noch keine Abhängkeiten zu haben.
22+
- Überlegt euch dafür einen Vendor-Namen (entweder für eure Firma oder euch
23+
als Person).
24+
- Nehmt `workshop` als Produktnamen.
25+
- Nehmt `GPL-3.0+` als Lizenz.
26+
- An dieser Steller braucht das Projekt noch keine Abhängkeiten zu haben.
2527
1. Schaut euch die generierte `composer.json` an.
2628
1. Schaut euch im Verzeichnis `vendor/` um.
2729
1. Legt eine Datei `bin/start.php` an, die "Hello world!" ausgibt.
2830

2931
## Packagist
32+
3033
1. Geht auf https://packagist.org/ und schaut, welche Pakete besonders beliebt
3134
sind.
3235
1. Schaut euch die Abhängigkeiten und die Beschreibung von `pelago/emogrifier`
@@ -41,6 +44,7 @@
4144
1. Findet heraus, welche Pakete der User "oliverklee" maintaint.
4245

4346
## Abhängigkeiten
47+
4448
1. Fügt das Paket `phpunit/php-timer` als Abhängigkeit hinzu.
4549
1. Schaut euch die generierte `composer.lock` an und schaut euch im Verzeichnis
4650
`vendor/` um.
@@ -78,22 +82,26 @@
7882
untereinander an und versucht, diese Struktur zu verstehen.
7983

8084
## Autoloading und Verzeichnisstruktur
85+
8186
1. Schaut euch die empfohlene
8287
[PHP-Projekt-Verzeichnisstruktur](https://github.com/php-pds/skeleton) an.
8388
1. Überlegt euch einen Vendor- und Produkt-PHP-Namespace für euer
8489
Übungsprojekt.
85-
1. Legt im Unter-Namespace `Service` eine Klasse `Greeter` an, die lediglich eine
90+
1. Legt im Unter-Namespace `Service` eine Klasse `Greeter` an, die lediglich
91+
eine
8692
statische Methode `greet` hat, und verschiebt das Hello-World dahin. Benutzt
8793
diese Methode dann in der `start.php` und alles.
88-
1. Verschafft euch einen Überblick, welche [PSR-Standards](https://www.php-fig.org/psr/)
94+
1. Verschafft euch einen Überblick,
95+
welche [PSR-Standards](https://www.php-fig.org/psr/)
8996
es gibt und was die einzelnen Standards grob abdecken.
9097
1. Lest euch die folgenden Standards durch:
91-
- PSR-4
92-
- PSR-1
93-
- PSR-2
94-
- PSR-12
98+
- PSR-4
99+
- PSR-1
100+
- PSR-2
101+
- PSR-12
95102

96103
## Globale Installation
104+
97105
1. Findet heraus, wie ihre Composer-Pakete global installiert.
98106
1. Installiert das Paket `friendsofphp/php-cs-fixer` global.
99107
1. Kopiert euch bestehendes Projekt lokal auf die Platte.
@@ -103,10 +111,12 @@
103111
1. Installiert euch global das Paket `phpstan/phpstan`.
104112
1. Fügt für eurer Projekt eine `composer.json` hinzu und tragt dort [Autoloading
105113
per Classmap](https://getcomposer.org/doc/04-schema.md#classmap) ein.
106-
1. Schaut euch die [Dokumentation zu PhpStan](https://github.com/phpstan/phpstan)
114+
1. Schaut euch
115+
die [Dokumentation zu PhpStan](https://github.com/phpstan/phpstan)
107116
an und prüft euren Code mit PhpStan mit verschiedenen Rule-Levels.
108117

109118
## Weitere Befehle
119+
110120
1. Erzeugt ein neues Projekt aus `phplist/base-distribution` und schaut an, was
111121
dabei herauskommt.
112122
1. Erzeugt ein neues Projekt aus `helhum/typo3-distribution` und erzeugt dabei
@@ -118,11 +128,13 @@
118128
1. Überprüft, ob die `composer.json` valide ist.
119129

120130
## Composer und Git
131+
121132
1. Schaut euch die .gitgnore der beiden Projekte an, die ihr mit
122133
`composer create-project` erzeugt habt, und versteht, warum welche Sachen
123134
ignoriert bzw. nicht ignoriert werden.
124135

125136
## Weitere Repositories
137+
126138
1. Legt in eurem Übungsproject ein Verzeichnis `packages/greeter` an und legt
127139
in diesem Verzeichnis ein Composer-Paket an. Verschiebt die Greeter-Klasse
128140
dorthin, bindet das Verzeichnis `packages` als
@@ -134,21 +146,22 @@
134146
darüber.
135147

136148
## Composer-Scripts
149+
137150
1. Führt in dem phpList-Distribution-Projekt das Composer-Skript
138151
`list-modules` aus.
139152
1. Schaut euch die [Composer-Skripte von Emogrifier
140153
](https://github.com/MyIntervals/emogrifier/blob/master/composer.json)
141154
an.
142155
1. Installiert in eurem Projekt, über das ihr `php-cs-fixer` habt laufen
143156
lassen, die folgenden Pakete als Dev-Abhängigkeiten:
144-
- PHP_CodeSniffer
145-
- PHPMD
146-
- PHPStan
157+
- PHP_CodeSniffer
158+
- PHPMD
159+
- PHPStan
147160
1. Richtet euch Composer-Scripte mit diesen Namen ein, die euren Code checken:
148-
- `ci:static:lint` (ruft `php -l` auf eurem Sourcecode auf)
149-
- `ci:static:sniff`
150-
- `ci:static:phpmd`
151-
- `ci:static:phpstan`
161+
- `ci:static:lint` (ruft `php -l` auf eurem Sourcecode auf)
162+
- `ci:static:sniff`
163+
- `ci:static:phpmd`
164+
- `ci:static:phpstan`
152165
1. Richtet euch ein Composer-Script `ci:static` ein, das die anderen drei
153166
Scripts nacheinander aufruft.
154167
1. Schaut euch in dem phpList-Distribution-Projekt das Composer-Script

git/git-exercises-de.md

Lines changed: 40 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,11 @@
33
Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
44

55
## Git-Installation
6+
67
1. Installiert euch Git (siehe die [README](README.md)).
78

89
## Bash/Linux-Kommandozeile
10+
911
1. Lasst euch anzeigen, in welchem Verzeichnis ihr gerade seid.
1012
1. Lasst euch anzeigen, welche Verzeichnisse und Dateien es im aktuellen
1113
Verzeichnis gibt.
@@ -26,6 +28,7 @@ Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
2628
1. Schaut, dass die Datei jetzt tatsächlich nicht mehr existiert.
2729

2830
## Git-Konfiguration
31+
2932
1. Richtet euch Tab-Autovervollständigung für Git ein. Ihr könnt es testen,
3033
indem ihr `git check` tippt und dann Tab drückt. Wenn aus `check` ein
3134
`checkout` wird, tut's die Autovervollständigung.
@@ -35,6 +38,7 @@ Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
3538
Mailadresse.
3639

3740
## Lokales Arbeiten
41+
3842
1. Lasst euch anzeigen, welche Git-Version ihr benutzt.
3943
1. Lasst euch die Git-Hilfe anzeigen.
4044
1. Lasst euch die Git-Hilfe für `git init` anzeigen. Falls die Hilfe auf der
@@ -73,17 +77,22 @@ Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
7377
1. Lasst euch das Log einzeilig anzeigen.
7478

7579
## Schadensbegrenzung
80+
7681
1. Bearbeitet die `hans.txt` und fügt diese zum letzten Commit hinzu.
7782
1. Lasst euch das Log anzeigen.
78-
1. Bearbeitet `hans.txt` und setzt die Datei dann wieder die Version aus dem letzten Commit zurück.
79-
1. Setzt `hans.txt` auf die Version auf dem vorletzten Commit zurück (ohne zu committen).
83+
1. Bearbeitet `hans.txt` und setzt die Datei dann wieder die Version aus dem
84+
letzten Commit zurück.
85+
1. Setzt `hans.txt` auf die Version auf dem vorletzten Commit zurück (ohne zu
86+
committen).
8087
1. Macht den kompletten letzten Commit rückgängig.
8188
1. Ändert eine Datei. Bringt die Änderungen mit dem Stash in Sicherheit.
8289
1. Holt die Änderungen wieder aus dem Stash.
8390
1. Setzt die Datei wieder auf den Ursprungszustand zurück.
8491

8592
## Branches
86-
1. Lasst euch anzeigen, welche Branches es gibt und auf welchem Branch ihr gerade seid.
93+
94+
1. Lasst euch anzeigen, welche Branches es gibt und auf welchem Branch ihr
95+
gerade seid.
8796
1. Legt einen Branch `pinguin` an.
8897
1. Wechselt auf den Branch.
8998
1. Legt in dem Branch eine Datei `watscheln.txt` an und committet sie.
@@ -100,12 +109,14 @@ Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
100109
1. Findet die Commit-IDs der beiden Eltern-Commits des Merge-Commits
101110
und vollzieht die Commit-IDs und die Struktur per `gitk` nach.
102111
1. Löscht den `pinguin`-Branch.
103-
1. Legt mit einem Kommando einen Branch `nacktmull` an und wechselt direkt in den Branch.
112+
1. Legt mit einem Kommando einen Branch `nacktmull` an und wechselt direkt in
113+
den Branch.
104114
1. Legt eine Datei `frittiertes-mars.txt` an und committet sie.
105115
1. Wechselt wieder in den `master`.
106116
1. Löscht den `nacktmull`-Branch, ohne ihn zu mergen.
107117

108118
## Rebase und Konflikte
119+
109120
1. Legt einen Branch `tee` an, wechselt in den Branch, legt dort eine Datei
110121
`earl grey.txt` (mit Leerzeichen!) mit ein paar Zeilen Text an und committet
111122
sie.
@@ -124,19 +135,21 @@ Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
124135
einen anderen Branch.
125136

126137
## RSA-Keys und Accounts
138+
127139
1. Erzeugt euch ein RSA-Schlüsselpaar **ohne Passphrase** (falls noch nicht
128140
geschehen). Hier die Anleitungen, wie man das unter Windows macht:
129-
- https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
130-
- https://dhue.de/git-fur-windows-installieren-und-ssh-keys-nutzen/
131-
- https://jdblischak.github.io/2014-09-18-chicago/novice/git/05-sshkeys.html
141+
- https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
142+
- https://dhue.de/git-fur-windows-installieren-und-ssh-keys-nutzen/
143+
- https://jdblischak.github.io/2014-09-18-chicago/novice/git/05-sshkeys.html
132144
1. Loggt euch bei GitHub ein und ladet euren öffentlichen RSA-Schlüssel hoch.
133-
- https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/
145+
- https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/
134146
1. Teilt Oliver euren GitHub-Usernamen mit und bittet ihn, euch zum
135147
Übungs-Repository hinzuzufügen.
136148
1. Klont euch per SSH das Repository unter `https://github.com/symfony/demo`.
137149
Werft es nicht weg - ihr braucht es später noch.
138150

139151
## Verteiltes Arbeiten
152+
140153
1. Klont euch das Übungsrepository von GitHub/GitLab. Achtet dabei darauf,
141154
dass ihr es per SSH klont und nicht per HTTPS.
142155
1. Wechselt in das Verzeichnis des geklonten Repositories.
@@ -163,7 +176,9 @@ Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
163176
1. Rebased den Branch `bugfix` auf `release`.
164177

165178
## Noch mehr Schadensbegrenzung
166-
1. Erzeugt einen Branch nicht von `master`, sondern vom vorletzten Commit von `master`.
179+
180+
1. Erzeugt einen Branch nicht von `master`, sondern vom vorletzten Commit von
181+
`master`.
167182
Löscht den Branch dann wieder.
168183
1. Schaut euch das Reflog an.
169184
1. Stellt den gelöschten Branch `nacktmull` wieder her.
@@ -180,7 +195,8 @@ Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
180195
dieser Datei - das wäre im Sinne dieser Übung.) Setzt danach das Repository
181196
wieder in einen jungfräulichen Zustand zurück.
182197
1. Rebased den Branch `bugfix` auf `development`.
183-
1. Findet 3 unterschiedliche Wege, wieder einen Branch `bugfix` zu haben, der wieder
198+
1. Findet 3 unterschiedliche Wege, wieder einen Branch `bugfix` zu haben, der
199+
wieder
184200
`release` plus die Inhalte der Commits aus `bugfix` enthält.
185201
1. Legt zwei Dateien um Hauptverzeichnis eures Projektes an. Räumt diese mit
186202
Git-Bordmitteln wieder weg.
@@ -192,6 +208,7 @@ Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
192208
1. Führt die Garbage-Collection aus. Und jetzt noch einmal aggressiv.
193209

194210
## .gitignore und .gitattributes
211+
195212
1. Bearbeitet die `.gitignore so`, dass Dateien in allen Verzeichnissen
196213
ignoriert werden, die Endung `.bak` haben. Testet dies.
197214
1. Sorgt dafür, dass das Verzeichnis `.idea/` nur im Projekt-Wurzelverzeichnis
@@ -207,6 +224,7 @@ Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
207224
minifizierten Bootstrap-CSS.
208225

209226
## Tags und Releases
227+
210228
1. Lasst euch im Spielwiesen-Projekt lokal alle Tags anzeigen.
211229
1. Erzeugt im Spielwiesen-Projekt ein annotiertes Tag für euren Geburtstag,
212230
z.B. `v2.4.75` für den 2.4.1975.
@@ -225,6 +243,7 @@ Die nötigen Befehle findet ihre im [Git-Cheatsheet](git-cheatsheet-de.md).
225243
## Arbeiten mit Merge-Requests/Pull-Requests
226244

227245
Rollen:
246+
228247
- **A:** Autor:in
229248
- **R:** Reviewer:in
230249

@@ -247,7 +266,8 @@ Rollen:
247266
1. **R:** Reviewt den Pull-Request eures Buddys, lobt per Kommentar eine Zeile,
248267
bittet per Kommentar an einer Zeile um eine Änderung
249268
und markiert den Review als "Änderungen benötigt".
250-
1. **A:** Macht auf eurem eigenen Branch die gewünschten Änderungen, legt diese in
269+
1. **A:** Macht auf eurem eigenen Branch die gewünschten Änderungen, legt diese
270+
in
251271
einem neuen Commit ab und pusht euren Branch.
252272
Kommentiert den Kommentar außerdem mit "Done.".
253273
1. **R:** Schaut euch den aktualisierten PR an.
@@ -256,9 +276,9 @@ Rollen:
256276
1. **A:** Übernehmt in eurem eigene PR die Änderung, holt euch den Commit auf
257277
lokal, squasht, und force-pusht.
258278
1. **R:** Schlagt diesmal weitere Änderungen vor:
259-
* eine, die zwei Zeilen ändert
260-
* eine, die aus einer Zeile zwei macht
261-
* eine, die eine existierende Zeile löscht
279+
* eine, die zwei Zeilen ändert
280+
* eine, die aus einer Zeile zwei macht
281+
* eine, die eine existierende Zeile löscht
262282
1. **A:** Übernehmt die von eurem Buddy vorgeschlagene Änderungen.
263283
Squasht diesmal nicht.
264284
1. **R:** Reviewt das Endergebnis, genehmigt den PR mit ein paar lobenden
@@ -287,16 +307,17 @@ Rollen:
287307
1. **A:** Übernehmt in eurem eigene MR die Änderung, holt euch den Commit auf
288308
lokal, squasht, und force-pusht.
289309
1. **R:** Schlagt diesmal weitere Änderungen vor:
290-
* eine, die zwei Zeilen ändert
291-
* eine, die aus einer Zeile zwei macht
292-
* eine, die eine existierende Zeile löscht
310+
* eine, die zwei Zeilen ändert
311+
* eine, die aus einer Zeile zwei macht
312+
* eine, die eine existierende Zeile löscht
293313
1. **A:** Übernehmt die von eurem Buddy vorgeschlagene Änderungen.
294314
Squasht diesmal nicht.
295315
1. **R:** Reviewt das Endergebnis, genehmigt den MR mit ein paar lobenden
296316
Worten (z.B. "LGTM"), und mergt ihn. Squasht dabei die Commits und bearbeitet
297317
die Commit-Message.
298318

299319
## Commit-Messages
320+
300321
1. Lest euch den
301322
[Artikel über gute Commit-Message](https://chris.beams.io/posts/git-commit/)
302323
durch.
@@ -306,7 +327,8 @@ Rollen:
306327
den Empfehlungen aus dem Artikel entspricht, und verbessert sie.
307328
Präsentiert dann die Vorher- und Nachher-Version beider Commit-Messages der
308329
Gruppe.
309-
1. Sucht euch eine Commit-Message von euch selbst in eurem echten Projekt heraus,
330+
1. Sucht euch eine Commit-Message von euch selbst in eurem echten Projekt
331+
heraus,
310332
verbessert die komplette Message (mit Beschreibung), und präsentiert sie der
311333
Gruppe.
312334

php-advanced/exercises-de.md

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -78,20 +78,20 @@ Hello, Oliver!
7878
Werte mit dem nicht-strikten Vergleichsoperator `==` vergleicht und in einer
7979
Tabelle die Ergebnisse "yes" bzw. "no" ausgibt. Benutzt `var_export`, um
8080
die Werte mit erkennbaren Typen zu erhalten.
81-
- 0
82-
- 0.0
83-
- "0.0"
84-
- 1
85-
- 1.0
86-
- "0"
87-
- "1"
88-
- "true"
89-
- false
90-
- true
91-
- null
92-
- 42
93-
- "42"
94-
- "42 cups"
81+
- 0
82+
- 0.0
83+
- "0.0"
84+
- 1
85+
- 1.0
86+
- "0"
87+
- "1"
88+
- "true"
89+
- false
90+
- true
91+
- null
92+
- 42
93+
- "42"
94+
- "42 cups"
9595

9696
## OOP
9797

@@ -227,7 +227,8 @@ behebt.
227227
1. Testet, dass die Exceptions tatsächlich geworfen werden.
228228
1. Wrappt den Code in `console` in ein catch und gebt eine etwaige Exception
229229
schön auf der Konsole aus.
230-
1. Schreibt eine eigene Exception-Klasse `ZipReaderException extends RuntimeException`
230+
1. Schreibt eine eigene Exception-Klasse
231+
`ZipReaderException extends RuntimeException`
231232
und benutzt diese beim Lesen der ZIP-Datei.
232233
1. Lest euch den PSR-3-Standard durch.
233234
1. Baut die Exceptions so um, dass ihr den Symfony-Console-Logger nutzt. Lasst

0 commit comments

Comments
 (0)