WEBVTT

1
00:00:00.640 --> 00:00:04.770
saying also this
is a behavioral

2
00:00:04.770 --> 00:00:08.310
pattern because it
 tells you are

3
00:00:08.500 --> 00:00:12.010
like states how
the behavior has

4
00:00:12.010 --> 00:00:14.490
to happen or
should happen

5
00:00:14.700 --> 00:00:18.270
and it's always used so it's used
not only in one of the controller

6
00:00:18.270 --> 00:00:21.750
but it's used in dozens
of places so whenever

7
00:00:21.930 --> 00:00:25.500
the object needs to be updated
because some user interaction

8
00:00:25.500 --> 00:00:28.870
happened or something happened it
doesn't need to be user interaction

9
00:00:28.910 --> 00:00:32.320
might also be some internal
 state change then

10
00:00:32.330 --> 00:00:36.430
we need to update some
other things most often

11
00:00:36.560 --> 00:00:39.890
yeah this is basically like
 little messenger going

12
00:00:39.890 --> 00:00:43.290
around saying hay something
happened and how we implementers

13
00:00:43.290 --> 00:00:48.700
is serve shown here so so we have
 basically we kind of stall

14
00:00:48.700 --> 00:00:53.190
on your services dependent
 objects on in the list

15
00:00:53.380 --> 00:00:57.540
of observables in with the
subject on this is basically

16
00:00:57.960 --> 00:01:01.540
on down like this in
 this metre level

17
00:01:01.740 --> 00:01:05.110
on and then we have to
complete subject which is

18
00:01:05.110 --> 00:01:08.620
model and this kind of
implements this whole

19
00:01:08.750 --> 00:01:13.850
subject and it has map update
value can install some sort of

20
00:01:13.850 --> 00:01:17.210
value and then it has some of
the updated and and updates is

21
00:01:17.210 --> 00:01:21.050
where you and when ever it updates
 so that you did not if us

22
00:01:21.050 --> 00:01:25.460
all observables i did something
i change something he's react

23
00:01:25.480 --> 00:01:28.440
these react and then there's
 a couple of variance

24
00:01:28.440 --> 00:01:30.190
again so you can
 be done but

25
00:01:30.310 --> 00:01:33.550
the push notifications
 of the model tends

26
00:01:33.780 --> 00:01:38.990
the observer's eye a
change that are very

27
00:01:39.060 --> 00:01:41.630
all the observer says you
 change something what

28
00:01:41.630 --> 00:01:44.570
did you change it to me that
would be kind of the pulmonary

29
00:01:44.630 --> 00:01:47.240
and workable both of them
 in a in a colleagues

30
00:01:49.030 --> 00:01:54.680
so not too hot and really
 have yes so we have

31
00:01:54.740 --> 00:01:57.890
on the strategy that unless
 we already set and so

32
00:01:58.400 --> 00:02:00.730
basically strategy
 that kind of

33
00:02:03.940 --> 00:02:07.480
and actually it's
algorithms in logic logic

34
00:02:07.670 --> 00:02:13.010
in in a certain concrete
strategies in several several

35
00:02:13.010 --> 00:02:17.070
variants of the strategy that
several of algorithm in each

36
00:02:17.100 --> 00:02:20.700
in a class ok so this is
once again quite abstract

37
00:02:20.990 --> 00:02:24.300
so for example we might
 have a algorithm

38
00:02:24.300 --> 00:02:27.050
which finds out of the
area of the smallest

39
00:02:27.310 --> 00:02:31.320
integer in there so something like
find the minimum value something

40
00:02:31.320 --> 00:02:34.980
and you could do this
 with different

41
00:02:34.980 --> 00:02:38.290
implementations for example like
 just going all over it and

42
00:02:38.330 --> 00:02:40.820
looking for the minimum
 or you could just

43
00:02:40.970 --> 00:02:44.880
split and then in the middle
 and then such posts

44
00:02:44.880 --> 00:02:48.020
parched on their own and
 then compare back so

45
00:02:48.240 --> 00:02:50.090
there might be different
 implementations

46
00:02:50.280 --> 00:02:54.630
to do the same job and they might
 be more or less you did on

47
00:02:54.630 --> 00:02:57.920
a certain problem so therefore
we could have different strata

48
00:02:57.940 --> 00:03:02.090
these how to implement the same
logic and we might into change

49
00:03:02.090 --> 00:03:05.650
them at runtime in this case
exactly so whenever we kind of

50
00:03:05.730 --> 00:03:09.030
means something which was which
 really asks for all kinds

51
00:03:09.790 --> 00:03:14.120
of search her then do but
 the search if it asks

52
00:03:14.120 --> 00:03:19.440
for binary search and do that
yeah so basically we're going

53
00:03:19.610 --> 00:03:24.200
with this we're just able to
exchange as the way we're doing

54
00:03:24.200 --> 00:03:26.970
something as long as we
know what we want to do

55
00:03:28.870 --> 00:03:32.350
so and finally we got a
constant pattern becomes

56
00:03:32.350 --> 00:03:35.690
apparent kind of says it
basically this tree structure

57
00:03:35.950 --> 00:03:40.190
so on it has
component and

58
00:03:40.390 --> 00:03:44.690
each component
 can either

59
00:03:47.680 --> 00:03:52.500
composite components which can
 contain other components

60
00:03:52.800 --> 00:03:56.110
we all and might contain other
competences of the tree structure

61
00:03:56.110 --> 00:03:59.060
used on their all it is
leavin that's kind of

62
00:03:59.060 --> 00:04:02.540
the the basic thing so in a
tree structure the leaders

63
00:04:03.010 --> 00:04:08.320
at top and there's nothing growing
 have leave anymore except for

