Skip to content

Commit 3bd2924

Browse files
committed
i18n: tutorial/de - proofreading of 5th chapter
1 parent 2c63feb commit 3bd2924

File tree

4 files changed

+107
-108
lines changed

4 files changed

+107
-108
lines changed

etc/doc/tutorial/de/05.4-Threads.md

Lines changed: 48 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,21 @@
22

33
# Threads[^1]
44

5-
Mal angenommen, du hast eine Killer-Basslinie und einen krassen Beat
6-
gebaut. Wie kannst du beides zur selben Zeit spielen lassen? Eine
7-
Möglichkeit ist es, beide Sounds per Hand ineinanderzuweben - erst
5+
Mal angenommen, Du hast eine Killer-Basslinie und einen krassen Beat
6+
gebaut. Wie kannst Du beides zur selben Zeit spielen lassen? Eine
7+
Möglichkeit ist es, beide Sounds per Hand ineinander zu weben - erst
88
spielt der Bass ein bisschen, dann das Schlagzeug, dann der Bass etwas
99
mehr... Beides aufeinander zeitlich abzustimmen wird jedoch immer
1010
schwieriger, vor allem, wenn noch mehr Sounds dazukommen sollen.
1111

12-
Was, wenn Sonic Pi Sounds automatisch für dich ineinanderflechten
12+
Was, wenn Sonic Pi Sounds automatisch für Dich ineinanderflechten
1313
könnte? Kann es auch, und zwar mit einem besonderen Ding, welches
1414
*Thread* heisst.
1515

1616
## Unendliche Schleifen
1717

18-
Damit das nächste Beispiel nicht zu kompliziert wird, musst du dir
19-
einfach vorstellen, dass dies deine Killer-Basslinie und dein krasser
18+
Damit das nächste Beispiel nicht zu kompliziert wird, musst Du Dir
19+
einfach vorstellen, dass dies Deine Killer-Basslinie und Dein krasser
2020
Beat sind.
2121

2222
```
@@ -33,11 +33,11 @@ end
3333
```
3434

3535
Wir haben das früher schon besprochen, Schleifen sind wie *schwarze
36-
Löcher* für ein Programm; läuft es einmal in die Schleife, dann kommt
37-
es nicht mehr da raus, bis du den Stopp-Button klickst. Wie also
36+
Löcher* für ein Programm; läuft es einmal in die Schleife kommt
37+
es nicht mehr da raus, bis Du den Stopp-Button klickst. Wie also
3838
können wir beide Schleifen zur selben Zeit abspielen? Wir müssen Sonic
39-
Pi sagen, dass wir einen bestimmten Codeteil gleichzeitig mit dem Rest
40-
des Codes starten möchten. Hierbei helfen uns Threads.
39+
Pi sagen, dass wir einen bestimmten Abschnitt gleichzeitig mit
40+
dem Rest des Codes starten möchten. Hierbei helfen uns Threads.
4141

4242
## Threads kommen zur Hilfe
4343

@@ -59,8 +59,8 @@ end
5959
Indem wir die erste Schleife in einen `in_thread`-do/end-Block
6060
hineinpacken, sagen wir Sonic Pi, es soll den Inhalt dieses
6161
do/end-Blocks *genau zur selben Zeit* wie die nachfolgende Anweisung
62-
ausführen (und das ist in diesem Fall die zweite Schleife). Probier's
63-
aus, und du wirst den Beat zusammen mit der Basslinie hören!
62+
ausführen. Und das ist in diesem Fall die zweite Schleife. Probier's
63+
aus, und Du wirst den Beat zusammen mit der Basslinie hören!
6464

6565
Was nun, wenn wir obendrauf noch einen Synth legen wollten. Ungefähr
6666
so:
@@ -116,20 +116,20 @@ end
116116

117117
## Ablauf in Threads
118118

119-
Was dich vielleicht erstaunt: Wenn du den Ausführen-Button klickst,
120-
erzeugst du tatsächlich einen neuen Thread, innerhalb dessen der Code
121-
abläuft. Deshalb werden immer neue Soundschichten erzeugt, wenn du den
119+
Was Dich vielleicht erstaunt: Wenn Du den Ausführen-Button klickst,
120+
erzeugst Du tatsächlich einen neuen Thread, innerhalb dessen der Code
121+
abläuft. Deshalb werden immer neue Soundschichten erzeugt, wenn Du den
122122
Ausführen-Button wiederholt klickst. Weil die Abläufe Threads sind,
123123
werden sie automatisch die Sounds verflechten.
124124

125125
## Geltungsbereich[^2]
126126

127-
Wenn du dich besser mit Sonic Pi auskennst, wirst du herausfinden, dass
128-
Threads die wichtigsten Bausteine für deine Musik sind. Eine
127+
Wenn Du Dich besser mit Sonic Pi auskennst, wirst Du herausfinden, dass
128+
Threads die wichtigsten Bausteine für Deine Musik sind. Eine
129129
wesentliche Funktion, die Threads haben, ist es, *aktuelle
130130
Einstellungen*, die für einen Thread gelten, von anderen Threads zu
131-
isolieren. Was genau bedeutet das? Wenn du etwa einen Synths mit
132-
`use_synth` durch einen anderen austauschst, dann veränderst du den
131+
isolieren. Was genau bedeutet das? Wenn Du etwa einen Synths mit
132+
`use_synth` durch einen anderen austauschst, dann veränderst Du den
133133
Synth lediglich für den *aktuellen Tread* - kein anderer der laufenden
134134
Treads bekommt den neuen Synth. Sehen wir uns das mal in der Praxis an:
135135

@@ -147,14 +147,14 @@ sleep 1
147147
play 50
148148
```
149149

150-
Hast du gehört, dass sich der mittlere Klang von den anderen beiden
150+
Hast Du gehört, dass sich der mittlere Klang von den anderen beiden
151151
unterschied? Die `use_synth`-Anweisung hat sich nur auf den Thread
152152
ausgewirkt, in dem sie auch stand und nicht auf den äußeren
153153
Haupt-Thread.
154154

155155
## Vererbung
156156

157-
Wenn du einen neuen Thread mit `in_thread` erzeugst, wird dieser vom
157+
Wenn Du einen neuen Thread mit `in_thread` erzeugst, wird dieser vom
158158
vorherigen alle Einstellungen automatisch erben. Sehen wir uns das an:
159159

160160
```
@@ -167,18 +167,18 @@ in_thread do
167167
end
168168
```
169169

170-
Hast du bemerkt, dass der zweite Ton mit dem `:tb303`-Synth gespielt
170+
Hast Du bemerkt, dass der zweite Ton mit dem `:tb303`-Synth gespielt
171171
wird, obwohl er in einem anderen Thread läuft? Jede der Einstellungen,
172172
die mit den unterschiedlichen `use_*`-Ausdrücken vorgenommen wird,
173173
verhält sich genauso.
174174

175-
Wenn neue Threads erzeugt werden, dann erben sie alle Einstellungen von
176-
ihren Eltern; wenn du aber Einstellungen innerhalb dieser neuen Threads
175+
Wenn neue Threads erzeugt werden, erben sie alle Einstellungen von
176+
ihren Eltern; wenn Du aber Einstellungen innerhalb dieser neuen Threads
177177
änderst, haben diese keine Einfluss auf die Eltern-Threads.
178178

179179
## Threads benennen
180180

181-
Schließlich kannst du deinen Treads Namen geben.
181+
Schließlich kannst Du Deinen Treads Namen geben.
182182

183183
```
184184
in_thread(name: :bass) do
@@ -197,8 +197,8 @@ in_thread(name: :drums) do
197197
end
198198
```
199199

200-
Sieh dir das Protokoll-Fenster an, wenn du diesen Code laufen läßt.
201-
Siehst du, wie die Namen der Threads ausgeben werden?
200+
Sieh Dir das Protokoll-Fenster an, wenn Du diesen Code laufen läßt.
201+
Siehst Du, wie die Namen der Threads ausgeben werden?
202202

203203
```
204204
[Run 36, Time 4.0, Thread :bass]
@@ -209,7 +209,7 @@ Siehst du, wie die Namen der Threads ausgeben werden?
209209

210210
Eine letzte Anmerkungen zu Threads mit Namen: Ein mit einem bestimmten
211211
Namen benannter Thread kann zur Zeit nur einmal laufen. Probieren wir
212-
das aus. Sieh dir den folgenden Code an:
212+
das aus. Sieh Dir den folgenden Code an:
213213

214214
```
215215
in_thread do
@@ -221,14 +221,14 @@ end
221221
```
222222

223223
Kopiere das einmal in ein Arbeitsfenster und klicke den
224-
Ausführen-Button. Klick' in noch ein paarmal. Hör' dir diese Kakophonie
224+
Ausführen-Button. Klick' in noch ein paarmal. Hör' Dir diese Kakophonie
225225
mehrerer Amen Breaks an, die ryhtmisch nicht unbedingt passend
226-
zueinander ablaufen. Ok, jetzt kannst du auf Stopp klicken.
226+
zueinander ablaufen. Ok, jetzt kannst Du auf Stopp klicken.
227227

228-
Dieses Verhalten konnten wir schon woanders sehen - wenn du den
228+
Dieses Verhalten konnten wir schon woanders sehen - wenn Du den
229229
Ausführen-Button klickst, legen sich die neuen Klänge über die schon
230-
laufenden. Wenn eine Schleife abläuft, und du den Ausführen-Button
231-
dreimal klickst, bekommst du drei Ebenen mit Schleifen, die simultan
230+
laufenden. Wenn eine Schleife abläuft, und Du den Ausführen-Button
231+
dreimal klickst, bekommst Du drei Ebenen mit Schleifen, die simultan
232232
ablaufen.
233233

234234
Mit benannten Treads ist das jedoch anders:
@@ -243,28 +243,28 @@ end
243243
```
244244

245245
Versuche mit diesem Code den Ausführen-Button mehrmals zu klicken. Du
246-
wirst immer nur eine Amen Break-Schleife hören. Das kannst du auch im
246+
wirst immer nur eine Amen Break-Schleife hören. Das kannst Du auch im
247247
Protokoll sehen:
248248

249249
```
250250
==> Skipping thread creation: thread with name :amen already exists.
251251
```
252252

253-
Sonic Pi sagt dir, dass ein Thread mit dem Namen `:amen` bereits läuft
254-
und es deshalb keinen neuen erzeugt.
253+
Sonic Pi sagt Dir, dass ein Thread mit dem Namen `:amen` bereits läuft
254+
und es deshalb keinen neuen startet.
255255

256-
Vielleicht erscheint dir dieses Verhalten im Moment noch nicht sinnvoll
256+
Vielleicht erscheint Dir dieses Verhalten im Moment noch nicht sinnvoll
257257
- aber es wird sehr nützlich sein, wenn wir ins Live-Coding
258258
einsteigen...
259259

260-
[^1]: Im Deutschen bedeutet *thread* *Kette*, *Faden* oder *Strang*.
261-
Der *Thread* ist jedoch für Programmiersprachen eine so typische Idee,
262-
dass eine Übersetzung nur insoweit Sinn macht, dass du dir die Idee,
263-
die hinter diesem Begriff steht, besser merken kannst. Weil niemand
264-
beim Programmieren über eine Kette oder einen Faden spricht, werden wir
265-
hier nur den englischen Begriff benutzen.
266-
267-
[^2]: *Scope* bedeutet ins Deutsche übersetzt soviel wie
268-
*Geltungsbereich*. Für die Zukunft ist es aber ganz gut, sich den
269-
englischen Begriff zu merken, da auch dieser im Programmierbereich
270-
häufig vorkommt.
260+
[^1]: Im Deutschen bedeutet *thread* *Kette*, *Faden* oder *Strang*.
261+
Der *Thread* ist jedoch für Programmiersprachen eine so typische
262+
Idee, dass eine Übersetzung nur insoweit Sinn macht, dass Du Dir
263+
die Idee, die hinter diesem Begriff steht, besser merken kannst.
264+
Weil niemand beim Programmieren über eine Kette oder einen Faden
265+
spricht, werden wir hier nur den englischen Begriff benutzen.
266+
267+
[^2]: *Scope* bedeutet ins Deutsche übersetzt soviel wie
268+
*Geltungsbereich*. Für die Zukunft ist es aber ganz gut, sich den
269+
englischen Begriff zu merken, da auch dieser im Programmierbereich
270+
häufig vorkommt.

etc/doc/tutorial/de/05.5-Functions.md

Lines changed: 26 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22

33
# Funktionen
44

5-
Wenn du einmal damit angefangen hast, mehr Code zu schreiben, dann
6-
wirst du nach Wegen suchen, wie du die Dinge organisieren und
5+
Wenn Du einmal damit angefangen hast, mehr Code zu schreiben, dann
6+
wirst Du nach Wegen suchen, wie Du die Dinge organisieren und
77
strukturieren kannst, damit alles ordentlicher wird und einfacher zu
8-
verstehen ist. Funktionen sind sehr geeignet, um das zu erreichen. Sie
8+
verstehen ist. Funktionen sind sehr praktisch, um das zu erreichen. Sie
99
geben uns die Möglichkeit, einem Bündel von Codezeilen einen Namen zu
1010
geben. Sehen wir uns das an.
1111

@@ -23,13 +23,13 @@ end
2323
Hier haben wir eine neue Funktion mit dem Namen `foo` definiert. Wir
2424
machen das mit unserem alten Freund, dem do/end-Block und dem
2525
Zauberwort `define` gefolgt von dem Namen, den wir unserer Funktion
26-
geben möchten. Wir müssen die Funktion nicht unbedingt `foo` nennen,
26+
geben möchten. Wir müssen die Funktion nicht unbedingt `foo` nennen,
2727
wir können sie auch irgendwie anders nennen; zum Beispiel `bar`, `baz`
28-
oder idealerweise einen für dich bedeutsamen Namen wie `main_section`
28+
oder idealerweise einen für Dich bedeutsamen Namen wie `main_section`
2929
(etwa: *Hauptteil*) oder `lead_riff` (etwa: *Leitfigur*).
3030

3131
Denk' daran, vor den Funktionsnamen einen Doppelpunkt `:` zu stellen,
32-
wenn du sie definierst.
32+
wenn Du sie definierst.
3333

3434
## Funktionen aufrufen
3535

@@ -54,37 +54,37 @@ end
5454
```
5555

5656
Wir können `foo` sogar in Iterations-Blocks aufrufen und überall da, wo
57-
wir auch `play` oder `sample` hätten benutzen können. Das gibt uns ein
57+
wir auch `play` oder `sample` hätten benutzen können. Das gibt uns eine
5858
große Ausdrucksfreiheit und wir können sinnvolle Worte bilden, die wir
5959
in unseren Kompositionen verwenden.
6060

61-
## Funktionen werden in unterschiedlichen Abläufen erinnert
61+
## Funktionen bleiben in Erinnerung
6262

63-
Wenn du bislang den Ausführen-Button geklickt hast, startete Sonic Pi
63+
Wenn Du bislang den Ausführen-Button geklickt hast, startete Sonic Pi
6464
jedesmal aufs Neue ohne irgendwelche Vorgaben. Es berücksichtigt nichs,
65-
außer dem, was im jeweiligen Arbeitsfenster steht. Du kannst dich nicht
65+
außer dem, was im jeweiligen Arbeitsfenster steht. Du kannst Dich nicht
6666
auf irgendwelchen Code beziehen, der in einem anderen Arbeitsfenster
67-
oder einem anderen Thread steht. Funktionen ändern das jedoch. Wenn du
67+
oder einem anderen Thread steht. Funktionen ändern das jedoch. Wenn Du
6868
eine Funktion definierst, dann erinnert sich Sonic Pi daran. Probieren
69-
wir das aus. Ersetzte den den gesamten Code in deinem Arbeitsfenster
69+
wir das aus. Ersetze den den gesamten Code in Deinem Arbeitsfenster
7070
durch:
7171

7272
```
7373
foo
7474
```
7575

76-
Klick' den Ausführen-Button und höre, wie deine Funktion spielt. Wo
76+
Klick' den Ausführen-Button und höre, wie Deine Funktion spielt. Wo
7777
wurde dieser Code gespeichert? Woher weiss Sonic Pi, was es zu spielen
78-
hat? Sonic Pi hat deine Funktion einfach erinnert - also sogar nachdem
79-
du den Code aus dem Arbeitsfenster gelöscht hast, wusste Sonic Pi, was
80-
du geschrieben hattest. Dies funktioniert nur mit Funktionen, die du
81-
mit `define` (und `defonce`) definiert hast.
78+
hat? Sonic Pi hat sich Deine Funktion einfach gemerkt - also sogar
79+
nachdem Du den Code aus dem Arbeitsfenster gelöscht hast, wusste
80+
Sonic Pi, was Du geschrieben hattest. Dies funktioniert nur mit
81+
Funktionen, die Du mit `define` (und `defonce`) definiert hast.
8282

8383
## Funktionen parametrisieren
8484

85-
Vielleicht interessiert dich, dass du deinen Funktionen beibringen
86-
kannst, Argumente zu übernehmen, genauso, wie du z.B. `rrand` einen
87-
Minimal- und einen Maximalwert übergeben kannst. Sehen wir uns das an:
85+
Du kannst Deinen Funktionen beibringen Argumente zu übernehmen,
86+
genau so, wie Du z.B. `rrand` einen Minimal- und einen Maximalwert
87+
übergeben kannst. Sehen wir uns das an:
8888

8989
```
9090
define :my_player do |n|
@@ -98,8 +98,8 @@ my_player 90
9898

9999
Das ist jetzt nicht besonders aufregend, zeigt aber, worum es hier
100100
geht. Wir haben unsere eigene Version von `play` mit dem Namen
101-
`my_player` erschaffen, die parametrisiert ist - also Argumente
102-
akzeptiert.
101+
`my_player` erschaffen. Diese ist parametrisiert - sie akzeptiert also
102+
Argumente.
103103

104104
Die Parameter müssen nach dem `do` stehen, welches zum `define` des
105105
do/end-Blocks gehört; sie werden von senkrechten Strichen (auch:
@@ -110,8 +110,8 @@ Die Zauberei findet innerhalb des `define`-do/end-Blocks statt. Du
110110
kannst die Parameternamen so benutzen, als wären sie wirkliche Werte.
111111
In diesem Beispiel spiele ich den Ton `n`. Du kannst die Parameter als
112112
eine Art Versprechen ansehen, dass sie durch wirkliche Werte ersetzt
113-
werden, wenn der Code läuft. Das machst du, indem du der Funktion einen
114-
Parameter mitgibst, wenn du sie aufrufst. Ich tue das hier mit
113+
werden, wenn der Code läuft. Das machst Du, indem Du der Funktion einen
114+
Parameter mitgibst, wenn Du sie aufrufst. Ich tue das hier mit
115115
`my_player 80`, um den Ton 80 zu spielen. Innerhalb der
116116
Funktionsdefinition wird `n` nun durch 80 ersetzt, sodass `play n` sich
117117
in `play 80` verwandelt. Wenn ich die Funktion erneut mit `my_player
@@ -140,6 +140,5 @@ Hier habe ich `repeats` so benutzt, als ob es eine Zahl in der Zeile
140140
`repeats.times do` wäre. Zusätzlich habe ich `roots` so verwendet, als
141141
ob es ein Notenname im Aufruf `play` wäre.
142142

143-
Hier kannst du sehen, wie wir sehr aussagekräftig und leicht lesbar
144-
schreiben können, indem wir eine Menge der Logik in eine Funktion
145-
verschieben.
143+
Siehst Du? Unser Code wird sehr aussagekräftig und leichter lesbar,
144+
indem wir eine Menge der Logik in eine Funktion verschieben.

0 commit comments

Comments
 (0)