﻿1
00:00:04,180 --> 00:00:05,380
‫Cześć i witaj.

2
00:00:05,470 --> 00:00:11,050
‫W tym wykładzie przyjrzymy się tym małym szpilkom i różnym kolorom, jakie mają,

3
00:00:11,050 --> 00:00:17,140
‫i zrozumiemy, że są to różne typy danych, które ograniczają to, co możemy podłączyć do czego.

4
00:00:17,950 --> 00:00:23,170
‫Zanurzmy się więc od razu i spójrzmy, co rozumiem przez typ danych.

5
00:00:23,710 --> 00:00:31,660
‫Tak więc dość praktyczną definicją typu danych jest sposób, w jaki reprezentuje on pewne fragmenty danych

6
00:00:31,690 --> 00:00:34,720
‫w postaci binarnej w pamięci komputera.

7
00:00:35,440 --> 00:00:42,670
‫Ale może to być również sposób na ograniczenie tego, co możemy zrobić z tymi danymi.

8
00:00:42,700 --> 00:00:46,240
‫Więc niekoniecznie zawsze chodzi o różne reprezentacje.

9
00:00:46,600 --> 00:00:55,030
‫Możesz myśleć o tym jako o kształcie danych w tym sensie, że kwadratowy kołek nie może zmieścić się w okrągłym

10
00:00:55,030 --> 00:00:55,510
‫otworze.

11
00:00:55,810 --> 00:01:00,460
‫Nie możemy więc wprowadzić złego typu danych do złego typu pinu.

12
00:01:01,910 --> 00:01:04,320
‫Przyjrzyjmy się więc kilku przykładom typów danych.

13
00:01:04,340 --> 00:01:07,400
‫Jest liczba całkowita, która jest klasycznym przykładem.

14
00:01:07,610 --> 00:01:16,580
‫Liczba całkowita jest liczbą całkowitą, więc ma wartości takie jak 223 -14, ale nie takie jak 1. 2.

15
00:01:16,790 --> 00:01:22,760
‫Byłaby to liczba zmiennoprzecinkowa, która jest skrótem od liczby zmiennoprzecinkowej.

16
00:01:23,180 --> 00:01:28,850
‫Są to w zasadzie liczby, w których jest przecinek dziesiętny i te liczby mogą być

17
00:01:28,850 --> 00:01:33,620
‫bardzo duże lub bardzo małe, ale nie są to liczby całkowite.

18
00:01:33,620 --> 00:01:35,150
‫Mogą być również negatywne.

19
00:01:35,780 --> 00:01:36,830
‫A potem są struny.

20
00:01:36,830 --> 00:01:41,960
‫Natknęliśmy się już wcześniej na łańcuchy, łańcuchy są tylko programistą, mówią za fragmenty tekstu.

21
00:01:42,290 --> 00:01:44,300
‫I jest to zasadniczo typ danych.

22
00:01:44,330 --> 00:01:51,020
‫Jest to sposób na przechowywanie fragmentów tekstu w pamięci, dzięki czemu mogą być cokolwiek chcesz, naprawdę wysoką kulą,

23
00:01:51,140 --> 00:01:52,010
‫wiesz, cokolwiek.

24
00:01:52,010 --> 00:01:56,960
‫Wszystkie te rzeczy, wszystkie te fragmenty tekstu na moim ekranie to ciągi, prawdopodobnie gdzieś w pamięci

25
00:01:56,960 --> 00:01:57,410
‫komputera.

26
00:01:58,130 --> 00:02:01,130
‫I wreszcie są bule, co jest skrótem od boolowskich.

27
00:02:01,130 --> 00:02:04,460
‫A te mają tylko dwie możliwe wartości, prawda czy fałsz?

28
00:02:05,150 --> 00:02:11,990
‫Teraz te typy danych są świetne, ale nie możesz zabrać się za reprezentowanie całej gry za pomocą tak prostych

29
00:02:11,990 --> 00:02:12,800
‫rzeczy, prawda?

30
00:02:13,160 --> 00:02:13,940
‫Cóż, możesz.

31
00:02:13,940 --> 00:02:19,070
‫Jeśli zaczniesz je grupować w takie rzeczy, jak przedmioty.

32
00:02:19,310 --> 00:02:23,420
‫Kiedy zgrupujesz je razem w obiekt, zaczną nabierać znaczenia.

33
00:02:23,420 --> 00:02:28,100
‫Możesz mieć liczbę całkowitą do reprezentowania wieku, możesz mieć pływak do reprezentowania punktów doświadczenia,

34
00:02:28,100 --> 00:02:29,150
‫tego typu rzeczy.

35
00:02:29,510 --> 00:02:35,900
‫Warto zauważyć, że oprócz obiektów, mamy również elementy zwane strukturami.

36
00:02:36,260 --> 00:02:38,450
‫I nie mieszaj się tutaj zbytnio.

37
00:02:38,450 --> 00:02:44,390
‫A struktura jest w zasadzie taka sama jak obiekt, z wyjątkiem tego, że jest zwykle dość mała i nie

38
00:02:44,390 --> 00:02:49,580
‫używamy referencji, po prostu przekazujemy je i kopiujemy w pamięci, nie martwiąc się o nie, ponieważ są

39
00:02:49,640 --> 00:02:50,540
‫tak małe.

40
00:02:51,080 --> 00:02:55,400
‫A typ danych, jak powiedzieliśmy, to kształt naszych danych.

41
00:02:56,210 --> 00:02:58,670
‫Przyjrzyjmy się więc przykładom struktur obiektowych.

42
00:02:58,670 --> 00:03:00,770
‫Więc wyobraź sobie, że mieliśmy poszukiwacza przygód.

43
00:03:01,040 --> 00:03:03,410
‫Nasz poszukiwacz przygód może wyglądać trochę tak.

44
00:03:03,410 --> 00:03:04,940
‫Taki jest kształt jego danych.

45
00:03:05,180 --> 00:03:10,760
‫Ma liczbę całkowitą reprezentującą jej poziom i pływak reprezentujący reprezentatywne punkty doświadczenia.

46
00:03:11,000 --> 00:03:17,570
‫Teraz możesz mieć wiele instancji poszukiwaczy przygód należących do tej samej klasy poszukiwaczy przygód, więc muszą one mieć

47
00:03:17,570 --> 00:03:22,340
‫ten sam kształt danych, ale nie muszą mieć takiej samej zawartości danych.

48
00:03:22,550 --> 00:03:28,250
‫Widać tutaj, że drugi poszukiwacz przygód ma poziom 100 i z jakiegoś powodu punkty doświadczenia minus pięć.

49
00:03:28,250 --> 00:03:34,820
‫Ale nieważne, że możesz mieć inny typ, mając inną klasę obiektu, takiego jak

50
00:03:34,820 --> 00:03:35,510
‫odtwarzacz.

51
00:03:35,900 --> 00:03:37,880
‫I tutaj widać inny kształt.

52
00:03:37,880 --> 00:03:45,350
‫Te dla przygody i gracza są niekompatybilne i jakkolwiek wiesz, ci gracze mają zapisane w

53
00:03:45,350 --> 00:03:47,210
‫nich różne wartości.

54
00:03:47,210 --> 00:03:52,130
‫Mają nazwę gracza, może mają to, czy używają kontrolera, czy nie, jako niektóre z danych w

55
00:03:52,130 --> 00:03:52,640
‫nich.

56
00:03:52,820 --> 00:03:55,850
‫Przyjrzyjmy się teraz niektórym strukturom, które widzieliśmy w przeszłości.

57
00:03:55,850 --> 00:04:00,170
‫Ponownie, pamiętając, że struktury i obiekty są mniej lub bardziej wymienne, z wyjątkiem ich rozmiaru.

58
00:04:00,740 --> 00:04:06,890
‫Więc pierwszy, który widzieliśmy już kilka razy, to wektor, a wektor to tylko trzy liczby zmiennoprzecinkowe, to wszystko, to

59
00:04:06,890 --> 00:04:11,150
‫liczba zmiennoprzecinkowa X, Y i Z, której można użyć do reprezentowania pozycji.

60
00:04:11,150 --> 00:04:16,850
‫Może być również używany do reprezentowania skali lub używaliśmy go, gdy wprowadzaliśmy impuls do naszego

61
00:04:16,910 --> 00:04:18,140
‫węzła impulsowego ADD.

62
00:04:18,830 --> 00:04:20,960
‫Kolejną rzeczą, którą widzieliśmy mimochodem, jest rotator.

63
00:04:21,200 --> 00:04:28,250
‫Teraz zauważ, że ten rotator ma tylko trzy pływaki, ale to nie znaczy, że te dwa typy są kompatybilne.

64
00:04:28,460 --> 00:04:34,880
‫Możemy nadać strukturom różne nazwy, aby uchronić się przed przypadkowym użyciem ich w sytuacjach, w których

65
00:04:34,880 --> 00:04:35,810
‫nie powinniśmy.

66
00:04:36,830 --> 00:04:41,390
‫Możemy je połączyć i stworzyć jeszcze większą złożoną strukturę.

67
00:04:41,390 --> 00:04:48,770
‫Transformacja, czyli lokalizacja rotacji i skali aktora w scenie.

68
00:04:49,220 --> 00:04:54,350
‫Widać tutaj, że jest to struktura złożona z innych struktur i można w zasadzie zagnieżdżać te rzeczy tak

69
00:04:54,350 --> 00:04:58,340
‫bardzo, jak chcesz w tej strukturze wewnątrz obiektów i tak dalej i tak dalej.

70
00:04:58,340 --> 00:04:59,720
‫Mogą być dość skomplikowane.

71
00:05:00,500 --> 00:05:03,680
‫Przyjrzyjmy się więc niektórym obiektom, które widzieliśmy już w przeszłości.

72
00:05:03,980 --> 00:05:06,950
‫Przyjrzeliśmy się wszystkim przedmiotom, które są aktorami.

73
00:05:06,950 --> 00:05:08,660
‫Wiemy, że aktorzy są rodzajem obiektu.

74
00:05:09,380 --> 00:05:11,800
‫Widzieliśmy aktorów, którzy są sześcianami.

75
00:05:11,810 --> 00:05:13,280
‫To inny rodzaj obiektu.

76
00:05:13,550 --> 00:05:19,100
‫Widzieliśmy, że pocisk BP jest również rodzajem obiektu i jest aktorem.

77
00:05:19,460 --> 00:05:24,620
‫Widzieliśmy, że na naszych aktorach mamy komponenty, które są również typami obiektów.

78
00:05:24,620 --> 00:05:27,800
‫A statyczny komponent MASH jest przykładem jednego z nich.

79
00:05:28,190 --> 00:05:32,780
‫Więc mamy to wszystko, a te są po prostu stworzone z tych podstawowych typów danych.

80
00:05:32,780 --> 00:05:38,330
‫W głębi duszy mogą składać się w międzyczasie z bardziej skomplikowanych struktur, ale wszystko sprowadza się do tych

81
00:05:38,330 --> 00:05:39,590
‫podstawowych typów danych.

82
00:05:40,130 --> 00:05:46,220
‫Kiedy więc spojrzymy na taki wykres, od razu po kolorze możemy zobaczyć, że

83
00:05:46,220 --> 00:05:52,730
‫ten impuls jest wektorem, na przykład, że położenie, obrót i skala to tylko trzy liczby

84
00:05:52,730 --> 00:05:53,570
‫zmiennoprzecinkowe.

85
00:05:54,200 --> 00:05:58,580
‫Widzimy również, że to czerwone pole wyboru zmiany prędkości jest wartością logiczną.

86
00:05:58,580 --> 00:05:59,990
‫To odpowiedź tak lub nie.

87
00:06:00,290 --> 00:06:00,880
‫Więc zaczynamy.

88
00:06:01,030 --> 00:06:07,210
‫Aby zrozumieć, że są to typy danych, które ograniczają to, co możemy podłączyć do czego.

89
00:06:08,410 --> 00:06:14,560
‫Podsumowując, widzieliśmy, że typ danych jest kształtem naszych danych, obiekty są po prostu zbiorami

90
00:06:14,560 --> 00:06:19,690
‫danych i funkcjonalności, jak powiedzieliśmy wcześniej, struktury są obiektami, ale zwykle tylko

91
00:06:19,690 --> 00:06:20,830
‫trochę mniejszymi.

92
00:06:20,980 --> 00:06:23,500
‫I to prawie wszystko, co musisz wiedzieć.

93
00:06:23,830 --> 00:06:25,630
‫Do zobaczenia na następnym wykładzie.

