1
00:00:00,160 --> 00:00:02,080
Come on ist nicht dein ernst, 
dass du es warst? 

2
00:00:02,240 --> 00:00:04,920
Ja doch, sag mal, es ist nicht 
dein ernst, dass du das fragst. 

3
00:00:04,920 --> 00:00:05,880
Ja, wirklich, weiß du. 
Nicht. 

4
00:00:06,720 --> 00:00:11,240
Es ist no. 
Bad Coding Buddies Dein Podcast 

5
00:00:11,240 --> 00:00:13,600
rund um Softwareentwicklung und 
aktueller Tech News. 

6
00:00:14,240 --> 00:00:29,480
Herzlich Willkommen. 
Halli Hallo und Herzlich 

7
00:00:29,480 --> 00:00:32,720
Willkommen zum Coding Buddies 
Podcast. 

8
00:00:32,720 --> 00:00:37,880
Es ist wieder Zeit für die 
nächste Folge und zwar mit mir, 

9
00:00:37,880 --> 00:00:42,800
dem Fabi und natürlich mit Tino,
der hier schon wartet. 

10
00:00:42,800 --> 00:00:44,640
Auf der anderen Seite im 
Bildschirm. 

11
00:00:46,400 --> 00:00:49,480
Tino, Wie geht's? 
Was geht ab? 

12
00:00:49,480 --> 00:00:53,840
Fabi Ja, mir geht's gut, mir 
geht's gut, ja alles fit soweit 

13
00:00:54,000 --> 00:00:57,840
alles alles fit klingt alles 
fit, klingst n bisschen fertig 

14
00:00:57,840 --> 00:01:00,520
hab ich so das Gefühl, aber es 
scheint zu trüben. 

15
00:01:02,160 --> 00:01:05,080
Naja weißt du, man will sich ja 
nicht beschweren, oder wie heißt

16
00:01:05,080 --> 00:01:06,920
das immer so schön? 
Nee alles gut, ich bin n 

17
00:01:06,920 --> 00:01:10,400
bisschen nicht ganz bei 100% 
Energie, aber es ist alles nur 

18
00:01:10,400 --> 00:01:13,800
im grünen Bereich, der eilt hier
weißt du manche Tage da ist man 

19
00:01:13,800 --> 00:01:17,520
einfach so n bisschen müde. 
Ja, vor allem vor allem in der 

20
00:01:17,520 --> 00:01:20,480
Jahreszeit ist das eine ganz 
normale Sache. 

21
00:01:22,160 --> 00:01:25,120
Ich weiß auch nicht, das ist 
halt einfach da, da kommst du 

22
00:01:25,120 --> 00:01:28,240
nicht drum herum, dass man 
einfach mal sich denkt, weißt 

23
00:01:28,240 --> 00:01:31,040
du, morgens stehst du auf, ich 
finde es ja krass einfach, 

24
00:01:31,040 --> 00:01:35,440
dieses morgens aufwachen und 
sich denken, so, es ist noch, es

25
00:01:35,440 --> 00:01:37,920
ist noch Nacht oder es ist noch 
Nacht, guckst kurz aufs Handy 

26
00:01:37,920 --> 00:01:40,960
oder auf die Uhr und denkst dir 
so ne, du musst in 10 Minuten 

27
00:01:40,960 --> 00:01:45,200
aufstehen, scheiß. 
Ja, das Frustrierende ist ja, 

28
00:01:45,200 --> 00:01:47,440
dass eigentlich immer Nacht ist.
Ja egal, was du machst. 

29
00:01:47,440 --> 00:01:49,120
Nur wenn du arbeitest, dann ist 
nicht Nacht. 

30
00:01:49,120 --> 00:01:52,480
Aber ansonsten ist immer dunkel 
draußen. 

31
00:01:52,640 --> 00:01:55,520
Ja man man kommt halt, man kommt
nach der Arbeit auch zu nichts 

32
00:01:55,520 --> 00:01:58,360
mehr, dann ne also willst also 
draußen brauchst du gar nichts 

33
00:01:58,360 --> 00:02:00,680
mehr zu machen eigentlich ne, du
kannst nicht laufen gehen falls 

34
00:02:00,680 --> 00:02:05,040
man laufen geht als Beispiel 
oder irgendwie weiß ich 

35
00:02:05,040 --> 00:02:08,759
irgendwas draußen machen, so 
kannst du vergessen das wird 

36
00:02:08,759 --> 00:02:10,720
nicht mehr. 
Ab 16:00 Uhr das. 

37
00:02:10,759 --> 00:02:14,080
War ja tatsächlich echt 
frustrierend, wenn du sag ich 

38
00:02:14,080 --> 00:02:16,800
mal so ne Laufrute hast. 
Also ich geh ja ab und zu mal 

39
00:02:16,800 --> 00:02:21,640
joggen und du hast so deine 
Route wo du gerne lang läufst, 

40
00:02:21,640 --> 00:02:24,000
weil es vielleicht so n bisschen
in der Natur ist oder so ne, 

41
00:02:24,000 --> 00:02:27,520
also nicht mit 
Straßenbeleuchtung sag ich mal 

42
00:02:28,160 --> 00:02:32,080
und dann wenn der Winter kommt 
denkst du dir immer so ah nach 

43
00:02:32,080 --> 00:02:34,200
der Arbeit hätte ich Bock ne 
jetzt sieht es ja gerade echt 

44
00:02:34,200 --> 00:02:36,480
noch gut aus und dann ist es 
halt Instant so. 

45
00:02:36,960 --> 00:02:39,320
Oder so sag ich mal nach 10 
Minuten einfach stockduster und 

46
00:02:39,320 --> 00:02:41,280
du denkst sehr gut, klasse, 
jetzt brauch ich auch nicht mehr

47
00:02:41,280 --> 00:02:43,640
loslaufen und dann weiß ich 
nicht, ich hab auch schon so 

48
00:02:43,640 --> 00:02:47,200
alternative Routen probiert, so 
in der Stadt mit Beleuchtung 

49
00:02:47,200 --> 00:02:49,200
aber das das macht mir dann 
einfach keinen Spaß. 

50
00:02:49,200 --> 00:02:53,440
Also falls da irgendwer n Tipp 
hat schreibt uns gerne aber 

51
00:02:53,440 --> 00:02:56,160
bitte nicht so Taschenlampe auf 
dem Kopf oder so mit so einer 

52
00:02:56,160 --> 00:02:59,280
Kopfleuchte das ist auch geil 
hab ich auch schon mal gesehen. 

53
00:02:59,480 --> 00:03:01,440
Ja, ich bin ja jetzt nicht so 
der absolut krasse 

54
00:03:01,920 --> 00:03:05,360
Läuferliebhaber sozusagen, aber 
ich sag mal so. 

55
00:03:06,720 --> 00:03:09,760
Ich finde, wenn ich laufe, ja 
dann find ich es im Winter oder 

56
00:03:09,760 --> 00:03:11,720
wenn es was heißt Winter. 
Also es ist ja noch nicht 

57
00:03:11,720 --> 00:03:13,440
Winter, aber wenn es n bisschen 
kühler ist schon find ich es 

58
00:03:13,440 --> 00:03:16,320
einfach besser, weil dann heizt 
man nicht so auf. 

59
00:03:16,320 --> 00:03:18,720
Weißt du ich find es zum 
Beispiel wenn du wirklich im 

60
00:03:18,720 --> 00:03:23,280
Sommer läufst so bei annähernd 
30 Grad voll schlimm find ich 

61
00:03:23,280 --> 00:03:26,920
einfach nur weil dann ist einem 
direkt schon Instant warm und so

62
00:03:26,920 --> 00:03:30,640
ist halt wenigstens dir ist kalt
dir wird warm alles gut, gutes 

63
00:03:30,640 --> 00:03:32,160
Level. 
Ja. 

64
00:03:32,280 --> 00:03:34,040
Das ist halt dann nur für den 
Körper natürlich auch ein 

65
00:03:34,040 --> 00:03:35,840
bisschen belastender. 
Ne, weil du schwitzt, aber 

66
00:03:35,840 --> 00:03:39,920
gleichzeitig ist dir eigentlich 
kalt, das ist halt irgendwie 

67
00:03:39,920 --> 00:03:42,120
auch komisch ne immer wenn ich 
dann irgendwie wieder ankomme 

68
00:03:42,120 --> 00:03:46,080
und zu Hause bin, quasi merke so
meine Arme sind eigentlich 

69
00:03:46,080 --> 00:03:49,680
übelst kalt und so, aber 
innerlich kochst du sozusagen. 

70
00:03:50,160 --> 00:03:52,160
Ja, das ist schon, ich glaube 
ist auch eine Challenge für den 

71
00:03:52,160 --> 00:03:56,240
Körper, fürs Immunsystem. 
Das kann sein ja, auf jeden 

72
00:03:56,240 --> 00:03:58,880
Fall. 
Wie gesagt, Laufen Leute 

73
00:03:59,200 --> 00:04:05,120
macht's. 
Ich mag es, ich mag es ja, aber 

74
00:04:05,120 --> 00:04:08,160
abgesehen vom Laufen wollen wir 
natürlich heute wieder ein 

75
00:04:08,720 --> 00:04:11,040
bestimmtes Thema behandeln. 
Aber bevor wir das machen, Tino,

76
00:04:11,280 --> 00:04:13,280
wollte ich noch einmal, ist, 
glaube ich, jetzt schon ein paar

77
00:04:13,280 --> 00:04:16,480
Tage her, aber damit wir es 
nicht vergessen, wollten wir uns

78
00:04:16,480 --> 00:04:19,480
auf jeden Fall noch mal bei 
Simon bedanken für die Spende 

79
00:04:19,480 --> 00:04:22,000
für unseren Podcast. 
Vielen vielen Dank Simon vielen.

80
00:04:22,079 --> 00:04:25,040
Vielen Dank, Simon. 
Simon hat geschrieben, Mega 

81
00:04:25,040 --> 00:04:27,440
Podcast, fühle mich sehr 
abgeholt und wünsche mir auch 

82
00:04:27,440 --> 00:04:30,960
einen coaling Buddy. 
Jeder braucht ein coaling Buddy.

83
00:04:31,280 --> 00:04:34,960
Leute kommt in die Community, 
Joint im Discord, da gibt es 

84
00:04:34,960 --> 00:04:36,640
dann quasi auch n coaling Buddy 
für jeden. 

85
00:04:36,640 --> 00:04:38,720
Ich wollt jetzt gerade sagen, da
kann man sich n coaling Buddy 

86
00:04:38,720 --> 00:04:41,760
aussuchen, da sind ganz viele 
tolle Leute die auch richtig 

87
00:04:41,760 --> 00:04:44,400
Bock haben. 
Genau, und das ist eigentlich, 

88
00:04:44,400 --> 00:04:46,320
das ist so die erste 
Anlaufstelle für n coaling 

89
00:04:46,320 --> 00:04:49,120
Buddy. 
Richtig, auf jeden Fall. 

90
00:04:49,120 --> 00:04:53,120
Aber vielen dank Simon und liebe
Zuhörerin, lieber Zuhörer, wenn 

91
00:04:53,120 --> 00:04:56,160
du dir denkst, hey, ja doch eine
kleine Spende für die beiden, 

92
00:04:56,160 --> 00:04:58,560
das wäre irgendwie ganz cool, 
kannst du auf jeden Fall machen,

93
00:04:58,560 --> 00:05:00,840
wenn du möchtest. 
Nur wenn du möchtest, dann gibt 

94
00:05:00,840 --> 00:05:03,680
es auf jeden Fall einen kleinen 
Spenden Link in den Shownotes 

95
00:05:04,400 --> 00:05:07,920
würde uns natürlich mega freuen,
wenn es denn passt. 

96
00:05:07,920 --> 00:05:11,000
Sagen wir mal so, aber Tino, 
bist du bereit, jetzt lass uns 

97
00:05:11,000 --> 00:05:13,920
mal das Thema starten. 
Ich denke. 

98
00:05:15,440 --> 00:05:17,840
Aber wenn ihr jetzt nicht, wenn 
ihr jetzt nicht ne krasse 

99
00:05:17,840 --> 00:05:20,080
Überraschung kommt, denk ich bin
ich bereit. 

100
00:05:20,800 --> 00:05:23,760
Das ist schön. 
OK, denk ich heute, es geht mal 

101
00:05:23,760 --> 00:05:25,600
wieder. 
Wir wollen unsere Reihe 

102
00:05:25,600 --> 00:05:29,200
fortsetzen und zwar das die 
Pattern Reihe die Design Pattern

103
00:05:29,200 --> 00:05:35,760
Reihe und heute soll es um das 
Pattern Bridge gehen, also das 

104
00:05:35,760 --> 00:05:39,040
Bridge Pattern. 
Lass einfach mal gucken was ist 

105
00:05:39,040 --> 00:05:41,800
das Bridge Pattern eigentlich 
mal wieder so ne kleine Analogie

106
00:05:41,800 --> 00:05:43,840
geben damit man sich das gut 
vorstellen kann. 

107
00:05:44,080 --> 00:05:47,280
Bisschen technischer werden. 
Wie ist das Ganze aufgebaut und 

108
00:05:48,000 --> 00:05:50,960
wie unterscheidet sich das 
eigentlich auch zu manch anderen

109
00:05:50,960 --> 00:05:53,840
Pattern? 
Also bei mir ist es so ne, wenn 

110
00:05:53,840 --> 00:05:57,360
ich so manche Pattern habe, über
die man dann so spricht, dann 

111
00:05:57,360 --> 00:05:58,880
denk ich mir so k. 
Aber du könntest doch auch 

112
00:05:58,880 --> 00:06:01,680
einfach dieses Pattern nehmen, 
das klingt genauso, da wollen 

113
00:06:01,680 --> 00:06:04,400
wir natürlich auch wieder n 
bisschen abgrenzen, natürlich 

114
00:06:04,400 --> 00:06:06,360
gucken wo man das gut verwenden 
kann und wo halt nicht 

115
00:06:06,400 --> 00:06:09,360
beispielsweise ne, das wär jetzt
so der Fahrplan. 

116
00:06:10,080 --> 00:06:12,920
Ja. 
Ja, es ist eigentlich auch n 

117
00:06:12,920 --> 00:06:15,080
guter Punkt, das zu 
unterscheiden ist manchmal halt 

118
00:06:15,080 --> 00:06:17,360
wirklich nicht so einfach, also 
gerade wenn du jetzt dir 

119
00:06:17,360 --> 00:06:21,120
verschiedene Struktur Muster 
anguckst, also pattern aus dem 

120
00:06:21,360 --> 00:06:24,600
Strukturenbereich, sag ich mal, 
wir hatten ja zum Beispiel 

121
00:06:24,600 --> 00:06:28,760
Adapter Pattern schon ne und da 
ist halt wirklich die Frage OK, 

122
00:06:28,760 --> 00:06:31,120
wo ist denn jetzt der 
Unterschied oder wann nehm ich 

123
00:06:31,120 --> 00:06:33,320
was und sowas könnten wir ja 
auch mal n bisschen beleuchten 

124
00:06:33,320 --> 00:06:36,560
heute, weil das ist halt 
wirklich ne gute Frage, das ist 

125
00:06:36,560 --> 00:06:38,080
nicht so Occomon ist nicht dein 
Ernst. 

126
00:06:38,080 --> 00:06:40,840
Das ist was ja doch sag mal das 
ist nicht dein Ernst. 

127
00:06:40,960 --> 00:06:42,560
Das war ich sehr okay. 
Ich weiß es gar nicht. 

128
00:06:44,720 --> 00:06:49,280
Ist n No Brander, ist n no 
Brander genau, aber das, also 

129
00:06:49,280 --> 00:06:52,080
das muss man halt sich wirklich,
da gibt es halt kleine aber 

130
00:06:52,080 --> 00:06:55,040
feine Unterschiede, wie man so 
schön sagt und da da möchte ich 

131
00:06:55,040 --> 00:06:57,160
dann gerne, erinner mich dran, 
dass wir da später noch drüber 

132
00:06:57,160 --> 00:07:03,080
reden, aber kommen wir erstmal 
zum neuen Pattern, was wir heute

133
00:07:03,080 --> 00:07:06,240
besprechen und zwar das Bridge 
Pattern, also wir lassen das 

134
00:07:06,240 --> 00:07:08,720
Adapter Pattern noch mal n 
bisschen beiseite. 

135
00:07:09,520 --> 00:07:11,520
Und ich würd sagen, wir starten 
einfach wieder mit ganz 

136
00:07:11,520 --> 00:07:16,920
klassischen Analogien. 
Und zwar ich finde, wir sind es 

137
00:07:16,920 --> 00:07:20,640
unseren Zuhörern und Zuhörern, 
Zuhörerinnen und Zuhörern so 

138
00:07:22,000 --> 00:07:24,160
einfach schuldig, dass wir auch 
wieder n bisschen in den Bereich

139
00:07:24,160 --> 00:07:27,040
des Essens gehen. 
Also das ist einfach unser 

140
00:07:27,040 --> 00:07:30,240
Markenzeichen in dieser Reihe 
und das sollten wir auch tun. 

141
00:07:30,480 --> 00:07:32,640
Bei den Pattern wird es nur 
schwierig, es direkt auf 

142
00:07:32,640 --> 00:07:35,280
Lebensmittel zu Münzen, sag ich 
mal. 

143
00:07:35,280 --> 00:07:38,960
Deswegen nehmen wir einfach mal 
n Restaurant ja und? 

144
00:07:39,680 --> 00:07:41,920
Ich stell mir das jetzt gerade 
mal so vor. 

145
00:07:41,920 --> 00:07:44,240
Wir beide, Fabi, wir gehen jetzt
mal so richtig schön essen. 

146
00:07:44,240 --> 00:07:48,280
Ja also wir haben hier schick 
aus, das ist jetzt einfach n 

147
00:07:48,280 --> 00:07:50,880
Grund zu feiern und ich führ 
dich jetzt mal so richtig schick

148
00:07:50,880 --> 00:07:57,280
aus wir gehen essen und wir 
setzen uns an Tisch und ein 

149
00:07:57,280 --> 00:08:01,520
Kellner kommt und fragt was wir 
denn gerne trinken wollen was 

150
00:08:01,520 --> 00:08:05,440
wir essen wollen also er nimmt 
halt die Bestellung auf und 

151
00:08:05,440 --> 00:08:10,960
jetzt fragt man sich ja OK. 
Wieso kommt da eigentlich n 

152
00:08:10,960 --> 00:08:14,200
Kellner? 
Also warum kann ich nicht 

153
00:08:14,200 --> 00:08:16,800
einfach direkt in die Küche 
gehen und dem Koch oder der 

154
00:08:16,800 --> 00:08:19,680
Köchin sagen was ich haben 
möchte und dann soll die Person 

155
00:08:19,680 --> 00:08:23,920
mir das zubereiten. 
Ja und das ist nämlich genau das

156
00:08:23,920 --> 00:08:28,640
Ding, dass man ja ne Art Brücke 
baut zur Küche über den Kellner 

157
00:08:28,640 --> 00:08:33,280
oder die Kellnerin und da genau 
und über die Brücke auf 

158
00:08:33,280 --> 00:08:40,559
huckepack Nein denn. 
Für dich soll ja quasi 

159
00:08:40,559 --> 00:08:44,800
unabhängig von der Küche sein, 
wie ich bestelle. 

160
00:08:45,200 --> 00:08:48,800
Ne also der Ablauf ist doch 
immer das gleiche, egal welchem 

161
00:08:48,800 --> 00:08:52,240
Restaurant du bist. 
Ja, also es gibt sag ich mal so 

162
00:08:52,240 --> 00:08:55,840
regelt oder sag ich mal. 
Im Kern ist es das gleiche, 

163
00:08:55,840 --> 00:08:58,480
vielleicht ist es mal 
koordinierter, mal chaotischer, 

164
00:08:58,480 --> 00:09:02,000
mal witziger, mal n bisschen 
gehobener, wie auch immer, ja, 

165
00:09:02,400 --> 00:09:05,200
aber im Kern ist es ja das 
gleiche, ich möchte was zu essen

166
00:09:05,200 --> 00:09:07,280
haben und ich möchte was zu 
trinken haben und das wird. 

167
00:09:07,800 --> 00:09:09,920
Bei dem Kellner oder der 
Kellnerin bestellt. 

168
00:09:10,320 --> 00:09:14,320
Diese Person geht in die Küche 
und übermittelt deine Bestellung

169
00:09:14,440 --> 00:09:19,680
entsprechend dem Essen was da 
ist sag ich mal. 

170
00:09:20,640 --> 00:09:24,160
Machen wir es noch n bisschen 
konkreter, ich nehm eine Nummer 

171
00:09:24,960 --> 00:09:27,360
ja ich sag ich mir, ich hätte 
gern zu essen, hätte ich gern 

172
00:09:27,360 --> 00:09:33,200
die Nummer 5 und der Kellner 
sagt OK und sagt in der Küche 

173
00:09:33,200 --> 00:09:36,480
einmal Nummer 5 bitte. 
Jetzt ist Nummer 5 natürlich 

174
00:09:36,480 --> 00:09:38,160
auch in jedem Restaurant was 
anderes. 

175
00:09:38,160 --> 00:09:43,880
Ja keine Ahnung in in so nem 
Brauhaus ist es Schnitzel 

176
00:09:43,880 --> 00:09:48,400
irgendwas und beim Italiener ist
es jetzt keine Ahnung Spaghetti 

177
00:09:48,400 --> 00:09:53,200
carbonara danke ich weiß du 
kennst dich aus mit den Nummern 

178
00:09:53,200 --> 00:09:58,240
bei Italienern, denn das ist die
5 ist immer was Spaghetti und da

179
00:09:58,240 --> 00:10:00,640
sieht man ja schon ich brauch ja
irgendwie. 

180
00:10:01,320 --> 00:10:05,520
Eine Instanz oder ein Muster? 
Was mir genau das ermöglicht, 

181
00:10:05,520 --> 00:10:11,280
und zwar ich kann unabhängig von
der Küche bestellen. 

182
00:10:11,520 --> 00:10:16,400
Ja, also dieser Ablauf ist immer
gleich und die Küche kann 

183
00:10:16,400 --> 00:10:19,920
unabhängig von dem wie ich 
bestelle, einfach das Essen 

184
00:10:19,920 --> 00:10:23,440
zubereiten und ich habe halt ne 
Brücke dazwischen, die dafür 

185
00:10:23,440 --> 00:10:25,600
sorgt, dass beides 
zusammenpasst. 

186
00:10:26,680 --> 00:10:29,280
Ja, aber ich habe ja nicht. 
Und jetzt wird es n bisschen 

187
00:10:29,280 --> 00:10:31,360
konkreter, warum das Pattern 
existiert. 

188
00:10:31,520 --> 00:10:36,640
Ich brauche ja nicht einen 
Kellner, ja, der sagt, Ich bin 

189
00:10:36,640 --> 00:10:41,360
ein italienische Küche Kellner 
oder ich bin ein Brauhaus 

190
00:10:41,360 --> 00:10:45,680
Kellner oder ich bin weiß denk 
dir noch was aus sondern es ist 

191
00:10:45,680 --> 00:10:50,280
n Kellner oder ne Kellnerin die 
das macht ja die dann quasi 

192
00:10:50,280 --> 00:10:52,000
dafür sorgt, dass beides 
zusammenpasst. 

193
00:10:52,880 --> 00:10:55,960
Anders gesagt, du gehst 
bestellst beim Kellner zum 

194
00:10:55,960 --> 00:10:59,840
Beispiel auf Deutsch in jeder, 
in jedem Plan jemand noch mal 

195
00:10:59,840 --> 00:11:03,080
sprachen um n weiteres Beispiel 
zu geben, so in der Küche, das 

196
00:11:03,080 --> 00:11:06,240
ist jetzt so richtig richtig n 
richtig wahnsinniger Italiener, 

197
00:11:06,240 --> 00:11:08,360
so wie jeder sich das vorstellt,
dass jeder dann nur noch 

198
00:11:08,360 --> 00:11:10,880
italienisch spricht, ja dann 
kannst du ja gar nicht in die 

199
00:11:10,880 --> 00:11:13,120
Küche gehen und bestellen, 
vielleicht so mit n bisschen 

200
00:11:13,120 --> 00:11:17,680
Handzeichen oder so ne, aber das
war es dann auch schon. 

201
00:11:18,160 --> 00:11:22,400
Und genau deswegen sagt man, um 
nicht zu viel Abhängigkeit zu 

202
00:11:22,400 --> 00:11:25,920
haben, zu viel Kopplung oder zu 
viel Implementierung eines 

203
00:11:25,920 --> 00:11:30,080
Kellners, um es konkreter zu 
machen, trenne ich jetzt genau 

204
00:11:30,080 --> 00:11:33,520
diese beiden Sachen und zwar 
Implementierung und Abstraktion.

205
00:11:33,920 --> 00:11:37,440
Genau. 
Ich find n anderes Beispiel um 

206
00:11:37,440 --> 00:11:40,000
um jetzt noch mal ganz kurz vorm
Essen um noch mal n bisschen 

207
00:11:40,000 --> 00:11:43,600
technischer zu werden ist. 
Für mich so n so n so n Beispiel

208
00:11:43,600 --> 00:11:45,960
was was irgendwie total auf der 
Hand liegt. 

209
00:11:46,080 --> 00:11:48,320
So ne Universalfernbedienung 
weißt du, du hast 

210
00:11:48,400 --> 00:11:52,200
Universalfernbedienung, kannst 
damit rein theoretisch sagen wir

211
00:11:52,200 --> 00:11:54,800
mal n Fernseher bedienen, Radio 
bedienen, ne Soundanlage 

212
00:11:54,800 --> 00:11:56,800
bedienen, du kannst damit halt 
irgendwie alles bedienen, 

213
00:11:56,880 --> 00:12:00,280
beispielsweise ne und bist jetzt
aber nicht dafür angewiesen, 

214
00:12:00,280 --> 00:12:03,680
dass du sagst, du hast jetzt 
eine Fernbedienung für den TV, 

215
00:12:03,680 --> 00:12:05,960
eine Fernbedienung für n fürs 
Radio, eine Fernbedienung für 

216
00:12:05,960 --> 00:12:08,640
die Soundanlage, das ist 
tatsächlich sogar eher Realität,

217
00:12:09,520 --> 00:12:12,080
aber. 
So rein theoretisch hast du halt

218
00:12:12,080 --> 00:12:14,960
eben nicht wieder so ne 
klassenexplosion, dass du sagst,

219
00:12:14,960 --> 00:12:19,600
du brauchst jetzt für quasi die 
die Klasse Fernbedienung für TV,

220
00:12:19,600 --> 00:12:21,680
Fernbedienung für Radio, 
Fernbedienung für soundanal, 

221
00:12:21,680 --> 00:12:23,920
Kellner für italienisches 
Restaurant, Kellner für 

222
00:12:24,400 --> 00:12:27,000
japanisches Restaurant, Kellner 
für was auch immer für n 

223
00:12:27,000 --> 00:12:28,920
Restaurant ne. 
Also du brauchst halt nicht 

224
00:12:28,920 --> 00:12:31,280
diese ganzen wenn wir jetzt auf 
Klassenebene gehen, brauchst du 

225
00:12:31,280 --> 00:12:33,520
nicht diese ganzen Klassen, 
sondern du brauchst n Kellner. 

226
00:12:34,360 --> 00:12:36,160
Du brauchst n Restaurant so nach
dem Motto Ne. 

227
00:12:36,160 --> 00:12:38,120
Also du hast natürlich dann 
verschiedene Implementierungen 

228
00:12:38,120 --> 00:12:40,960
fürs Restaurant in dem Fall. 
Aber du hast halt. 

229
00:12:40,960 --> 00:12:44,800
Eben diesen Kellner weißt du, 
und das ist halt die Bridge. 

230
00:12:45,040 --> 00:12:48,880
Dann wie du meintest ne zwischen
dem Restaurant und dem dem 

231
00:12:48,880 --> 00:12:52,960
Kunden oder der Kundin und ich 
find es jetzt interessant, weil 

232
00:12:52,960 --> 00:12:55,680
wir hatten ja so n bisschen 
gesagt, so ey, ich weiß nicht, 

233
00:12:55,680 --> 00:12:59,440
wir hatten ja die letztens das 
decorator Pattern ne und da ging

234
00:12:59,440 --> 00:13:02,880
es ja auch darum so, ja. 
Klassenexplosion vermeiden jetzt

235
00:13:02,880 --> 00:13:04,800
ist das ja auch wieder irgendwie
ne Art und Weise 

236
00:13:04,800 --> 00:13:07,520
klassenexplosion zu vermeiden, 
ne, da könnte man sich ja 

237
00:13:07,520 --> 00:13:11,120
vielleicht überlegen, so ist das
jetzt nicht irgendwie das 

238
00:13:11,120 --> 00:13:14,880
gleiche, aber am Ende ist es 
halt doch wieder was anderes, 

239
00:13:14,880 --> 00:13:18,880
ne, also es sind halt. 
Es wird halt für verschiedene 

240
00:13:18,880 --> 00:13:21,840
Dinge genutzt, weil das 
decorator Pattern beispielsweise

241
00:13:22,000 --> 00:13:26,720
ist ja dafür da, um einem Objekt
neue Fähigkeiten zu geben, ohne 

242
00:13:26,720 --> 00:13:28,880
ne Klasse zu verändern. 
Das hatten wir ja gesagt, ne, 

243
00:13:28,880 --> 00:13:31,520
dass du immer ne neue Fähigkeit 
theoretisch noch hinzufügen 

244
00:13:31,520 --> 00:13:33,440
kannst. 
Also weiter dekorieren kannst. 

245
00:13:33,440 --> 00:13:37,080
Das heißt die Klasse wird 
sozusagen also das Objekt einer 

246
00:13:37,080 --> 00:13:40,240
Klasse wird halt mächtiger und 
bei einer Bridge ist es halt 

247
00:13:40,240 --> 00:13:43,720
eben so, dass du halt eben 
einfach beide Seiten voneinander

248
00:13:43,720 --> 00:13:45,280
trennst. 
Also du hast 2 Seiten. 

249
00:13:45,640 --> 00:13:47,840
Die du unabhängig voneinander 
entwickeln kannst. 

250
00:13:47,840 --> 00:13:50,240
Also wie du ja auch schon 
meintest, du könntest ja aus der

251
00:13:50,240 --> 00:13:53,520
Küche auf einmal aus der 
italienischen Küche auf einmal 

252
00:13:53,520 --> 00:13:56,240
ne griechische Küche machen und 
der Kellner könnte der gleiche 

253
00:13:56,240 --> 00:13:59,440
bleiben, ohne dass man sozusagen
also den du musst den Kellner 

254
00:13:59,440 --> 00:14:00,840
nicht verändern kannst, aber die
Küche verändern. 

255
00:14:00,840 --> 00:14:03,520
Du kannst neuen Kellner 
einstellen, die Küche kann aber 

256
00:14:03,520 --> 00:14:05,280
die gleiche bleiben. 
Das heißt ganz genau. 

257
00:14:05,360 --> 00:14:08,200
Bei dem einen trennst du halt 
wie du so schön meintest, die 

258
00:14:08,200 --> 00:14:11,760
Implementierung von der 
Abstraktion ne und? 

259
00:14:12,360 --> 00:14:13,640
Das ist diese, die Bridge 
sozusagen. 

260
00:14:13,640 --> 00:14:16,680
Und beim Decorator ist es halt 
so, dass du halt sagst, ja, ich 

261
00:14:16,680 --> 00:14:20,040
möchte aber gerne einem Objekt 
immer mehr Funktionen 

262
00:14:20,040 --> 00:14:22,800
hinzufügen. 
Am Ende vermeidet beides ne 

263
00:14:22,800 --> 00:14:26,160
Klassenexplosion, wie wir ja 
auch in der anderen Folge gesagt

264
00:14:26,160 --> 00:14:28,040
haben. 
Aber und das ist ja das 

265
00:14:28,040 --> 00:14:34,400
interessante, Es ist die 
sozusagen die, was man machen 

266
00:14:34,400 --> 00:14:37,520
möchte, damit ist was ganz 
anderes und das jetzt auch mal 

267
00:14:37,760 --> 00:14:40,880
zur letzten Design Pattern folge
zu trennen, ne? 

268
00:14:42,000 --> 00:14:44,480
Ja, ich kann auch direkt 
weitermachen, weil so Analogien 

269
00:14:44,480 --> 00:14:46,200
da auch hilfreich sind. 
Wenn du jetzt, wir hatten ja 

270
00:14:46,200 --> 00:14:48,960
auch schon das Adapterpad 
angesprochen, ich finde, wo man 

271
00:14:48,960 --> 00:14:52,240
das auch mit der mit der Bridge 
gut auseinanderhalten kann, ist 

272
00:14:52,240 --> 00:14:56,240
auch ein Beispiel, was einfach 
jeder kennt, so dieses typische 

273
00:14:56,240 --> 00:14:59,520
Ich möchte mein Handy laden, ja 
und wie sieht das heutzutage 

274
00:14:59,520 --> 00:15:03,120
aus? 
Du hast Netzteil was im Prinzip 

275
00:15:03,120 --> 00:15:06,240
sagt. 
OK, mit mir kann man laden, 

276
00:15:06,240 --> 00:15:08,960
sozusagen. 
Ja, also ich steck mich in die 

277
00:15:08,960 --> 00:15:11,680
Steckdose und ich sorg dafür, 
dass ich n Gerät lade. 

278
00:15:12,480 --> 00:15:15,880
So jetzt brauchst du aber ne 
Brücke um dein Gerät mit dem 

279
00:15:15,880 --> 00:15:20,640
Netzteil zu verbinden und genau 
das ist ja heutzutage Gott sei 

280
00:15:20,640 --> 00:15:26,400
Dank auch unabhängig, also quasi
getrennt vom Netzteil. 

281
00:15:26,400 --> 00:15:30,000
Es ist ja nicht mehr so, dass n 
festes Kabel an dem Netzteil 

282
00:15:30,000 --> 00:15:32,800
ist, sondern. 
In der Regel beim Handy sag ich 

283
00:15:32,800 --> 00:15:36,160
mal NUSBC Kabel. 
Ja, das heißt du steckst das in 

284
00:15:36,160 --> 00:15:39,040
dein Netzteil, in dein Handy und
du kannst dein Gerät laden. 

285
00:15:39,360 --> 00:15:43,080
So jetzt ist es aber so, dass es
ja unabhängig ist. 

286
00:15:43,360 --> 00:15:47,520
Ne das Netzteil auf der einen 
Seite und das Kabel sozusagen 

287
00:15:47,520 --> 00:15:50,240
was für deine Funktion jetzt 
sorgt sag ich mal. 

288
00:15:50,960 --> 00:15:54,080
Du kannst das gleiche Netzteil 
nehmen aber NUSBC Kabel ran 

289
00:15:54,080 --> 00:15:57,120
machen, vielleicht hast du auch 
noch alte Geräte, wie hießen sie

290
00:15:57,120 --> 00:16:01,160
alle Mini USB? 
Micro USB da gab es auch 1000 

291
00:16:01,160 --> 00:16:04,560
Varianten, bis wir bei USBC 
waren, kannst du alle nehmen, 

292
00:16:04,800 --> 00:16:06,960
rein ins Netzteil brauchst du 
nur das Gerät ne, also je 

293
00:16:06,960 --> 00:16:10,160
nachdem welche Brücke du 
sozusagen brauchst am Ende ne. 

294
00:16:10,480 --> 00:16:13,720
Aber das ist ja Lightning bei 
Apple, aber das also ja auf 

295
00:16:13,720 --> 00:16:16,240
jeden Fall, aber das ist jetzt 
schon so n bisschen so, also das

296
00:16:16,240 --> 00:16:18,960
ist auf der einen Seite ist es 
ja also das was du beschreibst 

297
00:16:18,960 --> 00:16:23,040
ist ja die Bridge der Bridgepart
dabei, aber. 

298
00:16:24,040 --> 00:16:26,280
Es gibt ja auch noch n 
Adapterpart dabei ne, weil du. 

299
00:16:26,320 --> 00:16:29,480
Ja, das nicht dazu kommen. 
OK, weil wenn du jetzt zum 

300
00:16:29,480 --> 00:16:31,920
Beispiel sagst, ich möchte das 
aber in die Steckdose stecken, 

301
00:16:32,560 --> 00:16:36,400
ja und bin jetzt aber in einem 
anderen Land, dann hab ich gar 

302
00:16:36,400 --> 00:16:39,440
nichts gekonnt, dann hab ich 
zwar meine meine unabhängigen 

303
00:16:39,440 --> 00:16:41,760
Implementierungen sozusagen, 
aber ich kann nicht mehr den 

304
00:16:41,760 --> 00:16:44,400
Strom nutzen, also brauch ich 
jetzt an der Stelle einen 

305
00:16:44,400 --> 00:16:47,840
Adapter um. 
In die Steckdose wieder zu 

306
00:16:47,840 --> 00:16:49,160
kommen? 
Ja, weil es gibt ja 

307
00:16:49,160 --> 00:16:51,800
unterschiedliche Steckdosen. 
So, und da siehst du jetzt, 

308
00:16:51,800 --> 00:16:55,280
welcher Teil davon ist. 
Adapter ne, der sorgt nur dafür,

309
00:16:55,280 --> 00:16:58,400
dass ich jetzt in meinem Urlaub,
ich hab alles, also es ist alles

310
00:16:58,400 --> 00:17:01,200
entschieden meine Geräte, ich 
bin aber jetzt im Urlaub und 

311
00:17:01,200 --> 00:17:03,520
merke so Oh verdammt in die 
Steckdose kann ich gar nicht 

312
00:17:03,520 --> 00:17:07,040
verwenden ha ich kann aber zur 
Laufzeit während meines Urlaubs 

313
00:17:07,040 --> 00:17:09,680
jetzt meinen Adapter verwenden 
und trotzdem die Steckdose 

314
00:17:09,680 --> 00:17:12,800
verwenden und gleichzeitig die 
Kombination und die Brücke 

315
00:17:12,800 --> 00:17:15,920
nutzen um. 
Jetzt mein Handy zu laden oder 

316
00:17:15,920 --> 00:17:19,640
das Handy vom Partner, wenn der 
eine n iphone hat und der andere

317
00:17:19,640 --> 00:17:22,720
n Android und es gab halt noch 
nicht die gemeinsame USBC 

318
00:17:22,720 --> 00:17:25,680
Schnittstelle. 
Ja also da sieht man ja denn 

319
00:17:25,680 --> 00:17:29,240
quasi genau die Unterscheidung 
in dieser Analogie, was ist 

320
00:17:29,240 --> 00:17:32,040
Adapter und was ist die Brücke? 
Ja, im Endeffekt. 

321
00:17:32,040 --> 00:17:34,480
Zumindest so n Kabel finde ich 
kann man sich als Brücke auch 

322
00:17:34,480 --> 00:17:37,760
ganz gut vorstellen. 
Das das stimmt wohl. 

323
00:17:38,320 --> 00:17:42,800
Das ist quasi eine eine 
Kabelbrücke, aber im Endeffekt 

324
00:17:42,800 --> 00:17:45,760
ist es ja so, wenn wir das 
zusammenfassen wollen, um das 

325
00:17:45,760 --> 00:17:50,720
jetzt auch direkt vom Adapter 
abzugrenzen, ne bridge, ne Trend

326
00:17:50,720 --> 00:17:55,440
Dinge halt ne oder sagt lass uns
mal Dinge trennen und flexibel 

327
00:17:55,440 --> 00:18:00,080
kombinierbar machen, das ist ja 
im Endeffekt die Bridge ne und 

328
00:18:00,080 --> 00:18:03,440
der Adapter sagt du hast 2 Dinge
die nicht zusammenpassen. 

329
00:18:03,600 --> 00:18:07,840
Na dann lass uns die doch mal so
zusammen, dass es passt, dass es

330
00:18:07,840 --> 00:18:10,560
passt. 
Genau, genau. 

331
00:18:10,560 --> 00:18:14,160
Und ich finde, und das ist noch 
mal n ganz interessanter Punkt 

332
00:18:14,160 --> 00:18:17,840
dabei, wenn du sagst, du 
entwirfst eine Bridge, ne, dann 

333
00:18:17,840 --> 00:18:22,240
ist das, dann kann man sich das 
vorstellen, dass man sagt, lass 

334
00:18:22,240 --> 00:18:25,680
uns doch mal so n bisschen von, 
also du bist eher am Anfang 

335
00:18:26,560 --> 00:18:31,160
eines Projektes, dass du sagst, 
wir bauen es von Anfang an so am

336
00:18:31,160 --> 00:18:33,920
besten. 
Um flexibel zu sein, ne, also 

337
00:18:33,920 --> 00:18:36,160
das ist so ne. 
Ich sag mal Designentscheidung 

338
00:18:36,320 --> 00:18:40,880
am Anfang ne wenn wir jetzt bei 
Software sind n Adapter ist halt

339
00:18:40,880 --> 00:18:45,640
eher dass du sagst OK es ist 
etwas wo du sagst Oh das passt 

340
00:18:45,640 --> 00:18:48,720
nicht, lass uns n Adapter dazu 
bauen, das heißt das machst du 

341
00:18:48,720 --> 00:18:52,960
eher dann am Ende weißt du, dass
du sagst das eine planst du von 

342
00:18:52,960 --> 00:18:55,440
vornherein. 
Oder sagen wir mal, in einer 

343
00:18:55,440 --> 00:18:59,280
frühen Phase deiner Architektur 
und das Adapter Pattern, da 

344
00:18:59,280 --> 00:19:03,280
sagst du OK, ich hab das System,
ich hab das System, die müssen 

345
00:19:03,280 --> 00:19:05,960
jetzt nachträglich irgendwie 
verbunden werden, also bauen wir

346
00:19:05,960 --> 00:19:08,800
n Adapter ne. 
Da hast du wieder die 

347
00:19:08,800 --> 00:19:11,240
Urlaubsanalogie. 
Ja, du hast an alles gedacht, du

348
00:19:11,240 --> 00:19:14,520
hast den das Netzteil, du hast 
die Kabel ja das alles so im 

349
00:19:14,520 --> 00:19:17,640
Vorfeld schön gekauft so mir 
kann nichts mehr passieren so 

350
00:19:17,640 --> 00:19:19,440
und jetzt fliegst du in den 
Urlaub und denkst dir ach 

351
00:19:19,440 --> 00:19:22,880
verdammt jetzt muss ich ja doch 
reagieren und jetzt brauch ich n

352
00:19:22,880 --> 00:19:24,880
Adapter. 
Weißt du, jetzt muss ich quasi, 

353
00:19:24,880 --> 00:19:27,040
das ist ja nicht eingeplant 
gewesen vorher. 

354
00:19:27,200 --> 00:19:30,480
Ja, das, was du gerade meintest,
das finde ich, kann man daran 

355
00:19:30,480 --> 00:19:32,560
jetzt auch wieder gut erkennen. 
Ja, auf jeden Fall. 

356
00:19:33,040 --> 00:19:37,800
Oh mein Gott, so eine Steckdose.
Ich hab noch nie gesehen und er 

357
00:19:37,800 --> 00:19:41,200
hat irgendwas basteln. 
Genau nach Hause rennen, aber. 

358
00:19:43,120 --> 00:19:46,240
Nee, aber da gibt es so n 
bisschen off topic. 

359
00:19:46,360 --> 00:19:50,240
Es gibt auch richtig geile 
Reisesets für Steckdosenadapter,

360
00:19:50,320 --> 00:19:53,640
so wo einfach weißt du, da hast 
du ein so n Ding und kannst da 

361
00:19:53,640 --> 00:19:56,480
sowieso n Transformer alles 
umbauen und du kommst gefühlt 

362
00:19:56,480 --> 00:20:00,040
auf jede Steckdose dieser Welt. 
Das ist gerade für Backpacking 

363
00:20:00,040 --> 00:20:03,400
und so ziemlich geil, klingt n 
bisschen nach Kurzschluss für 

364
00:20:03,400 --> 00:20:08,000
mich hat bis jetzt toi toi toi 
häufiger Kost, hat immer gut 

365
00:20:08,000 --> 00:20:13,360
funktioniert ah das ist gut, OK.
Auf jeden. 

366
00:20:14,320 --> 00:20:17,200
Auf jeden Fall freut mich auf 
jeden Fall, dass das gut 

367
00:20:17,200 --> 00:20:21,040
funktioniert, dass ich auch hier
so dass du noch keinen Schock 

368
00:20:21,040 --> 00:20:24,240
bekommen hast. 
Ja, auf jeden Fall. 

369
00:20:24,640 --> 00:20:27,440
Genau das ist das, ich find, das
ist ne sehr sehr gute Abgrenzung

370
00:20:27,440 --> 00:20:32,120
zum Adapter pattern, weil ich 
finde gerade wenn du also gerade

371
00:20:32,120 --> 00:20:34,520
wenn man jetzt zum Beispiel 
diese Analogie zum Beispiel mit 

372
00:20:34,640 --> 00:20:37,120
der Fernbedienung nimmt oder 
auch mit dem Kellner, klingt das

373
00:20:37,120 --> 00:20:40,040
schon alles irgendwie so n 
bisschen wie n Adapter, aber man

374
00:20:40,040 --> 00:20:43,760
sieht halt doch, OK, es ist halt
eben nicht einfach ein Adapter, 

375
00:20:43,760 --> 00:20:47,200
sondern es ist halt, es ist halt
für was anderes da ne und? 

376
00:20:48,640 --> 00:20:52,080
Wie gesagt, ich meinte ja schon 
man, also es ist extra dafür um 

377
00:20:52,080 --> 00:20:55,360
diese um so Systeme zu trennen. 
Ne in dem Fall wie gesagt ist es

378
00:20:55,360 --> 00:20:58,800
austauschbar, du kannst das eine
System ohne das andere 

379
00:20:59,360 --> 00:21:01,840
entwickeln, unabhängig 
voneinander wie gesagt Küche 

380
00:21:01,840 --> 00:21:05,320
Kellner kannst aber auch n weiß 
ich nicht wenn du ne 

381
00:21:05,320 --> 00:21:09,440
universalfernbedienung hast wie 
ich meinte kannst du halt auch 

382
00:21:09,840 --> 00:21:12,960
noch in 10 Jahren zum Beispiel 
NTV benutzen weil ich sag mal 

383
00:21:12,960 --> 00:21:15,320
irgendwie die ein und 
ausschalttaste ist irgendwie 

384
00:21:15,320 --> 00:21:20,640
immer noch gegeben. 
Und wenn wir uns jetzt noch mal 

385
00:21:20,640 --> 00:21:22,400
so ein bisschen die Struktur 
angucken, wir hatten ja gesagt, 

386
00:21:22,400 --> 00:21:26,240
Abstraktion, ne, die Abstraktion
wäre ja in meiner Analogie zum 

387
00:21:26,240 --> 00:21:28,240
Beispiel die Fernbedienung in 
deiner Analogie, dann der 

388
00:21:28,240 --> 00:21:31,520
Kellner beispielsweise ne, das 
heißt, der weiß, was getan 

389
00:21:31,520 --> 00:21:34,160
werden muss, ne. 
Also in dieser Abstraktionsebene

390
00:21:34,880 --> 00:21:37,600
zum Beispiel gerät an und 
ausschalten oder zum Beispiel 

391
00:21:37,600 --> 00:21:42,560
Nummer 5 bestellen, ne so und 
benutzt halt eben ein Interface 

392
00:21:43,360 --> 00:21:46,880
was? 
Quasi entweder also sagen wir 

393
00:21:46,880 --> 00:21:49,840
mal das die Fernbedienung 
benutzen Interface was das Gerät

394
00:21:49,840 --> 00:21:52,160
kennt, also zum Beispiel sowas 
wie ein und ausschalten als 

395
00:21:52,160 --> 00:21:57,840
Interface oder halt eben der 
Kellner geht halt eben auch zur 

396
00:21:57,840 --> 00:22:00,480
Küche ne und benutzt das 
Interface ich sag mal. 

397
00:22:01,120 --> 00:22:02,200
Die. 
Speisekarte ne. 

398
00:22:02,200 --> 00:22:04,880
Also Nummer 5 ist halt eben dann
Spaghetti carbonara oder was 

399
00:22:04,880 --> 00:22:09,200
anderes was ihr meint und genau 
so kann man halt eben sagen, wir

400
00:22:09,200 --> 00:22:12,560
können halt. 
Neue Geräte hinzufügen oder 

401
00:22:12,560 --> 00:22:15,920
entfernen und es funktioniert 
alles noch ohne Probleme und 

402
00:22:15,920 --> 00:22:18,320
wenn wir das jetzt ganze noch 
mal so n bisschen auf Code 

403
00:22:18,320 --> 00:22:20,880
ebene, also was also wir haben 
ja quasi so verschiedene 

404
00:22:20,880 --> 00:22:24,960
vielleicht Klassen die wir dann 
brauchen, dafür hast du mal ne 

405
00:22:24,960 --> 00:22:28,160
kleine Erklärung für wie man das
Ganze jetzt so theoretisch 

406
00:22:28,160 --> 00:22:29,280
aufbauen. 
Können ja. 

407
00:22:29,280 --> 00:22:33,520
Also wenn wir jetzt quasi dein 
Fernbedienungsbeispiel nehmen, 

408
00:22:33,520 --> 00:22:36,160
also bei den Bridge Pattern 
unterscheidet man quasi immer. 

409
00:22:36,760 --> 00:22:39,920
Struction und Implementation, 
also die Abstraktion von der 

410
00:22:39,920 --> 00:22:42,480
Implementierung, ne, dass du 
beides unabhängig wie wir ja 

411
00:22:42,480 --> 00:22:45,840
gesagt hatten, behandeln kannst 
und weiterentwickeln kannst. 

412
00:22:46,640 --> 00:22:50,080
Und das wäre ja in dem Fall, 
dass du sagst, die Abstraktion 

413
00:22:50,080 --> 00:22:52,000
ist jetzt irgendwo meine 
Fernbedienung. 

414
00:22:52,160 --> 00:22:55,280
Ja und die Implementierung ist 
mein Gerät, also mein 

415
00:22:55,280 --> 00:22:59,320
spezifisches Gerät, das ist das 
TV Radio was du meintest. 

416
00:22:59,320 --> 00:23:02,640
Ja und? 
Das heißt, die Fernbedienung, 

417
00:23:02,640 --> 00:23:05,680
die weiß, was getan werden soll.
Zum Beispiel Gerät ein und 

418
00:23:05,680 --> 00:23:07,800
ausschalten. 
Machen wir es mal simpel, kannst

419
00:23:07,800 --> 00:23:10,480
du jetzt auch noch sagen, 
lauter, leiser würde jetzt auch 

420
00:23:10,480 --> 00:23:14,360
mappen. 
Ja, und diese Abstraktion 

421
00:23:14,360 --> 00:23:19,600
benutzt quasi dann ein Geräte 
Interface ja, aber ohne wirklich

422
00:23:19,600 --> 00:23:21,720
zu wissen für welches Gerät das 
ist. 

423
00:23:22,000 --> 00:23:23,920
Ich komm gleich dann noch mal 
spezifischer dazu. 

424
00:23:23,920 --> 00:23:27,520
Ja, und um das abzuschließen, 
die Implementierung ist im 

425
00:23:27,520 --> 00:23:29,720
Prinzip. 
Wie ist das technisch gemacht? 

426
00:23:29,720 --> 00:23:31,920
Das ist dann wirklich die 
technische Umsetzung. 

427
00:23:32,160 --> 00:23:36,760
Ja, von deinem Fernseher, also 
das der spezifische Fernseher 

428
00:23:36,760 --> 00:23:39,440
zum Beispiel auch weiß ja was 
was muss denn passieren, damit 

429
00:23:39,440 --> 00:23:41,680
ich eingeschaltet werde, was 
muss denn passieren, damit ich 

430
00:23:41,680 --> 00:23:44,960
ausgeschaltet werde, wie kann 
man mich leiser oder lauter 

431
00:23:44,960 --> 00:23:49,440
machen und das hat halt den 
Vorteil du kannst jetzt Geräte 

432
00:23:49,440 --> 00:23:51,880
entwickeln, guck mal hier wir 
haben n neuen Fernseher, das ist

433
00:23:51,880 --> 00:23:53,840
unser neuestes Modell, richtig 
klasse. 

434
00:23:54,240 --> 00:23:55,880
Und du kannst auch 
Fernbedienungen 

435
00:23:55,880 --> 00:23:58,920
weiterentwickeln, sozusagen. 
Ja unabhängig voneinander. 

436
00:23:58,920 --> 00:24:01,800
Guck mal hier, die Fernbedienung
ist aber richtig schön jetzt und

437
00:24:01,800 --> 00:24:03,360
die hat übrigens n Knopf 
weniger. 

438
00:24:03,600 --> 00:24:05,840
Ja, aber heutzutage ist ein 
Knopf weniger immer besser, 

439
00:24:06,560 --> 00:24:08,320
früher konnte es gar nicht genug
sein. 

440
00:24:08,440 --> 00:24:10,440
Kennst du noch diese 
Fernbedienung wo einfach 1000 

441
00:24:10,440 --> 00:24:13,760
knöpfe drauf sind und man sich 
so dachte Oh ja, guck dir meine 

442
00:24:13,760 --> 00:24:15,520
Fernbedienung an, die ist krass,
oder? 

443
00:24:15,680 --> 00:24:19,120
Ja ja dann zeig mir mal wo man 
leiser und lauter macht ah ich 

444
00:24:19,120 --> 00:24:21,360
muss suchen kurz suchen. 
Weißt du, was ich richtig 

445
00:24:21,360 --> 00:24:23,040
scheiße an meiner Fernbedienung 
finde? 

446
00:24:23,680 --> 00:24:25,720
So, ich hab ja n Fernseher so, 
da hast du dann irgendwie 

447
00:24:25,720 --> 00:24:29,360
Streamingdienste drauf. 
Ne so und jetzt ist da n Play 

448
00:24:29,360 --> 00:24:32,800
Button drauf und n vorspul 
Button und n Pause Button. 

449
00:24:33,440 --> 00:24:35,800
Aber der zählt dafür nicht ne. 
Man könnte sich ja vielleicht 

450
00:24:35,800 --> 00:24:39,840
denken, ey, ich meine 
Streamingdienste steuern, aber 

451
00:24:39,840 --> 00:24:41,720
Pustekuchen, das ganze. 
Ja. 

452
00:24:42,560 --> 00:24:44,560
Ich weiß aber nicht, wofür es 
dann ist. 

453
00:24:45,520 --> 00:24:47,520
Ah, das ist für Rascha ja nur 
die Frage. 

454
00:24:47,520 --> 00:24:50,080
Ne gute Frage für für den 
Videorekord. 

455
00:24:52,080 --> 00:24:57,840
VHS Ja, bestes Gerät. 
Ah stark OK, kommen wir zurück 

456
00:24:57,840 --> 00:25:00,400
zur Implementierung, das sieht 
dann so aus, dass du dann quasi 

457
00:25:00,400 --> 00:25:06,600
sagst, OK, wenn jetzt meine 
Abstraktion ein Geräteinterface 

458
00:25:06,600 --> 00:25:09,560
benötigt ne ohne zu wissen, 
damit man halt nicht genau den 

459
00:25:09,560 --> 00:25:11,760
Typ wissen muss. 
Ja also meine Fernbedienung 

460
00:25:12,000 --> 00:25:15,200
heißt ich brauch n Interface 
wieso oft bei dem Pattern? 

461
00:25:15,280 --> 00:25:18,480
Ich brauch erstmal n Interface 
und zwar n Geräteinterface das 

462
00:25:18,480 --> 00:25:20,640
nenn ich dann zum Beispiel 
Interface Geräte. 

463
00:25:21,200 --> 00:25:23,920
Und sag ja, wie soll das 
Interface aussehen? 

464
00:25:24,000 --> 00:25:26,440
Na ja, ich möchte jetzt 
einschalten können, ich möchte 

465
00:25:26,440 --> 00:25:30,080
ausschalten können, lauter und 
leiser, das sind so 4 Funktionen

466
00:25:30,080 --> 00:25:34,960
ganz easy erstmal ja OK und ich 
entwickel so jetzt quasi an der 

467
00:25:34,960 --> 00:25:37,280
Funktion meiner Fernbedienung, 
also wie meine Fernbedienung 

468
00:25:37,280 --> 00:25:41,920
später aussehen soll, ne 
beziehungsweise was sie 

469
00:25:41,920 --> 00:25:45,280
unterstützen soll was Geräte 
können soll um es mal so 

470
00:25:45,280 --> 00:25:49,280
bisschen abstrakter zu sagen ja.
Und gleichzeitig kann ja jetzt 

471
00:25:49,280 --> 00:25:52,320
jemand anfangen und sagen, ja, 
OKOK, ich baue jetzt, ich baue 

472
00:25:52,320 --> 00:25:54,600
jetzt dieses Gerät. 
Ja, wir haben jetzt per 

473
00:25:54,600 --> 00:25:58,000
Interface festgelegt, was das 
können soll und ich implementier

474
00:25:58,000 --> 00:26:00,720
jetzt gerät und bau dir n 
richtig schönen Fernseher. 

475
00:26:01,040 --> 00:26:03,040
Ja. 
So n nagelneuer. 

476
00:26:04,640 --> 00:26:09,320
Wie groß sind die mittlerweile? 
Ich bin da nicht so 238000 Zoll 

477
00:26:09,320 --> 00:26:17,240
238 Zoll. 1000, bitte. 
Und ich weiß ja, was der können 

478
00:26:17,240 --> 00:26:19,040
muss. 
Also wichtig ist einschalten, 

479
00:26:19,040 --> 00:26:21,200
ausschalten, lauter, leiser. 
Also das sind so die 4 

480
00:26:21,200 --> 00:26:25,040
Funktionen jetzt ja und 
gleichzeitig kann aber Person x 

481
00:26:25,600 --> 00:26:28,400
aber auch noch sagen ja warte 
mal, aber ich glaube n Radio wär

482
00:26:28,400 --> 00:26:30,840
jetzt auch geil mit den 
Funktionen ja also jetzt mach 

483
00:26:30,840 --> 00:26:33,960
ich noch n zweites Gerät was gar
nichts mit dem ersten zu tun 

484
00:26:33,960 --> 00:26:37,000
hat, n Radio halt ja also wir 
sind jetzt halt nur auf der 

485
00:26:37,000 --> 00:26:42,960
Tonspur und einschalten 
ausschalten leiser lauter Krieg 

486
00:26:42,960 --> 00:26:45,840
ich hin mach ich ja. 
Das ist denn dein Radio? 

487
00:26:45,840 --> 00:26:51,120
Um diesen Podcast hier zu hören,
quasi und im Prinzip nutzen 

488
00:26:51,120 --> 00:26:54,600
beide das gleiche Interface, 
Geräte oder Gerät ist ja nicht 

489
00:26:54,600 --> 00:26:59,200
mehr Zeit, gerät wäre eigentlich
korrekt und dann kannst du das 

490
00:26:59,200 --> 00:27:03,680
implementieren und dann hast du 
im Prinzip von, also der 

491
00:27:03,680 --> 00:27:07,000
Abstraktionsebene. 
Brauchst du ja natürlich auch ne

492
00:27:07,000 --> 00:27:09,320
Implementierung. 
Ja, weil ich meinte ja du kannst

493
00:27:09,320 --> 00:27:12,120
unabhängig deine Fernbedienung 
implementieren, das heißt du 

494
00:27:12,120 --> 00:27:13,760
brauchst natürlich auch ne 
Implementierung deiner 

495
00:27:13,760 --> 00:27:17,280
Fernbedienung und da kommt jetzt
der Clou dabei, dass du sagst 

496
00:27:18,160 --> 00:27:22,720
die hält jetzt ne Referenz zu 
einem Gerät, was definiert ist. 

497
00:27:23,200 --> 00:27:28,400
Ja, das heißt die Fernbedienung 
hält eine Instanz eines Gerätes,

498
00:27:28,400 --> 00:27:31,760
was? 
Was ja abstrakt im Sinne des 

499
00:27:31,760 --> 00:27:33,600
Interfaces ist. 
Das heißt, die Fernbedienung 

500
00:27:33,600 --> 00:27:36,640
weiß eigentlich gar nicht, 
welches Gerät das ist, sondern 

501
00:27:36,640 --> 00:27:39,240
einfach nur OK. 
Du bist n Gerät und ich kann 

502
00:27:39,240 --> 00:27:42,840
dich einschalten, ausschalten, 
lauter und leiser machen und das

503
00:27:42,840 --> 00:27:48,880
implementier ich da drin jetzt 
genau, dass ich sage Funktion 

504
00:27:49,040 --> 00:27:52,960
mach an nenn ich sie jetzt mal 
oder mach auf und da sag ich 

505
00:27:52,960 --> 00:27:57,200
dann OK gerät und Ruf die 
Funktion einschalten von Gerät 

506
00:27:57,200 --> 00:28:00,360
auf dann ist mir egal. 
Wie das passiert? 

507
00:28:00,360 --> 00:28:03,160
Mir ist egal, welches Gerät das 
ist aber meine Fernbedienung, 

508
00:28:03,160 --> 00:28:06,040
die ich gerade entwickel wird 
auf jeden Fall die 

509
00:28:06,040 --> 00:28:08,480
Einschaltfunktion des Gerätes 
bedienen. 

510
00:28:08,480 --> 00:28:13,600
Wenn ich sage mach an Knopf, 
mach an so ne oder bei dir 

511
00:28:13,920 --> 00:28:18,320
beispielsweise Play auf deiner 
Fernbedienung, ja ruft ne 

512
00:28:18,320 --> 00:28:20,760
Funktion auf die einfach gar 
nichts macht, scheinbar ja, die 

513
00:28:20,760 --> 00:28:23,600
ist einfach leer implementiert. 
Richtig. 

514
00:28:23,880 --> 00:28:25,760
Ja, im Endeffekt. 
Da ist ein to do drin, das ist 

515
00:28:25,840 --> 00:28:32,360
ein to do implement to do. 
Bald machen wir das im nächsten 

516
00:28:32,360 --> 00:28:34,960
Sprint. 
Aber im Ende genau so sieht das 

517
00:28:34,960 --> 00:28:37,120
dann aus, am Ende ja. 
Also du hast quasi ein 

518
00:28:37,120 --> 00:28:40,640
Interface, das Gerät. 
Du hast halt Implementierung von

519
00:28:40,640 --> 00:28:44,320
Geräten, also von einem Gerät 
was man halt gerne haben möchte 

520
00:28:44,320 --> 00:28:46,560
und du hast halt eben diese 
Fernbedienung, die halt wie du 

521
00:28:46,560 --> 00:28:49,120
meintest eine Referenz auf dem 
Gerät hat, sodass man dann sagen

522
00:28:49,120 --> 00:28:51,680
kann, ey, ich kann mir irgendwie
eine Fernbedienung anlegen und 

523
00:28:51,680 --> 00:28:53,800
dann da zum Beispiel diese 
Referenz auf. 

524
00:28:53,920 --> 00:28:55,680
Reingeben zum Beispiel. 
Ja, ich möchte ne neue 

525
00:28:55,680 --> 00:28:59,200
Fernbedienung erstellen für ein 
TV gerät oder für ein Radiogerät

526
00:28:59,200 --> 00:29:03,080
und dann kannst du halt einfach 
nur sagen Fernbedienung a macht 

527
00:29:03,080 --> 00:29:07,920
halt, ruft Halt an auf und 
Fernbedienung B ruft auch an auf

528
00:29:07,920 --> 00:29:10,040
und dann werden halt die 
entsprechenden Geräte. 

529
00:29:10,320 --> 00:29:15,000
B. 
Ruft die an, fängt einfach deine

530
00:29:15,000 --> 00:29:16,280
Fernbedienung an zu klingeln, 
aber. 

531
00:29:18,320 --> 00:29:21,400
Ja, aber das ist auf jeden Fall 
so technisch das, was man 

532
00:29:21,400 --> 00:29:26,240
theoretisch so dafür braucht, um
halt dieses Bridge Pattern halt 

533
00:29:26,240 --> 00:29:29,440
herzustellen, ne oder oder zu zu
basteln sag ich jetzt mal ne. 

534
00:29:29,600 --> 00:29:31,240
Genau. 
Und den entscheidenden Punkt 

535
00:29:31,240 --> 00:29:33,760
hast du ja genannt, dass man im 
Prinzip dann dieser 

536
00:29:33,760 --> 00:29:39,680
Fernbedienung im Konstruktor 
üblicherweise das Gerät mitgibt.

537
00:29:39,680 --> 00:29:44,160
Ja, dass du sagst, du bist jetzt
eine Fernbedienung mit dem Gerät

538
00:29:44,160 --> 00:29:48,800
XY genau die Fernbedienung. 
Intern weiß nicht, welches Gerät

539
00:29:48,800 --> 00:29:50,560
das ist, aber ich kann es von 
außen vorgeben. 

540
00:29:50,560 --> 00:29:51,920
Das ist ja der entscheidende 
Punkt. 

541
00:29:52,080 --> 00:29:57,280
Ich kann ja jetzt beide 
unabhängig implementierten Dinge

542
00:29:57,280 --> 00:30:00,240
nenn ich es mal ganz abstrakt, 
unser Gerät und unsere 

543
00:30:00,240 --> 00:30:05,280
Fernbedienung kombinieren und 
sagen, dadurch bist du jetzt ne 

544
00:30:05,280 --> 00:30:07,960
TV Fernbedienung, so könnt ich 
jetzt die Variable zum Beispiel 

545
00:30:07,960 --> 00:30:11,320
nennen, hab aber halt nicht 
diese klassenexplosion ich muss 

546
00:30:11,320 --> 00:30:14,000
halt nicht sagen Oh verdammt ich
brauch jetzt ne TV 

547
00:30:14,000 --> 00:30:16,800
Fernbedienung, ich brauch ne 
radiofernbedienung ich brauch. 

548
00:30:17,360 --> 00:30:22,000
Weiß ich was ja für ne 
Weckerfernbedienung kennt man 

549
00:30:22,160 --> 00:30:26,880
ganz klassisch ja und das ist 
halt der Vorteil, dass ich das 

550
00:30:26,880 --> 00:30:30,200
kombinieren kann, dann am Ende 
über ne gemeinsame Definition 

551
00:30:30,200 --> 00:30:31,760
eines Interfaces. 
Genau. 

552
00:30:31,760 --> 00:30:34,080
Und das Schöne ist halt, du 
kannst halt wie gesagt beide 

553
00:30:34,080 --> 00:30:36,560
Systeme unabhängig voneinander 
weiterentwickeln. 

554
00:30:37,040 --> 00:30:40,520
Wenn wir jetzt noch mal wirklich
explizite Beispiele nehmen, ne, 

555
00:30:40,520 --> 00:30:43,600
also zum Beispiel sowas wie dass
du. 

556
00:30:43,960 --> 00:30:46,880
Ne Datenbank austauschbar halten
kannst ne. 

557
00:30:46,880 --> 00:30:50,960
Also angenommen du hast heute 
irgendwie ne my SQL Datenbank, 

558
00:30:50,960 --> 00:30:54,800
morgen nimmst du ne Post SQL 
Datenbank oder ne SQ lite oder 

559
00:30:54,800 --> 00:31:02,360
sowas ne und du hast halt keine 
Lust zu sagen ich möchte jetzt 

560
00:31:02,360 --> 00:31:05,760
aber überall irgendwie meinem 
Code diese SQL Unterschiede 

561
00:31:05,760 --> 00:31:07,800
anfassen weil es ist ja so 
syntaktisch und immer so n 

562
00:31:07,800 --> 00:31:11,200
bisschen was anderes ne wie du 
dann eben diese Datenbank 

563
00:31:11,200 --> 00:31:14,360
queries an der Stelle machst. 
Und da kann es dann zum Beispiel

564
00:31:14,360 --> 00:31:15,840
helfen, einfach ne Bridge zu 
nutzen. 

565
00:31:15,840 --> 00:31:18,800
Ne, das heißt du hast halt diese
Abstraktion, ne diese Database 

566
00:31:18,800 --> 00:31:22,160
connection und halt eben 
bestimmte Implementierung dieser

567
00:31:22,160 --> 00:31:25,200
Database connection, also was 
wie ne my SQL connection, 

568
00:31:25,200 --> 00:31:32,640
postress connection oder 
nasculite connection ne und dann

569
00:31:32,640 --> 00:31:36,400
hast du im Endeffekt also diese 
Geschäftslogik. 

570
00:31:36,840 --> 00:31:39,760
Die du hast spricht dann 
wirklich nur mit der Database 

571
00:31:39,760 --> 00:31:41,440
connection. 
Also das ist jetzt genau dieses 

572
00:31:41,600 --> 00:31:44,000
dieses Beispiel, ne, dass man 
wie auch bei einer 

573
00:31:44,000 --> 00:31:47,400
Fernbedienung, wo man dann ein 
Gerät reingibt hat, man jetzt 

574
00:31:47,400 --> 00:31:52,080
zum Beispiel dann am Ende ne 
Database connection, wo du also 

575
00:31:52,080 --> 00:31:55,600
ne ne, also ne connection zu 
deiner Datenbank, die du halt 

576
00:31:55,760 --> 00:31:58,400
instanzierst die du ansprechen 
kannst, ne, also sagen wir mal 

577
00:31:58,400 --> 00:32:03,080
dein ich sag mal dein Database 
bridge ne wo du am Ende sagst OK

578
00:32:03,080 --> 00:32:06,720
aber explizit das in 
Anführungsstrichen gerät was du 

579
00:32:07,280 --> 00:32:11,280
dieser Bridge mitgibst ne ist 
dann am Ende zum Beispiel dann 

580
00:32:11,280 --> 00:32:15,920
eben die My SQL Connection oder 
halt ne andere Connection ne 

581
00:32:16,880 --> 00:32:18,640
und? 
Na ja, das ist natürlich n 

582
00:32:18,640 --> 00:32:20,280
super. 
Klassisches Beispiel ne wo man 

583
00:32:20,280 --> 00:32:25,600
das halt in der Regel sehr oft 
macht, sag ich mal, weil wie du 

584
00:32:25,600 --> 00:32:27,840
schon meintest, wenn ich die 
Datenbank austauschen möchte, 

585
00:32:27,840 --> 00:32:29,920
soll das ja nicht meine 
restliche Software beeinflussen,

586
00:32:29,920 --> 00:32:31,760
sondern ich hab halt wirklich 
diese Bridge. 

587
00:32:32,440 --> 00:32:36,320
Und sag OK, ich hab ne Art 
Service ne ja den verwende ich, 

588
00:32:36,320 --> 00:32:41,680
das ist meine Business Logik wie
ja füge was hinzu, lösche was ja

589
00:32:41,680 --> 00:32:45,040
diese typischen Crute Befehle 
dann am Ende gib mir alles und. 

590
00:32:45,600 --> 00:32:47,440
Bitte gib mir alles von dem 
Table. 

591
00:32:47,840 --> 00:32:49,280
In der Regel immer erstmal 
alles. 

592
00:32:49,360 --> 00:32:54,080
Gib mir erstmal alles und dann 
ist mir ja egal welche Datenbank

593
00:32:54,080 --> 00:32:56,320
da drunter liegt und wenn die 
ausgetauscht werden muss im 

594
00:32:56,320 --> 00:32:59,120
Projekt aus gründen warum auch 
immer ne. 

595
00:32:59,720 --> 00:33:02,800
Dann wär es ja natürlich toll, 
wenn nichts davon beeinflusst 

596
00:33:02,800 --> 00:33:04,880
ist. 
Abseits der Implementierung 

597
00:33:04,880 --> 00:33:08,000
dieser Datenbank sozusagen. 
Und genau das ist n super 

598
00:33:08,000 --> 00:33:11,200
Anwendungsbeispiel. 
Genau, also dann hast du halt 

599
00:33:11,200 --> 00:33:12,880
diese Brücke wieder und dann 
rennt einer über die. 

600
00:33:12,880 --> 00:33:14,880
Brücke ja, warte ich hol die 
Daten nicht mehr gleich zurück, 

601
00:33:14,880 --> 00:33:17,680
so weißt du und rennt halt über 
die Brücke, was auf der anderen 

602
00:33:17,680 --> 00:33:21,040
Seite ist, ist uns egal. 
Sozusagen ne Kleine in 

603
00:33:21,040 --> 00:33:23,040
Anführungsstrichen Blackbox, 
aber das Schöne ist halt wie 

604
00:33:23,040 --> 00:33:26,800
gesagt, du kannst halt eben das 
System Datenbank unabhängig 

605
00:33:26,800 --> 00:33:29,200
voneinander entwickeln, kannst 
sagen OK ich ich. 

606
00:33:29,680 --> 00:33:31,360
Nee, wir müssen doch was anderes
nehmen. 

607
00:33:31,360 --> 00:33:33,680
Das passt irgendwie nicht mehr 
aus bestimmten Gründen. 

608
00:33:33,760 --> 00:33:36,760
Oder du entwickelst halt eben 
deine Business Logik auf der 

609
00:33:36,760 --> 00:33:39,320
anderen Seite weiter und sagst 
na ja, aber an der Stelle wollen

610
00:33:39,320 --> 00:33:41,720
wir jetzt nicht select all 
haben, sondern zum Beispiel was 

611
00:33:41,720 --> 00:33:46,160
weiß ich, gib mir mal nur ne 
entsprechende Teilmenge der 

612
00:33:46,160 --> 00:33:48,880
Table und dann kannst du das 
Halt weiterentwickeln und diese 

613
00:33:48,880 --> 00:33:51,720
Bridge sorgt dafür, dass beides 
unabhängig voneinander 

614
00:33:51,720 --> 00:33:54,000
entwickelt werden kann, ohne 
dass du halt jetzt wirklich 

615
00:33:54,000 --> 00:33:57,560
sagen musst, ich fasse spezielle
Implementierungen an der Stelle 

616
00:33:57,560 --> 00:34:00,760
an. 
Und das ist halt das Schöne an 

617
00:34:00,760 --> 00:34:03,680
der Stelle. 
Absolut. 

618
00:34:03,960 --> 00:34:06,800
Ein anderes Beispiel, was mir da
auch recht schnell einfällt, ist

619
00:34:07,520 --> 00:34:10,800
so typische. 
Anwendungsfälle, wo ich 

620
00:34:10,800 --> 00:34:14,280
unterschiedliche Formate 
supporten möchte, also 

621
00:34:14,280 --> 00:34:17,840
beispielsweise Videos oder oder 
Bilder. 

622
00:34:17,840 --> 00:34:22,199
Ja, da gibt es ja verschiedenste
Formate und gefühlt, wenn ich 

623
00:34:22,199 --> 00:34:24,960
irgendwie in dem Bereich was 
mache, kann ich auch immer alles

624
00:34:24,960 --> 00:34:28,800
exportieren in die 
entsprechenden Formate, ne ah ja

625
00:34:28,800 --> 00:34:32,199
exportier mir mal jetzt bitte 
keine Ahnung, das Bild was ich 

626
00:34:32,199 --> 00:34:37,360
hier gemalt hab, ja klar was 
willst du denn für n Format PNGJ

627
00:34:37,360 --> 00:34:39,400
Peg? 
Vielleicht sogar ne 

628
00:34:39,400 --> 00:34:41,880
Vektorgrafik. 
Ja, also sag mir was du willst. 

629
00:34:41,880 --> 00:34:46,400
Sag mir was du willst, so ne und
da muss man sagen kann man ja 

630
00:34:46,400 --> 00:34:49,679
auch wieder super das Bridge 
pattern ich wollt gerade Bilder 

631
00:34:49,679 --> 00:34:55,800
sagen komplett falsch bridge 
pattern anwenden weil du sagen 

632
00:34:55,800 --> 00:34:59,760
kannst OK ich implementiere 
jetzt ne Art Exporter Project 

633
00:34:59,760 --> 00:35:04,440
Exporter oder Image Exporter 
ganz allgemein und der sorgt 

634
00:35:04,440 --> 00:35:07,760
dafür, dass ich sagen kann, was 
soll denn ermöglicht werden. 

635
00:35:08,160 --> 00:35:10,960
Ja, also was möchte ich denn 
exportieren? 

636
00:35:10,960 --> 00:35:14,160
Wie soll das Aussehen und hab da
so meine Logik drin von meiner 

637
00:35:14,160 --> 00:35:19,680
inneren Anwendung sozusagen und 
von außen implementier ich dann 

638
00:35:19,680 --> 00:35:24,640
sozusagen die das Exportieren an
sich. 

639
00:35:25,520 --> 00:35:29,200
Ja, also wie komme ich denn in 
das finale Dateiformat? 

640
00:35:29,280 --> 00:35:32,240
Und das kann ich ja wieder, denn
für alle möglichen machen. 

641
00:35:32,240 --> 00:35:35,600
Ja, also was hatte ich gesagt, J
Peg, von mir aus auch PDF oder 

642
00:35:35,600 --> 00:35:38,160
sowas gibt es ja auch öfter mal,
dass du sagst OK nee, ich möchte

643
00:35:38,160 --> 00:35:41,400
aber ne PDF jetzt daraus machen 
und dann habe ich so 

644
00:35:41,400 --> 00:35:43,360
verschiedene Klassen die das 
implementieren. 

645
00:35:44,200 --> 00:35:48,560
Und dem Exporter gebe ich jetzt 
quasi zum Beispiel über meine UI

646
00:35:48,560 --> 00:35:51,600
wähle ich aus, was ich haben 
möchte und er weiß dann im 

647
00:35:51,600 --> 00:35:54,400
Endeffekt, welchen welche 
Implementierung er denn 

648
00:35:54,400 --> 00:35:57,840
verwenden soll. 
Aber auf der, wenn man sich das 

649
00:35:57,840 --> 00:36:01,440
jetzt vorstellt sowieso n wieso 
n Ablauf ne auf der rechten 

650
00:36:01,440 --> 00:36:05,360
Seite habe ich jetzt quasi die 
exakte Implementierung wie 

651
00:36:05,440 --> 00:36:09,200
exportiert werden soll, die 
Brücke dazwischen und links 

652
00:36:09,200 --> 00:36:12,800
meine restliche Software und der
da muss ja egal sein, welches 

653
00:36:12,800 --> 00:36:15,520
Format am Ende ausgewählt wird. 
Soll das Gleiche passieren? 

654
00:36:15,920 --> 00:36:18,240
Ja. 
Genau dafür kannst du in das 

655
00:36:18,240 --> 00:36:20,160
Pattern halt auch nehmen, ne? 
Auf jeden Fall. 

656
00:36:20,800 --> 00:36:23,680
Und ich find da sieht man auch 
schon ganz gut, wann man es halt

657
00:36:23,680 --> 00:36:26,000
zum Beispiel auch wirklich nicht
unbedingt verwenden muss. 

658
00:36:26,000 --> 00:36:27,040
Ne. 
Also wenn du jetzt wirklich 

659
00:36:27,040 --> 00:36:31,320
sagst, so, du hast halt keine 2 
unabhängigen Hierarchien 

660
00:36:31,320 --> 00:36:33,880
voneinander, ne, also zum 
Beispiel jetzt mal jetzt noch 

661
00:36:33,920 --> 00:36:39,200
mal auf das Datenbankbeispiel 
zurückgehen, wenn du sagst, ey 

662
00:36:39,200 --> 00:36:42,640
du hast halt eben. 
Benutzt nur eine My SQL 

663
00:36:42,640 --> 00:36:45,240
Datenbank beispielsweise es wird
keine andere geben. 

664
00:36:45,240 --> 00:36:50,760
Wir brauchen das ist felsenfest 
und mach es nicht komplizierter 

665
00:36:50,760 --> 00:36:52,440
als es ist. 
Dann brauchst du an der Stelle 

666
00:36:52,440 --> 00:36:55,120
keine Bridge unbedingt, dann 
kannst du halt rein theoretisch 

667
00:36:55,280 --> 00:36:58,720
direkt sagen, OK ich schreibe 
auch meine SQL Queries in meinen

668
00:36:58,720 --> 00:37:02,040
Code richtig rein. 
Weil du sowieso weißt, du musst 

669
00:37:02,040 --> 00:37:04,320
sie nicht mehr anpassen. 
Diese zum Beispiel diese Syntax 

670
00:37:04,320 --> 00:37:06,400
der SQL Queries, die wird sich 
nicht verändern. 

671
00:37:06,640 --> 00:37:10,000
Du brauchst also keine Bridge, 
die dafür sorgt, dass eben das 

672
00:37:10,000 --> 00:37:12,560
einfach austauschbar ist. 
Ne und an der Stelle, dass dass 

673
00:37:12,560 --> 00:37:14,280
du halt sagst, OK, ich kann 
jetzt zum Beispiel meine 

674
00:37:14,280 --> 00:37:17,600
Datenbank unabhängig irgendwie 
weiterentwickeln, verändern, 

675
00:37:17,600 --> 00:37:20,600
austauschen, wie auch immer, ne,
dann brauchst du das zum 

676
00:37:20,600 --> 00:37:24,240
Beispiel nicht. 
Ja, ich find es bei der 

677
00:37:24,240 --> 00:37:32,160
Datenbank immer spannend. 
Weil, wie soll ich sagen, ich 

678
00:37:32,160 --> 00:37:35,120
hatte jetzt noch nicht oft den 
Fall, dass ich wirklich 

679
00:37:35,120 --> 00:37:41,320
grundlegend die Datenbank 
austausche, ne, aber sehr oft 

680
00:37:41,320 --> 00:37:43,080
den Fall, dass ich trotzdem 
unterschiedliche 

681
00:37:43,080 --> 00:37:47,120
Implementierungen brauche oder 
mindestens 2. 

682
00:37:48,800 --> 00:37:51,760
Deswegen also diese diese 
Abstraktion an der Stelle oder 

683
00:37:51,760 --> 00:37:54,560
das Bridgepad, dann ist halt 
einfach wirklich von Vorteil, 

684
00:37:54,560 --> 00:37:58,240
allein schon wenn ich sage, ich 
möchte meine Software ja und das

685
00:37:58,240 --> 00:38:02,880
sollte immer der Fall sein, 
vernünftig abtesten ja, dann ist

686
00:38:02,880 --> 00:38:05,280
nämlich auch das Bridgepad dann 
hilfreich, um zum Beispiel zu 

687
00:38:05,280 --> 00:38:08,240
sagen, na ja, aber ich kann ja 
auch ne Testdatenbank 

688
00:38:08,480 --> 00:38:11,680
implementieren, die genau das 
macht, was ich jetzt in meinen 

689
00:38:11,680 --> 00:38:14,640
Tests haben möchte und kann, 
aber weil ich ne Bridge. 

690
00:38:15,000 --> 00:38:18,160
Implementiert habe die einfach 
verwenden sozusagen. 

691
00:38:18,320 --> 00:38:21,280
Ist ja auch n Riesenvorteil in 
Sachen Testbarkeit. 

692
00:38:21,360 --> 00:38:24,480
Du willst ja nicht in deinen 
Tests auf der echten Datenbank 

693
00:38:24,520 --> 00:38:28,040
rumhacken, beispielsweise wenn 
du jetzt wieder ne harte 

694
00:38:28,040 --> 00:38:32,240
Kopplung hast am Ende also 
deswegen also dieses Bridge 

695
00:38:32,240 --> 00:38:34,880
Pattern oder oder allgemein 
Pattern, die wir besprechen 

696
00:38:34,880 --> 00:38:38,000
helfen ja auch in solchen Fällen
und nicht nur um. 

697
00:38:38,720 --> 00:38:42,040
Mehrere Sachen zu unterstützen 
oder flexibel zu sein, ja sehr 

698
00:38:42,040 --> 00:38:43,360
wichtig. 
Also ich finde gerade der 

699
00:38:43,360 --> 00:38:46,640
Testgedanke ist halt auch immer 
eine Form, die ich bräuchte, 

700
00:38:46,640 --> 00:38:49,640
dabei sozusagen oder eine 
Variante, wie man es jetzt 

701
00:38:49,640 --> 00:38:51,840
nennen möchte. 
Ja, gerade wenn man zum Beispiel

702
00:38:51,840 --> 00:38:53,680
wirklich an den Punkt kommt, ich
finde das Beispiel was du 

703
00:38:53,680 --> 00:38:56,720
gebracht hast wirklich sehr sehr
gut, weil wenn du jetzt zum 

704
00:38:56,880 --> 00:39:00,320
Beispiel weil wenn du jetzt zum 
Beispiel sagst, und das ist 

705
00:39:00,480 --> 00:39:03,800
immer ein gutes Anzeichen dafür,
du überlegst dir, wie du etwas 

706
00:39:03,800 --> 00:39:07,120
testen kannst, ne und merkst, es
ist nicht gut testbar so. 

707
00:39:08,360 --> 00:39:10,920
Dann und du dann zum Beispiel 
vielleicht so ein Pattern 

708
00:39:10,920 --> 00:39:13,600
nimmst, um dann zu sagen, OK, 
jetzt kann ich es aber viel 

709
00:39:13,600 --> 00:39:16,560
besser testen, ist es meiner 
Meinung nach auch auf jeden Fall

710
00:39:16,560 --> 00:39:19,640
ein sehr sehr gutes Anzeichen 
dafür, dass dein Code quasi 

711
00:39:19,640 --> 00:39:22,240
improved ist. 
Ne, dass du sagst, ey warte mal,

712
00:39:22,240 --> 00:39:25,600
du hast jetzt etwas, also du 
nutzt zum Beispiel ein Pattern 

713
00:39:25,920 --> 00:39:28,640
um halt die Testbarkeit zu 
verbessern, nicht unbedingt nur 

714
00:39:28,640 --> 00:39:32,000
den Code an sich, aber die 
Testbarkeit zu verbessern, dann 

715
00:39:32,000 --> 00:39:33,520
hat es auf jeden Fall was 
gebracht. 

716
00:39:33,680 --> 00:39:35,720
Also es ist auf jeden Fall ein 
sehr sehr guter Punkt für nicht 

717
00:39:35,720 --> 00:39:39,600
zu sagen, achtet auch. 
Nicht nur darauf, dass keine 

718
00:39:39,600 --> 00:39:43,880
Ahnung man jetzt so Lehrbuch 
nach irgendwas verknüpfen kann 

719
00:39:43,880 --> 00:39:46,800
oder so, sondern halt eben auch 
den Faktor Testbarkeit mit 

720
00:39:46,800 --> 00:39:47,960
einzubeziehen. 
Ne? 

721
00:39:48,400 --> 00:39:50,800
Ja, absolut, wirklich. 
Weil meistens ist es, wie du ja 

722
00:39:50,800 --> 00:39:54,720
meintest n Indikator dafür, ob 
die Software besser wird oder 

723
00:39:54,800 --> 00:39:58,560
auch robuster. 
Natürlich ne und sollten dann 

724
00:39:58,720 --> 00:40:02,600
quasi die Unterscheidung oder 
die die unterschiedlichen 

725
00:40:02,600 --> 00:40:04,760
Implementierungen doch 
auftreten, dann bist du halt 

726
00:40:04,760 --> 00:40:07,000
drauf vorbereitet. 
In dem Moment, weil du schon, 

727
00:40:07,000 --> 00:40:11,120
also anhand deiner Tests gesehen
hast, ich bin in der Lage, das 

728
00:40:11,120 --> 00:40:14,880
zu skalieren oder variabel zu 
halten beispielsweise ja, 

729
00:40:15,120 --> 00:40:17,520
definitiv. 
Ich würd zum Beispiel noch 

730
00:40:17,520 --> 00:40:20,040
sagen, wenn du jetzt also, wo 
man es jetzt vielleicht nicht 

731
00:40:20,040 --> 00:40:22,960
unbedingt benötigt, wenn du 
jetzt zum Beispiel sagst, du 

732
00:40:22,960 --> 00:40:25,520
hast irgendwie ne, du schreibst 
ne Software und du deine 

733
00:40:25,520 --> 00:40:29,080
Software ist eigentlich relativ 
einfach Straight Forward, da ist

734
00:40:29,080 --> 00:40:32,400
jetzt nicht so viel rechts und 
links, du musst auf gar nicht so

735
00:40:32,400 --> 00:40:34,800
viel achten, das ist ne wirklich
kleine Anwendung, das heißt? 

736
00:40:35,080 --> 00:40:37,920
Die Einfachheit ist wichtiger 
als die Flexibilität an der 

737
00:40:37,920 --> 00:40:41,600
Stelle, weil du die Flexibilität
gar nicht brauchst. 

738
00:40:42,640 --> 00:40:47,840
Dann ist es natürlich auch nicht
unbedingt notwendig oder ratsam,

739
00:40:47,840 --> 00:40:51,440
das Bridge Pattern zu verwenden,
weil du halt wie bei vielen 

740
00:40:51,440 --> 00:40:54,160
Dingen, wenn du es nicht 
brauchst und trotzdem ein 

741
00:40:54,160 --> 00:40:57,120
Pattern nutzt, hast du halt 
immer ein Overhead, ne, also. 

742
00:40:57,760 --> 00:41:00,320
Von den entsprechenden 
Interfaces. 

743
00:41:00,320 --> 00:41:02,480
Also du hast mehr Interfaces, 
logischerweise ne wie zum 

744
00:41:02,480 --> 00:41:05,520
Beispiel das Gerät Interface 
oder halt höhere 

745
00:41:05,520 --> 00:41:08,000
Abstraktionsebenen, die 
natürlich auch Code wieder 

746
00:41:08,000 --> 00:41:12,440
komplexer machen. 
Ja ich also ich find es ist so n

747
00:41:12,440 --> 00:41:15,240
bisschen kleiner trade off, 
sorry du wolltest gerade noch 

748
00:41:15,240 --> 00:41:18,040
was sagen, aber es ist so n 
kleiner trade off zwischen finde

749
00:41:18,040 --> 00:41:22,320
ich. 
Was brauchst du jetzt schon und 

750
00:41:22,320 --> 00:41:25,520
was brauchst du in der Zukunft, 
um zu sagen, das brauch ich 

751
00:41:25,520 --> 00:41:27,600
gerade nicht? 
Das brauch ich definitiv nicht 

752
00:41:27,600 --> 00:41:31,920
in der Zukunft und ich muss mich
quasi schon mal im Vorfeld 

753
00:41:32,240 --> 00:41:36,400
darauf einstellen, dass ich das 
vielleicht noch brauche und mein

754
00:41:36,400 --> 00:41:42,040
Code flicks, also ich sag mal 
erweiterbar genug halte um sowas

755
00:41:42,040 --> 00:41:46,000
eventuell dann später nicht in 
einem riesen Refactoring umbauen

756
00:41:46,000 --> 00:41:49,200
zu müssen. 
Ja, aber das war auch genau das 

757
00:41:49,200 --> 00:41:53,280
richtige Stichwort. 
Schon Refactoring angenommen, 

758
00:41:53,280 --> 00:41:57,040
ich habe es am Anfang nicht auf 
dem Schirm gehabt, dass ich das 

759
00:41:57,040 --> 00:41:59,520
zukünftig brauchen werde oder 
die Bedingungen haben sich so 

760
00:41:59,520 --> 00:42:02,800
extrem geändert, dass es nicht 
absehbar war, ist das natürlich 

761
00:42:02,800 --> 00:42:06,080
auch kein Weltuntergang, weil 
man kann ja refactor, man sollte

762
00:42:06,080 --> 00:42:08,720
Refactor und refactor ist auch n
wichtiger Schritt in jedem 

763
00:42:08,720 --> 00:42:12,240
Projekt, auch wenn viele das, 
ich sag es provokativ so und 

764
00:42:12,240 --> 00:42:15,920
dann Teppich kern sagen, ja nee,
keine Zeit für, aber genau das. 

765
00:42:16,360 --> 00:42:19,840
Ist ja der Schritt, der dann, 
sag ich mal ansteht zu sagen, Na

766
00:42:19,840 --> 00:42:22,480
ja, aber jetzt mit unseren 
neuesten Erkenntnissen wissen 

767
00:42:22,480 --> 00:42:25,600
wir, es wäre besser, jetzt auf 
zum Beispiel das Bridge Pattern 

768
00:42:25,600 --> 00:42:29,040
zu setzen und wir haben es 
gerade alles gekoppelt, wir 

769
00:42:29,040 --> 00:42:31,360
müssen uns jetzt Zeit nehmen, 
das umzubauen, man kann es ja 

770
00:42:31,360 --> 00:42:33,920
umbauen, es ist ja nicht so, 
dass es für immer fest 

771
00:42:33,920 --> 00:42:36,880
verdrahtet ist und du entweder 
das Projekt Wegschmeißt und neu 

772
00:42:36,880 --> 00:42:39,040
machst mit dem Bridge Pattern 
oder es halt so lassen musst. 

773
00:42:39,040 --> 00:42:40,560
So ist es ja nicht, ne, das 
stimmt. 

774
00:42:42,640 --> 00:42:46,000
Und ich find den anderen Punkt 
auch gut, wenn Einfachheit oder 

775
00:42:46,640 --> 00:42:51,360
sag ich mal dein Projekt an sich
schon verlangt, dass du sowas 

776
00:42:51,360 --> 00:42:53,040
gar nicht in Betracht ziehen 
sollst. 

777
00:42:53,040 --> 00:42:57,680
Ne, dass du halt so spezifisch 
etwas implementierst, wo es 

778
00:42:57,680 --> 00:43:01,440
einfach wirklich gar nicht 
sinnvoll ist, irgendwelche 

779
00:43:01,680 --> 00:43:05,280
Flexibilität drin zu haben. 
Nehmen wir mal noch mal das 

780
00:43:05,280 --> 00:43:09,040
Beispiel Datenbank. 
Ja also oder ne Anwendung n 

781
00:43:09,120 --> 00:43:11,360
klassisches Backend mit einer 
Datenbankanbindung. 

782
00:43:11,360 --> 00:43:15,440
Ja, das allein wie wir meinten 
mit der Testbarkeit, weil ich 

783
00:43:15,440 --> 00:43:17,680
halt auch mit mit einer 
Datenbank arbeite bietet sich 

784
00:43:17,680 --> 00:43:20,640
das schon an so das flexibel zu 
halten. 

785
00:43:20,640 --> 00:43:25,000
OK gut würde ich sagen gover it 
wenn ich jetzt aber keine Ahnung

786
00:43:25,000 --> 00:43:28,320
ich bin jetzt n Embedded 
Entwickler und ich schreibe 

787
00:43:28,320 --> 00:43:32,400
Software für ne ganz spezifische
Mikrocontroller ja und? 

788
00:43:32,960 --> 00:43:36,480
Welche Flexibilität möchte ich 
denn da jetzt haben, wenn ich 

789
00:43:36,480 --> 00:43:39,240
wirklich auf dem Mikrocontroller
arbeite? 

790
00:43:39,240 --> 00:43:42,640
Also wirklich auf ne ganz 
spezifische Implementierung hin 

791
00:43:42,640 --> 00:43:46,960
arbeite, dann kann man sich halt
fragen, muss ich das jetzt 

792
00:43:46,960 --> 00:43:50,560
machen, killt mir der Overhead 
nicht vielleicht sogar 

793
00:43:50,640 --> 00:43:54,360
Performance am Ende und das sind
halt genau die Unterscheidungen,

794
00:43:54,360 --> 00:43:57,320
ne also projektspezifisch zu 
unterscheiden macht das jetzt 

795
00:43:57,320 --> 00:44:01,520
Sinn oder nicht? 
Ja find ich auch n sehr gutes. 

796
00:44:02,680 --> 00:44:07,760
Beispiel aus dem Real Life, wie 
man so schön sagt, wo man dann 

797
00:44:07,920 --> 00:44:10,080
das nicht braucht, vielleicht n 
Adapter später mal. 

798
00:44:10,560 --> 00:44:20,600
Aber ja genau, Adapter löten 
dann was ich damit oder n 

799
00:44:20,600 --> 00:44:23,760
anderes Beispiel ja wenn du 
irgendwie ne Software schreibst 

800
00:44:23,760 --> 00:44:25,840
die auf mehreren 
Betriebssystemen laufen soll. 

801
00:44:26,160 --> 00:44:28,480
Das das ist auch schon so n 
Indikator wo du sagst na ja gut,

802
00:44:28,480 --> 00:44:31,040
ich werde ja Unterscheidung in 
dem Betriebssystem haben wie die

803
00:44:31,040 --> 00:44:34,640
das umsetzen möchte, aber 
eigentlich das Gleiche von denen

804
00:44:34,800 --> 00:44:37,520
abverlangen sozusagen. 
Dann hab ich schon wieder so vom

805
00:44:37,520 --> 00:44:42,080
Gedanken her wow, da macht das 
Sinn, ja oder in Frontends oder 

806
00:44:42,080 --> 00:44:47,040
so ne App Entwicklung cross 
Plattform was es denn alles so 

807
00:44:47,040 --> 00:44:49,560
gibt halt ne da da macht das 
alles Sinn aber es gibt halt 

808
00:44:49,560 --> 00:44:52,360
auch Fälle und da geh ich 
absolut mit wenn Leute das sagen

809
00:44:52,360 --> 00:44:55,440
so. 
Ey, ganz ehrlich, dieses Projekt

810
00:44:55,440 --> 00:44:59,280
ist nur für diese eigene 
Plattform, wozu? 

811
00:44:59,600 --> 00:45:01,600
Na, weißt du? 
Und ich find das ist halt wieder

812
00:45:01,600 --> 00:45:04,480
mal das Stichwort, weil es 
einfach wichtig ist, sich genau 

813
00:45:04,480 --> 00:45:07,320
zu überlegen, wofür man 
eigentlich was codet und nicht 

814
00:45:07,320 --> 00:45:11,600
einfach nur sagt Ey, ich hab 
hier mal gehört Bridgepattern 

815
00:45:11,600 --> 00:45:14,000
ist voll geil, das müssen wir 
auf jeden Fall nehmen. 

816
00:45:14,880 --> 00:45:16,800
Bringt nichts, wenn du es 
eigentlich gar nicht brauchst. 

817
00:45:16,800 --> 00:45:19,440
Deswegen das ist halt das 
wichtige und deswegen ist es 

818
00:45:19,440 --> 00:45:22,480
halt auch gut, dass wir auch 
diese ganzen Pattern vielleicht 

819
00:45:22,480 --> 00:45:25,760
noch mal nicht nur also auch für
uns sag ich jetzt mal auch 

820
00:45:25,760 --> 00:45:28,080
einfach noch mal durchgehen, 
weil es einfach auch interessant

821
00:45:28,080 --> 00:45:32,120
ist, sich das noch mal in die 
Gedanken zu rufen, um zu sagen, 

822
00:45:32,120 --> 00:45:35,960
OK das dieses Pattern gibt es 
und wann kann man diese solche 

823
00:45:35,960 --> 00:45:39,360
Pattern eigentlich überhaupt 
benutzen und man sollte sie halt

824
00:45:39,360 --> 00:45:40,880
nur benutzen, wenn sie halt 
wirklich auch. 

825
00:45:41,400 --> 00:45:44,440
Wichtig oder dringend sind ne, 
was nicht heißt, dass man sie 

826
00:45:44,440 --> 00:45:46,960
nicht auch einfach mal 
implementieren kann, einfach so 

827
00:45:46,960 --> 00:45:48,480
zum Spaß um es mal gemacht zu 
haben. 

828
00:45:48,520 --> 00:45:52,360
Ne hatten wir auch schon mal 
gesagt ja ich find das ist auch 

829
00:45:52,360 --> 00:45:55,800
n extrem guter Punkt, weil wir 
das glaub ich in der Community 

830
00:45:55,800 --> 00:46:00,400
als Frage hatten wie man sich 
die ganzen Pattern denn merken 

831
00:46:00,400 --> 00:46:04,720
kann und ob wir uns denn alle 
merken und da haben wir ja auch 

832
00:46:05,680 --> 00:46:08,080
ehrlich und transparent 
geantwortet, so wie wir es hier 

833
00:46:08,080 --> 00:46:10,400
auch sagen. 
Ja natürlich merkst du dir nicht

834
00:46:10,400 --> 00:46:12,320
alle. 
Ja, du hast irgendwann welche, 

835
00:46:12,320 --> 00:46:14,240
die du vielleicht gerade im 
Projekt verwendest. 

836
00:46:14,240 --> 00:46:18,000
Dann hast du die auf dem Schirm 
oder so Evergreens, die du halt 

837
00:46:18,000 --> 00:46:20,560
schon wirklich oft verwendet 
hast, wie jetzt ne Factory 

838
00:46:20,560 --> 00:46:23,520
beispielsweise in unserem Fall 
jetzt nur von uns gesprochen, 

839
00:46:23,680 --> 00:46:26,960
die haben wir halt öfter schon 
mal verwendet, weil die oft cool

840
00:46:26,960 --> 00:46:31,120
kommt, sagt man so ne, aber es 
gibt du kannst dir natürlich 

841
00:46:31,120 --> 00:46:34,000
nicht alle Pattern merken, also 
bin ich der Meinung und das ist 

842
00:46:34,000 --> 00:46:37,040
auch völlig in Ordnung, wichtig 
ist aber sie. 

843
00:46:37,560 --> 00:46:41,040
Mal zu verstehen und zu 
verinnerlichen, dass wenn ich 

844
00:46:41,040 --> 00:46:45,440
wieder auf sie stoße, verstehe, 
warum sie da sind oder warum sie

845
00:46:45,440 --> 00:46:50,400
benötigt werden. 
Ja ja und ansonsten hört man 

846
00:46:50,400 --> 00:46:53,040
entweder hier wieder in unsere 
Reihe rein oder es gibt halt 

847
00:46:53,040 --> 00:46:57,040
auch coole Zusammenfassung im 
Netz dazu und dann frischt man 

848
00:46:57,040 --> 00:46:58,320
das auf. 
Und dann ist gut. 

849
00:46:58,560 --> 00:47:00,520
Genau. 
Dass und da noch mal so n 

850
00:47:00,520 --> 00:47:02,720
bisschen den Druck rauszunehmen,
weil wir angeschrieben wurden. 

851
00:47:02,840 --> 00:47:06,000
Oh mein Gott, ich kann mir die 
alle gar nicht merken, so, ja. 

852
00:47:06,400 --> 00:47:08,840
Nee, da ist es auf jeden Fall. 
Vielleicht implementiert man ja 

853
00:47:08,840 --> 00:47:11,520
auch einfach mal n Pattern, ohne
eigentlich genau zu wissen, wie 

854
00:47:11,520 --> 00:47:14,320
das Pattern heißt, ne, also dass
du jetzt wirklich sagst, ja 

855
00:47:14,320 --> 00:47:18,000
klar, das ist jetzt das Bridge 
Pattern und das macht man, weil.

856
00:47:18,440 --> 00:47:21,520
ABCDE so, sondern wenn du 
einfach nur verstanden hast, 

857
00:47:21,520 --> 00:47:24,480
wofür etwas da ist, kannst du es
einfach anwenden, auch ohne dass

858
00:47:24,480 --> 00:47:26,440
du jetzt sagst, ja, das ist 
jetzt das und das Pattern und 

859
00:47:26,440 --> 00:47:28,640
das macht das und das und das 
verwendet man da und da und da 

860
00:47:28,640 --> 00:47:31,280
und da nicht so ne, dass man 
einfach so gesagt hat, die 

861
00:47:31,680 --> 00:47:33,720
Intuition dafür bekommt das Halt
zu machen und. 

862
00:47:33,720 --> 00:47:35,840
Deswegen ja, weil du hast halt 
die Zielsetzung, du weißt ja, 

863
00:47:35,840 --> 00:47:37,520
was du erreichen möchtest. 
Und dann? 

864
00:47:38,120 --> 00:47:41,040
Sag ich mal. 
Ja, viele Wege führen nach Rom, 

865
00:47:41,040 --> 00:47:42,920
so ne. 
Dann heißt es vielleicht nicht, 

866
00:47:42,920 --> 00:47:45,200
dass du jetzt exakten 
Bridgepattern umgesetzt hast, 

867
00:47:45,200 --> 00:47:48,400
aber du hast versucht, diese 
diese Vorteile, diese Benefits 

868
00:47:48,560 --> 00:47:52,280
zu r coden sag ich mal ne ne und
das ist ja auch der 

869
00:47:52,280 --> 00:47:55,440
entscheidende Punkt am Ende. 
Ich glaub du jetzt den Bridge da

870
00:47:55,440 --> 00:47:58,520
ran, schreibst an deine Klassen 
oder nicht ja oder ob du die 

871
00:47:58,520 --> 00:48:01,280
Factory jetzt Factory nennst 
oder nicht. 

872
00:48:01,280 --> 00:48:04,640
Ja, ich glaub im alten Rom hieß 
es noch aquädukpattern, aber sag

873
00:48:04,720 --> 00:48:08,320
ich mal hergestellt ja. 
Oh Gott, auch hab ich auch 

874
00:48:08,320 --> 00:48:10,400
gelesen es. 
Ist es ist schon spät. 

875
00:48:10,560 --> 00:48:12,320
Ich glaub wir machen. 
Aber ich denke mir, dass ihr 

876
00:48:12,320 --> 00:48:15,000
Angst jetzt auch das Fabi, das 
war der Moment, wo du jetzt 

877
00:48:15,040 --> 00:48:19,240
gesagt hast, Schluss für heute. 
Deswegen vielen Dank für die 

878
00:48:19,240 --> 00:48:20,880
heutige Folge. 
Es hat mir wieder sehr viel Spaß

879
00:48:20,880 --> 00:48:25,400
gemacht, waren auch hier coole 
Analogien bei schade, dass wir 

880
00:48:25,400 --> 00:48:28,160
es nicht direkt auf Essen Münzen
konnten, aber ich denke fairnuff

881
00:48:28,160 --> 00:48:33,600
wir waren nah dran Burger und 
genau einfach noch mal so n paar

882
00:48:33,680 --> 00:48:37,040
Lebensmittel nennen jetzt. 
Deswegen bleibt mir eigentlich 

883
00:48:37,040 --> 00:48:40,240
nichts mehr weiter zu sagen, als
die Frage zu stellen, wieso oft 

884
00:48:40,240 --> 00:48:43,040
in unserer Reihe, liebe 
Zuhörerinnen, liebe Zuhörer, 

885
00:48:43,440 --> 00:48:46,800
hast du schon mal das Bridge 
Pattern verwendet, wenn ja, wo 

886
00:48:46,800 --> 00:48:49,760
und weshalb? 
Und was sind denn so deine 

887
00:48:49,760 --> 00:48:52,680
Lieblingspattern, weil wir ja 
gerade gesagt haben, ja die 

888
00:48:52,680 --> 00:48:54,920
Factory, die haben wir zum 
Beispiel öfter im Einsatz, die 

889
00:48:54,920 --> 00:48:58,560
du häufig verwendest, Teile uns 
das gerne mit, schreib uns auf 

890
00:48:58,560 --> 00:49:00,640
der Plattform deiner Wahl, du 
kannst uns auch ne Mail 

891
00:49:00,640 --> 00:49:03,320
schreiben. 
Alle Links und die Mailadresse 

892
00:49:03,320 --> 00:49:04,640
findest du wie immer in den Show
Notes. 

893
00:49:04,640 --> 00:49:07,200
Wir freuen uns auf Deine 
Nachricht, sind immer happy und 

894
00:49:07,200 --> 00:49:11,600
Antworten auf jeden Fall und 
auch sehr, sehr gerne ansonsten,

895
00:49:11,920 --> 00:49:13,920
falls dir die Folge wieder 
gefallen hat, Empfiehl gerne den

896
00:49:13,920 --> 00:49:17,520
Podcast weiter 2 oder 3 
Freunden, das wäre super, lass 

897
00:49:17,520 --> 00:49:19,600
eine Bewertung da, falls du das 
noch nicht gemacht hast. 

898
00:49:20,240 --> 00:49:23,760
Wenn du so richtig dir denkst, 
so Menschen, Jungs ihr seid der 

899
00:49:23,760 --> 00:49:25,720
Hammer, ich möchte euch 
unterstützen, findest du auch 

900
00:49:25,720 --> 00:49:28,160
einen Spenden Link in den Show 
Notes, das würde uns mega mega 

901
00:49:28,160 --> 00:49:29,920
freuen. 
Dann vielen vielen Dank dafür. 

902
00:49:30,680 --> 00:49:33,240
Simon auch noch mal hier noch 
mal vielen vielen Dank es 

903
00:49:33,240 --> 00:49:36,560
doppelt hält besser wie man so 
schön sagt und deswegen wünsche 

904
00:49:36,560 --> 00:49:39,200
ich euch eine schöne Woche bis 
dahin bis zum nächsten 

905
00:49:39,200 --> 00:49:42,960
Donnerstag quasi habt eine 
schöne Zeit tschau tschau dann 

906
00:49:42,960 --> 00:49:44,480
kommen wir uns. 
Gemeinsam besser.

