﻿1
00:00:04,650 --> 00:00:10,800
‫Portanto, nas seções anteriores fizemos uso intenso da herança por meio de nossos atores.

2
00:00:10,830 --> 00:00:11,910
‫Agora, o que é herança?

3
00:00:11,910 --> 00:00:18,720
‫Herança é quando uma classe filha automaticamente tem toda a funcionalidade de sua mãe.

4
00:00:19,110 --> 00:00:22,860
‫Dizemos essencialmente que a criança é um pai.

5
00:00:23,190 --> 00:00:25,500
‫Então, onde usamos isso anteriormente?

6
00:00:25,530 --> 00:00:33,390
‫Bem, por exemplo, em nossas plataformas móveis, tínhamos um ator que era um ator de plataforma móvel, e então tivemos diferentes filhos desse ator

7
00:00:33,390 --> 00:00:39,210
‫que nos deram as plataformas giratórias e giratórias, as plataformas para cima e para baixo, os empurrões de

8
00:00:39,210 --> 00:00:41,460
‫um lado para o outro .

9
00:00:41,850 --> 00:00:42,990
‫Todos eram crianças.

10
00:00:42,990 --> 00:00:45,030
‫Todos eles eram movimentadores.

11
00:00:45,030 --> 00:00:49,230
‫Você poderia dizer que o empurrador em movimento é um motor.

12
00:00:49,260 --> 00:00:53,580
‫Poderíamos dizer que o bastão giratório é um motor.

13
00:00:54,060 --> 00:00:59,820
‫Portanto, existe uma alternativa ao uso de herança, que é um pouco tudo ou nada.

14
00:00:59,820 --> 00:01:04,530
‫E isso é composição, que é um pouco mais de escolha.

15
00:01:04,860 --> 00:01:11,070
‫Você pode dizer que a Classe A tem uma instância da Classe B, ela pode optar por usar essa funcionalidade,

16
00:01:11,070 --> 00:01:12,140
‫mas não precisa.

17
00:01:12,150 --> 00:01:17,220
‫Não está vinculado a ser classe B, ele pode apenas escolher pegar os bits que quiser.

18
00:01:17,580 --> 00:01:26,550
‫Então dizemos que a Classe A tem uma classe B, então vamos dar uma olhada em alguns exemplos de herança versus composição usando

19
00:01:26,550 --> 00:01:27,930
‫algo bem natural.

20
00:01:27,930 --> 00:01:35,070
‫Acho que falando sobre herança no reino animal, podemos ter uma classe que um ator diz que é

21
00:01:35,070 --> 00:01:40,340
‫um ator animal e tem um método, que é viver suas vidas.

22
00:01:40,350 --> 00:01:47,010
‫Quando você chama esse método agora, faz sentido ter coisas como um mamífero que herda disso porque

23
00:01:47,010 --> 00:01:48,360
‫também precisa viver.

24
00:01:48,420 --> 00:01:51,030
‫Então ele precisa de toda essa funcionalidade que o animal tem.

25
00:01:51,630 --> 00:01:57,360
‫Mas para adicionar mais algumas funcionalidades, como fazer leite, também podemos ter um réptil que

26
00:01:57,360 --> 00:02:00,840
‫tenha a funcionalidade, a funcionalidade adicional de botar ovos.

27
00:02:01,200 --> 00:02:06,390
‫Agora, é justo dizer que um mamífero é um animal e um réptil também é um animal.

28
00:02:07,170 --> 00:02:11,070
‫Agora podemos ir em frente e dizer, ok, temos uma vaca.

29
00:02:11,090 --> 00:02:12,930
‫Bem, uma vaca é claramente um mamífero.

30
00:02:12,930 --> 00:02:13,920
‫Precisa fazer leite.

31
00:02:13,920 --> 00:02:18,210
‫E por extensão, também precisa viver porque também é um animal.

32
00:02:18,660 --> 00:02:23,010
‫Uma cobra é um réptil e é um animal, mas não é um mamífero.

33
00:02:23,020 --> 00:02:24,450
‫Então isso também faz sentido.

34
00:02:24,660 --> 00:02:26,240
‫Mas e um ornitorrinco?

35
00:02:26,640 --> 00:02:31,770
‫Um ornitorrinco de repente precisa ser um mamífero e um réptil porque precisa da funcionalidade de botar ovos

36
00:02:31,770 --> 00:02:35,450
‫e precisa da funcionalidade de produzir leite e precisa ser um animal.

37
00:02:35,460 --> 00:02:38,220
‫Então fica um pouco confuso aqui com herança.

38
00:02:38,220 --> 00:02:43,620
‫E a herança pode nos colocar em uma camisa de força e tornar essas situações realmente difíceis de resolver, e é por

39
00:02:43,620 --> 00:02:46,380
‫isso que a composição é o que vem em nosso socorro.

40
00:02:46,380 --> 00:02:48,390
‫Aqui está o tem um relacionamento.

41
00:02:48,390 --> 00:02:54,810
‫Então, ao invés de tentar construir essa taxonomia de classes com animais e mamíferos, etc. , o que fazemos é dizer que temos

42
00:02:54,810 --> 00:03:00,330
‫um componente de produção de leite e esse componente tem a funcionalidade de fazer

43
00:03:00,330 --> 00:03:00,780
‫leite.

44
00:03:01,140 --> 00:03:06,360
‫Assim, a vaca teria um desses componentes de produção de leite e obteria sua funcionalidade.

45
00:03:06,360 --> 00:03:13,560
‫A partir daí, a cobra pode ter seu componente de postura de ovos e daí obtém sua funcionalidade de postura de ovos.

46
00:03:14,010 --> 00:03:16,440
‫E o ornitorrinco pode ter os dois componentes.

47
00:03:16,440 --> 00:03:18,300
‫Ele não tem que escolher um componente.

48
00:03:18,480 --> 00:03:23,160
‫Ele pode ter todos eles e consegue compartilhar a funcionalidade muito bem.

49
00:03:23,370 --> 00:03:29,640
‫Então vamos pegar o exemplo que vamos usar aqui, onde temos para um motor, temos algo que

50
00:03:29,640 --> 00:03:30,750
‫quer se mover.

51
00:03:30,750 --> 00:03:35,760
‫Podemos ter começado a configurar isso como uma herança e é um relacionamento.

52
00:03:36,060 --> 00:03:42,720
‫Então, temos um motor que herda desse estático MASH Act, mais ou menos como fizemos nas seções anteriores.

53
00:03:43,140 --> 00:03:47,520
‫E então, da mudança para casa, podemos herdar uma ferramenta móvel ou uma parede móvel.

54
00:03:47,970 --> 00:03:51,930
‫Mas o que acontece se quisermos fazer uma luz em movimento?

55
00:03:52,440 --> 00:03:54,270
‫Como isso poderia ser feito?

56
00:03:54,270 --> 00:03:59,340
‫Não podemos herdar de move porque isso o tornaria um ator de malha estático e queremos usar um ator

57
00:03:59,340 --> 00:04:01,740
‫de luz como pai para mover a luz.

58
00:04:02,220 --> 00:04:04,290
‫Como poderíamos resolver este problema?

59
00:04:04,620 --> 00:04:10,170
‫Usando tem um relacionamento, em vez disso, puxe um vídeo, pense sobre isso, pegue um pedaço de papel

60
00:04:10,440 --> 00:04:12,330
‫e anote alguns de seus pensamentos.

61
00:04:16,160 --> 00:04:16,660
‫OK.

62
00:04:16,670 --> 00:04:17,420
‫Bem vindo de volta.

63
00:04:17,810 --> 00:04:23,300
‫Então, esta é a maneira que eu resolveria o problema para que pudéssemos ter nossa porta móvel e nos movendo mais.

64
00:04:23,300 --> 00:04:25,790
‫Ambos herdam do ator de malha estática Tudo bem.

65
00:04:26,240 --> 00:04:29,090
‫E a luz em movimento pode herdar do ator de luz.

66
00:04:29,300 --> 00:04:33,440
‫Mas agora a diferença é que incluímos isso aqui também.

67
00:04:33,710 --> 00:04:41,960
‫Assim, a porta móvel, a parede móvel e a luz móvel podem ter um componente móvel no ator.

68
00:04:41,960 --> 00:04:45,260
‫E é aqui que os componentes do ator são realmente úteis.

69
00:04:45,560 --> 00:04:48,740
‫E vamos colocar isso em prática na próxima palestra.

70
00:04:48,770 --> 00:04:49,490
‫Então eu vou ver lá.

