﻿1
00:00:01,254 --> 00:00:03,100
‫Jonas: Dalam kuliah ini saya

2
00:00:03,100 --> 00:00:06,373
‫ingin menunjukkan kepada Anda beberapa hal berbeda yang melibatkan modul.

3
00:00:07,720 --> 00:00:11,220
‫Dan saya ingin memulai dengan membuktikan kepada Anda

4
00:00:11,220 --> 00:00:15,300
‫bahwa Node sebenarnya membungkus kode dalam modul kita menjadi fungsi

5
00:00:15,300 --> 00:00:17,270
‫pembungkus, seperti yang

6
00:00:17,270 --> 00:00:19,420
‫saya tunjukkan pada kuliah terakhir.

7
00:00:19,420 --> 00:00:24,043
‫Jadi mari kita buat file baru lagi, module. js, dan

8
00:00:25,270 --> 00:00:28,543
‫itu modul, seperti ini.

9
00:00:29,900 --> 00:00:31,740
‫Oke, dan yang

10
00:00:31,740 --> 00:00:36,703
‫akan saya lakukan di sini adalah memasukkan argumen ke konsol, oke?

11
00:00:38,480 --> 00:00:42,170
‫Jadi argumen adalah larik dalam JavaScript, dan larik

12
00:00:42,170 --> 00:00:44,490
‫ini berisi semua nilai

13
00:00:44,490 --> 00:00:47,100
‫yang diteruskan ke suatu fungsi.

14
00:00:47,100 --> 00:00:50,490
‫Jadi ketika saya mencatat array argumen ini ke

15
00:00:50,490 --> 00:00:53,110
‫konsol, jika kita benar-benar melihat beberapa

16
00:00:53,110 --> 00:00:57,670
‫nilai di sana, maka itu berarti kita benar-benar dalam suatu fungsi, oke?

17
00:00:57,670 --> 00:01:00,633
‫Jadi mari kita jalankan modul.

18
00:01:01,530 --> 00:01:06,530
‫Dan memang, di sini kita memiliki kode dalam argumen kita.

19
00:01:06,770 --> 00:01:09,050
‫Jadi mari kita ingat lima argumen

20
00:01:09,050 --> 00:01:10,760
‫dari fungsi wrapper.

21
00:01:10,760 --> 00:01:13,720
‫Yang pertama adalah ekspor, jadi yang ini, yang saat

22
00:01:13,720 --> 00:01:14,790
‫ini kosong

23
00:01:14,790 --> 00:01:17,030
‫karena kami tidak mengekspor apa pun.

24
00:01:17,030 --> 00:01:19,560
‫Yang kedua adalah fungsi require, jadi kita bisa

25
00:01:19,560 --> 00:01:20,670
‫melihat bahwa

26
00:01:20,670 --> 00:01:23,100
‫di sini, kita memang memiliki fungsi require.

27
00:01:23,100 --> 00:01:26,673
‫Kemudian yang ketiga disebut modul, oke.

28
00:01:28,280 --> 00:01:31,420
‫Dan dalam modul kita memiliki ekspor modul, yang sekali

29
00:01:31,420 --> 00:01:34,100
‫lagi kita bicarakan di kuliah terakhir.

30
00:01:34,100 --> 00:01:37,250
‫Dan apa yang kita miliki di sini tidak terlalu penting,

31
00:01:37,250 --> 00:01:38,520
‫sekali lagi, saya

32
00:01:38,520 --> 00:01:41,570
‫hanya ingin menunjukkan kepada Anda bahwa kita sebenarnya dalam

33
00:01:41,570 --> 00:01:43,750
‫sebuah fungsi sekarang, sehingga semua kode yang

34
00:01:43,750 --> 00:01:47,660
‫kita miliki dalam modul ini memang dibungkus dengan fungsi pembungkus ini, oke ?

35
00:01:47,660 --> 00:01:50,980
‫Kemudian nomor tiga dan nomor empat adalah nama

36
00:01:50,980 --> 00:01:52,640
‫file dan nama direktori.

37
00:01:52,640 --> 00:01:56,735
‫Dan memang, ini adalah nama modul yang saat ini kita

38
00:01:56,735 --> 00:01:59,260
‫masuki, jadi modul. js.

39
00:01:59,260 --> 00:02:02,450
‫Dan kemudian di sini kita memiliki nama direktori.

40
00:02:02,450 --> 00:02:03,550
‫Jadi saya di desktop

41
00:02:03,550 --> 00:02:05,970
‫saya, dan kemudian di folder ini sekarang Node berfungsi.

42
00:02:05,970 --> 00:02:07,740
‫Jadi mirip dengan yang

43
00:02:07,740 --> 00:02:11,970
‫ini di sini, tapi yang ini memiliki garis miring nama modulnya, oke?

44
00:02:11,970 --> 00:02:14,250
‫Jadi itu membuktikan kepada kita

45
00:02:14,250 --> 00:02:16,800
‫bahwa, memang, semua kode di dalam

46
00:02:16,800 --> 00:02:20,490
‫modul terbungkus, dan bahwa kita memiliki akses ke semua

47
00:02:20,490 --> 00:02:23,030
‫variabel ini, jadi argumen ini, oke?

48
00:02:23,030 --> 00:02:25,640
‫Jadi saya hanya menemukan ini eksperimen menarik yang

49
00:02:25,640 --> 00:02:26,960
‫bisa kita lakukan.

50
00:02:26,960 --> 00:02:29,860
‫Dan kita sebenarnya bisa melakukan hal keren lainnya.

51
00:02:29,860 --> 00:02:32,980
‫Jadi untuk benar-benar menunjukkan kepada

52
00:02:32,980 --> 00:02:37,980
‫Anda fungsi pembungkus, kita bisa meminta modul modul, oke.

53
00:02:38,300 --> 00:02:40,200
‫Jadi ada modul yang disebut

54
00:02:40,200 --> 00:02:44,410
‫modul, yang sebenarnya tidak pernah kami gunakan tetapi secara internal Node menggunakannya.

55
00:02:44,410 --> 00:02:47,190
‫Dan di sana kita memiliki bungkusnya.

56
00:02:47,190 --> 00:02:49,290
‫Jadi sebenarnya properti ini sebenarnya

57
00:02:49,290 --> 00:02:51,030
‫adalah fungsi pembungkus.

58
00:02:51,030 --> 00:02:52,730
‫Jadi sekarang kita bisa melihat itu.

59
00:02:57,410 --> 00:03:00,140
‫Dan di mana itu, ah, ya.

60
00:03:00,140 --> 00:03:01,720
‫Jadi di sini, di sini sebenarnya.

61
00:03:01,720 --> 00:03:04,410
‫Jadi ini adalah fungsi pembungkus.

62
00:03:04,410 --> 00:03:06,650
‫Dan memang Anda melihat ekspor,

63
00:03:06,650 --> 00:03:09,800
‫memerlukan, modul, nama file dan nama direktori, dan

64
00:03:09,800 --> 00:03:11,160
‫kemudian badan fungsi.

65
00:03:11,160 --> 00:03:13,520
‫Jadi inilah yang digunakan Node secara

66
00:03:13,520 --> 00:03:16,220
‫internal, jadi pada dasarnya template ini di sini,

67
00:03:16,220 --> 00:03:20,060
‫ia menggunakannya, dan kemudian mengisi badan fungsi ini dengan kode kita.

68
00:03:20,060 --> 00:03:23,260
‫Oke, jadi sekali lagi, hanya eksperimen yang menarik di sini.

69
00:03:23,260 --> 00:03:25,260
‫Sekarang hal terpenting yang ingin saya

70
00:03:25,260 --> 00:03:27,960
‫tunjukkan di sini adalah bagaimana kita dapat mengekspor dan

71
00:03:27,960 --> 00:03:30,370
‫mengimpor data dari satu modul ke modul lainnya.

72
00:03:30,370 --> 00:03:33,130
‫Jadi mari kita mulai dengan membuat modul baru di

73
00:03:33,130 --> 00:03:35,280
‫sini, di mana saya akan membuat

74
00:03:35,280 --> 00:03:38,040
‫kalkulator, seperti yang saya sebutkan di video terakhir.

75
00:03:38,040 --> 00:03:42,180
‫Jadi, sebut saja test-module-1 ini, karena kita akan

76
00:03:42,180 --> 00:03:44,393
‫memiliki beberapa di antaranya.

77
00:03:45,300 --> 00:03:47,763
‫Dan di sini saya akan membuat kelas kalkulator.

78
00:03:49,810 --> 00:03:52,890
‫Jadi sekali lagi, ini adalah

79
00:03:52,890 --> 00:03:56,053
‫sintaks ES6 untuk menulis kelas dalam JavaScript.

80
00:03:57,260 --> 00:04:01,033
‫Jadi mari kita tambahkan beberapa metode di sini, jadi tambahkan

81
00:04:04,760 --> 00:04:08,100
‫a dan b, tentu saja akan mengembalikan a

82
00:04:08,100 --> 00:04:12,920
‫plus b, jadi hal-hal yang sangat sederhana, kalikan a, b, akan mengembalikan

83
00:04:14,020 --> 00:04:17,317
‫a kali b, dan kemudian, mari kita lakukan

84
00:04:21,785 --> 00:04:22,950
‫pembagian juga,

85
00:04:22,950 --> 00:04:26,580
‫hanya demi kelengkapan di sini, a, b, seperti ini.

86
00:04:29,470 --> 00:04:32,170
‫Berikan save, itu memformatnya dengan baik, dan

87
00:04:32,170 --> 00:04:36,420
‫sekarang kita bisa melakukan module. ekspor, seperti yang kita pelajari

88
00:04:36,420 --> 00:04:38,370
‫di video terakhir,

89
00:04:39,970 --> 00:04:42,690
‫dan kita mengekspor kalkulator kita, oke?

90
00:04:42,690 --> 00:04:45,000
‫Jadi sekali lagi, kami menggunakan modul. ekspor ketika

91
00:04:45,000 --> 00:04:48,010
‫kita ingin mengekspor satu nilai tunggal.

92
00:04:48,010 --> 00:04:49,830
‫Dan dalam hal ini nilai

93
00:04:49,830 --> 00:04:51,660
‫tunggal kami di sini adalah kelas kalkulator.

94
00:04:51,660 --> 00:04:55,180
‫Jadi modul. ekspor persis apa yang

95
00:04:55,180 --> 00:04:58,340
‫dikembalikan dari satu modul, jadi apa pun yang kita

96
00:04:58,340 --> 00:05:01,320
‫taruh di sana, lalu diekspor secara otomatis, bukan?

97
00:05:01,320 --> 00:05:03,460
‫Kami kemudian dapat menyimpan nilai

98
00:05:03,460 --> 00:05:07,023
‫yang diekspor ke variabel saat mengimpornya, jadi mari lakukan sekarang.

99
00:05:08,540 --> 00:05:12,070
‫Dan sekarang di sini kita benar-benar dapat memberikan nama apa pun yang kita inginkan.

100
00:05:12,070 --> 00:05:15,390
‫Jadi nama yang kita ekspor di sisi lain, jadi di

101
00:05:15,390 --> 00:05:17,380
‫modul lain ini, tidak masalah.

102
00:05:17,380 --> 00:05:19,363
‫Kita bisa menyebutnya apa saja yang kita inginkan di sini.

103
00:05:20,810 --> 00:05:24,150
‫Jadi dalam pengertian itu seperti fungsi normal kembali, kan, jadi

104
00:05:24,150 --> 00:05:26,400
‫kita selalu bisa mengembalikan variabel apa

105
00:05:26,400 --> 00:05:28,320
‫pun, tapi kemudian menyebutnya sesuatu

106
00:05:28,320 --> 00:05:31,590
‫yang lain ketika kita pada dasarnya menyimpan hasil fungsi

107
00:05:31,590 --> 00:05:33,023
‫ke variabel, bukan?

108
00:05:34,580 --> 00:05:36,780
‫Jadi karena ini adalah modul

109
00:05:36,780 --> 00:05:41,780
‫kita sendiri, kita harus menggunakan garis miring titik, jadi apa yang saya

110
00:05:42,010 --> 00:05:44,600
‫lakukan di sini, dan kemudian test-module-1.

111
00:05:44,600 --> 00:05:47,830
‫Dan JS, ingat, kita bisa membuangnya,

112
00:05:47,830 --> 00:05:49,990
‫itu tidak perlu, oke?

113
00:05:49,990 --> 00:05:53,560
‫Jadi variabel C ini di sini, yang huruf besar

114
00:05:53,560 --> 00:05:57,330
‫karena untuk kelas kita biasanya selalu menggunakan nama huruf besar.

115
00:05:57,330 --> 00:06:01,000
‫Dan ingat, kami sebenarnya mengekspor kelas di sini.

116
00:06:01,000 --> 00:06:04,783
‫Oke, jadi sekarang kita bisa menggunakan kelas itu untuk melakukan beberapa perhitungan.

117
00:06:06,230 --> 00:06:08,853
‫Jadi pertama-tama mari kita buat kalkulator

118
00:06:10,200 --> 00:06:12,650
‫baru, kalkulator satu, karena nanti kita

119
00:06:12,650 --> 00:06:15,090
‫akan punya yang lain, oke?

120
00:06:15,090 --> 00:06:18,650
‫Jadi sekarang kami membuat contoh kalkulator baru seperti ini,

121
00:06:18,650 --> 00:06:20,500
‫dan ini seharusnya

122
00:06:20,500 --> 00:06:23,290
‫bukan hal baru bagi Anda saat ini.

123
00:06:23,290 --> 00:06:25,900
‫Dan kemudian mari kita masuk melalui konsol

124
00:06:25,900 --> 00:06:27,793
‫hasil dari benar-benar menggunakan ini.

125
00:06:28,850 --> 00:06:33,850
‫Jadi kal1. tambahkan, dan katakanlah dua dan lima.

126
00:06:37,210 --> 00:06:40,443
‫Berikan selamat, dan sebenarnya mari kita komentari keduanya.

127
00:06:42,550 --> 00:06:45,920
‫Simpan lagi, lalu modul Node, dan

128
00:06:45,920 --> 00:06:47,940
‫inilah hasilnya, tujuh.

129
00:06:47,940 --> 00:06:51,900
‫Jadi itu dua tambah lima, jadi berhasil, kan?

130
00:06:51,900 --> 00:06:54,290
‫Dan di sini, di modul pengujian

131
00:06:54,290 --> 00:06:57,970
‫kami, kami sebenarnya dapat melakukannya dengan cara yang lebih elegan.

132
00:06:57,970 --> 00:07:00,300
‫Jadi kita bisa menetapkan kelas ini di

133
00:07:00,300 --> 00:07:03,190
‫sini langsung ke modul. ekspor, kan?

134
00:07:03,190 --> 00:07:06,270
‫Jadi sekarang kita memiliki deklarasi kelas, jadi itu

135
00:07:06,270 --> 00:07:08,570
‫sedikit seperti deklarasi fungsi, di

136
00:07:08,570 --> 00:07:12,200
‫mana kita mengatakan kalkulator fungsi, dan kemudian ini, dan

137
00:07:12,200 --> 00:07:14,870
‫di sini kita mengatakan kelas, oke?

138
00:07:14,870 --> 00:07:18,520
‫Tapi kita bisa melakukannya dengan ekspresi kelas juga.

139
00:07:18,520 --> 00:07:22,050
‫Jadi seperti ini kami tidak menggunakan

140
00:07:22,050 --> 00:07:23,660
‫nama kalkulator.

141
00:07:23,660 --> 00:07:25,023
‫Jadi salin, beri komentar.

142
00:07:28,450 --> 00:07:30,760
‫Oke, jadi seperti ini.

143
00:07:30,760 --> 00:07:32,650
‫Jadi kami hanya mengatakan bahwa

144
00:07:32,650 --> 00:07:34,970
‫ini adalah kelas, dan kemudian menetapkannya ke variabel.

145
00:07:34,970 --> 00:07:36,593
‫Dan jadi itu sekarang ekspresi.

146
00:07:37,600 --> 00:07:39,470
‫Jadi mari kita jalankan ini

147
00:07:39,470 --> 00:07:43,120
‫lagi, dan tentu saja kita melihat tujuh kita lagi, oke?

148
00:07:43,120 --> 00:07:47,471
‫Jadi sekali lagi, ini hanya untuk benar-benar segera menetapkan nilai yang

149
00:07:47,471 --> 00:07:50,520
‫ingin kita modul. ekspor, dan itu

150
00:07:50,520 --> 00:07:53,280
‫akan menyelamatkan kita dari beberapa baris kode,

151
00:07:53,280 --> 00:07:56,473
‫dan mungkin membuat kode kita terlihat sedikit lebih baik.

152
00:07:57,390 --> 00:08:01,590
‫Oke, jadi begitulah cara kami mengekspor barang dengan modul. ekspor, dan sekarang mari kita

153
00:08:01,590 --> 00:08:05,160
‫lihat bagaimana dan kapan kita dapat menggunakan singkatan

154
00:08:05,160 --> 00:08:07,820
‫ekspor yang juga saya sebutkan di

155
00:08:07,820 --> 00:08:08,973
‫video sebelumnya.

156
00:08:10,970 --> 00:08:14,433
‫Jadi mari kita buat komentar sederhana di sini, module. ekspor.

157
00:08:16,930 --> 00:08:19,300
‫Kemudian di sini hanya ekspor.

158
00:08:19,300 --> 00:08:24,300
‫Jadi tes modul baru, dan sekali lagi, modul-2. js.

159
00:08:27,930 --> 00:08:31,790
‫Dan alternatif untuk melakukan modul. ekspor adalah

160
00:08:31,790 --> 00:08:36,120
‫menambahkan properti ke objek ekspor itu sendiri.

161
00:08:36,120 --> 00:08:37,680
‫Jadi kita bisa melakukannya

162
00:08:37,680 --> 00:08:40,740
‫seperti ini, dan menggunakan kembali contoh kalkulator dari sebelumnya,

163
00:08:40,740 --> 00:08:42,410
‫kita bisa melakukannya seperti ini.

164
00:08:42,410 --> 00:08:46,253
‫Jadi kita cukup menambahkan properti ke objek ekspor.

165
00:08:48,640 --> 00:08:53,640
‫Jadi a dan b akan mengembalikan a

166
00:08:54,490 --> 00:08:59,490
‫plus b, ekspor. kalikan a, b akan mengembalikan a

167
00:09:06,880 --> 00:09:08,280
‫kali b,

168
00:09:10,730 --> 00:09:15,690
‫dan sekarang mari kita duplikat saja untuk kelengkapan lagi, dan oke.

169
00:09:15,690 --> 00:09:18,600
‫Jadi pada dasarnya kami membuat tiga

170
00:09:18,600 --> 00:09:20,720
‫fungsi anonim di sini,

171
00:09:20,720 --> 00:09:24,190
‫ketiganya, dan menugaskannya ke tiga properti ekspor.

172
00:09:24,190 --> 00:09:27,750
‫Dan sekarang ketika kami mengekspor modul ini di sisi

173
00:09:27,750 --> 00:09:31,400
‫lain, jadi dalam modul. js, pada dasarnya kita

174
00:09:31,400 --> 00:09:34,230
‫akan mendapatkan akses ke objek ekspor ini.

175
00:09:34,230 --> 00:09:36,290
‫Jadi izinkan saya menunjukkan itu kepada Anda.

176
00:09:36,290 --> 00:09:38,820
‫Jadi katakanlah const calc2 diperlukan.

177
00:09:43,490 --> 00:09:46,640
‫Sekali lagi, jangan lupa titik dan garis miring, karena

178
00:09:46,640 --> 00:09:48,683
‫itu adalah modul kita sendiri.

179
00:09:50,400 --> 00:09:55,400
‫Oke, dan sekarang calc2 ini adalah objek ekspornya.

180
00:09:55,940 --> 00:09:58,800
‫Oke, jadi izinkan saya menunjukkannya kepada Anda.

181
00:09:58,800 --> 00:10:03,207
‫Menghibur. log, kal2. tambahkan, dua dan lima.

182
00:10:06,670 --> 00:10:09,823
‫Jadi itu akan memberi kita hasil yang sama persis seperti sebelumnya.

183
00:10:11,870 --> 00:10:15,313
‫Dan memang, inilah tujuh kami, sama seperti sebelumnya.

184
00:10:16,997 --> 00:10:18,147
‫Dan jika

185
00:10:20,240 --> 00:10:24,000
‫kita mengalikannya, maka itu seharusnya menjadi 10.

186
00:10:24,000 --> 00:10:26,820
‫Jadi ya, kita punya tujuh di sini dari penjumlahan di sini,

187
00:10:26,820 --> 00:10:28,793
‫dan kemudian perkalian ini memberi kita 10.

188
00:10:29,660 --> 00:10:31,460
‫Jadi saya berharap ini benar-benar

189
00:10:31,460 --> 00:10:34,370
‫membuat perbedaan antara modul. ekspor dan ekspor jelas.

190
00:10:34,370 --> 00:10:37,150
‫Dan sekali lagi, ketika kita hanya menggunakan

191
00:10:37,150 --> 00:10:41,360
‫ekspor, kita dapat menambahkan barang ke objek ini, jadi pada dasarnya properti,

192
00:10:41,360 --> 00:10:43,470
‫dan kemudian ketika kita mengimpornya,

193
00:10:43,470 --> 00:10:45,900
‫jadi ketika kita membutuhkan modul ini, hasil

194
00:10:45,900 --> 00:10:47,340
‫yang akan kita

195
00:10:47,340 --> 00:10:50,400
‫dapatkan adalah sebuah objek yang berisi semua properti ini.

196
00:10:50,400 --> 00:10:52,180
‫Dan karena kita mendapatkan

197
00:10:52,180 --> 00:10:55,260
‫objek, pada dasarnya kita dapat menggunakan kekuatan penghancuran

198
00:10:55,260 --> 00:10:58,023
‫ES6 untuk melakukan keajaiban keren di sini.

199
00:10:59,000 --> 00:11:02,843
‫Jadi biarkan saya menyingkirkan yang ini, atau

200
00:11:03,710 --> 00:11:07,690
‫benar-benar menduplikasinya, mengomentari yang ini, dan jadi kita

201
00:11:07,690 --> 00:11:12,130
‫bisa menggunakan destructuring untuk merusak objek yang kita dapatkan, oke?

202
00:11:12,130 --> 00:11:16,140
‫Dan cara kerjanya seperti ini, jadi kita menggunakan kurung kurawal,

203
00:11:16,140 --> 00:11:18,200
‫lalu kita cukup membuat

204
00:11:18,200 --> 00:11:21,460
‫nama variabel untuk properti di objek itu.

205
00:11:21,460 --> 00:11:26,460
‫Jadi sekali lagi, mari kita gunakan penjumlahan, perkalian, dan pembagian.

206
00:11:26,860 --> 00:11:30,380
‫Jadi itulah nama-nama yang sebenarnya kita miliki

207
00:11:30,380 --> 00:11:32,450
‫pada objek ekspor ini.

208
00:11:32,450 --> 00:11:34,680
‫Jadi tambahkan, kalikan, dan

209
00:11:34,680 --> 00:11:37,080
‫bagi, dan ini sebenarnya harus sama

210
00:11:37,080 --> 00:11:39,330
‫persis dengan nama objek aslinya, oke?

211
00:11:39,330 --> 00:11:41,100
‫Sekarang hal yang akan dilakukan

212
00:11:41,100 --> 00:11:43,960
‫adalah bahwa pada dasarnya itu akan membuat variabel yang

213
00:11:43,960 --> 00:11:45,523
‫disebut cukup berlipat ganda.

214
00:11:47,820 --> 00:11:50,400
‫Dan memang, inilah hasil kami.

215
00:11:50,400 --> 00:11:53,980
‫Dan kita sebenarnya hanya bisa mengimpor yang kita inginkan.

216
00:11:53,980 --> 00:11:57,470
‫Jadi katakanlah kita hanya ingin menambah dan mengalikan, oke?

217
00:11:57,470 --> 00:12:00,290
‫Jadi kami hanya akan mendapatkan akses

218
00:12:00,290 --> 00:12:03,340
‫ke keduanya, alih-alih mengimpor semuanya dari modul.

219
00:12:03,340 --> 00:12:05,160
‫Dan ini adalah pola yang cukup

220
00:12:05,160 --> 00:12:07,240
‫umum yang akan Anda lihat digunakan di

221
00:12:07,240 --> 00:12:09,930
‫Node, dan kami juga akan melakukannya di seluruh proyek.

222
00:12:09,930 --> 00:12:11,630
‫Oke jadi di

223
00:12:11,630 --> 00:12:14,030
‫video kali ini kita membahas tentang fungsi

224
00:12:14,030 --> 00:12:16,280
‫wrapper disini, kemudian kita membahas tentang

225
00:12:16,280 --> 00:12:20,110
‫export dan import menggunakan module. ekspor dan singkatan ekspor.

226
00:12:20,110 --> 00:12:21,810
‫Dan sekarang akhirnya, hanya untuk

227
00:12:21,810 --> 00:12:24,523
‫menyelesaikan, mari kita bicara tentang caching dengan sangat cepat.

228
00:12:27,060 --> 00:12:30,143
‫Oke, jadi mari kita buat test-modul-3 di sini.

229
00:12:35,860 --> 00:12:39,603
‫Dan yang akan saya lakukan di sini adalah membuat konsol. log, jadi pada dasarnya

230
00:12:41,070 --> 00:12:44,193
‫beberapa kode tingkat atas di dalam modul ini.

231
00:12:46,710 --> 00:12:49,793
‫Halo dari modul, oke, lalu saya

232
00:12:50,892 --> 00:12:53,973
‫juga ingin mengekspor fungsi.

233
00:12:54,830 --> 00:12:58,770
‫Hanya satu fungsi tunggal, jadi saya katakan modul. ekspor sama

234
00:13:00,920 --> 00:13:05,920
‫dengan fungsi tanpa argumen apa pun, yang hanya

235
00:13:06,300 --> 00:13:08,300
‫akan masuk ke

236
00:13:10,110 --> 00:13:13,673
‫konsol: catat teks yang indah ini.

237
00:13:14,920 --> 00:13:17,883
‫Hanya beberapa emoji kecil di sini untuk membuatnya sedikit menonjol.

238
00:13:20,210 --> 00:13:25,133
‫Oke, jadi sekarang mari kita membutuhkan modul tes ini.

239
00:13:28,170 --> 00:13:32,070
‫Test-module-3, dan saya tidak menyimpannya ke variabel apa pun.

240
00:13:32,070 --> 00:13:34,750
‫Alih-alih, saya akan langsung memanggil fungsi

241
00:13:34,750 --> 00:13:37,250
‫tanpa menyimpannya ke variabel.

242
00:13:37,250 --> 00:13:38,860
‫Jadi tentu saja kita bisa melakukan

243
00:13:38,860 --> 00:13:41,530
‫itu, lalu kita akan memiliki fungsi dalam sebuah variabel,

244
00:13:41,530 --> 00:13:43,070
‫dan kita bisa memanggilnya.

245
00:13:43,070 --> 00:13:45,070
‫Tapi ini sama persis,

246
00:13:45,070 --> 00:13:48,530
‫karena ini akan mengembalikan fungsi yang kita definisikan, jadi

247
00:13:48,530 --> 00:13:50,630
‫yang ini di sini, kan?

248
00:13:50,630 --> 00:13:53,610
‫Ini akan mengembalikan ini karena kami menggunakan modul. ekspor, dan

249
00:13:53,610 --> 00:13:57,727
‫kemudian segera kita panggil fungsi ini di sini, oke?

250
00:13:57,727 --> 00:14:00,890
‫Jadi sebenarnya mari kita lakukan itu tiga kali.

251
00:14:00,890 --> 00:14:04,980
‫Dan perlu diingat bahwa kami memiliki caching di Node.js. js modul, menurut Anda apa

252
00:14:04,980 --> 00:14:08,053
‫yang akan terjadi ketika kita menjalankan kode ini?

253
00:14:09,580 --> 00:14:13,933
‫Oke, jadi mari kita jalankan ini dan lihat apa yang akan terjadi.

254
00:14:16,770 --> 00:14:19,460
‫Di sini kita mendapatkan hasilnya, halo dari

255
00:14:19,460 --> 00:14:22,980
‫modul, dan kemudian tiga kali mencatat teks yang indah ini.

256
00:14:22,980 --> 00:14:26,520
‫Jadi kami melakukan logging ini tiga kali, karena kami

257
00:14:26,520 --> 00:14:29,350
‫memanggil fungsi yang sama tiga kali.

258
00:14:29,350 --> 00:14:33,320
‫Tapi kita mendapat hello dari modul hanya sekali, oke?

259
00:14:33,320 --> 00:14:35,450
‫Dan itu karena caching.

260
00:14:35,450 --> 00:14:38,800
‫Jadi secara teknis modul ini hanya dimuat

261
00:14:38,800 --> 00:14:42,850
‫sekali, sehingga kode di dalamnya juga dieksekusi sekali saja.

262
00:14:42,850 --> 00:14:46,270
‫Dan itulah mengapa baris kode ini

263
00:14:46,270 --> 00:14:50,370
‫di sini, logging ini hanya dijalankan sekali, oke?

264
00:14:50,370 --> 00:14:53,320
‫Dan dua logging lainnya di sini, baik,

265
00:14:53,320 --> 00:14:56,470
‫mereka berasal dari cache, jadi mereka disimpan di suatu

266
00:14:56,470 --> 00:14:58,610
‫tempat di cache proses Node.

267
00:14:58,610 --> 00:15:01,540
‫Dan setelah kami memanggil fungsi di sini untuk

268
00:15:01,540 --> 00:15:03,390
‫kedua kalinya, itu hanya

269
00:15:03,390 --> 00:15:06,520
‫diambil dari sana, alih-alih memuat modul lagi, oke?

270
00:15:06,520 --> 00:15:10,510
‫Jadi saya yakin itu sangat masuk akal bagi Anda.

271
00:15:10,510 --> 00:15:13,450
‫Dan itulah kuliah kami, sebenarnya.

272
00:15:13,450 --> 00:15:16,090
‫Jika Anda memiliki pertanyaan, tentu saja Anda dapat,

273
00:15:16,090 --> 00:15:20,070
‫seperti biasa, mempostingnya ke Tanya Jawab dan Anda akan mendapatkan bantuan di sana.

274
00:15:20,070 --> 00:15:23,030
‫Jadi itu menyelesaikan seluruh bagian ini.

275
00:15:23,030 --> 00:15:27,750
‫Saya tahu itu adalah perjalanan yang cukup berat sampai kami mencapai titik

276
00:15:27,750 --> 00:15:30,700
‫ini, begitu banyak hal yang harus diambil.

277
00:15:30,700 --> 00:15:33,140
‫Dan jika Anda memperbaiki semuanya 100%,

278
00:15:33,140 --> 00:15:35,240
‫jangan terlalu khawatir tentang itu,

279
00:15:35,240 --> 00:15:36,800
‫karena sepanjang

280
00:15:36,800 --> 00:15:41,170
‫kursus, sebagian besar hal pada akhirnya akan menjadi jelas, oke?

281
00:15:41,170 --> 00:15:43,940
‫Jadi jangan khawatir, lanjutkan saja kursusnya, dan sampai

282
00:15:43,940 --> 00:15:45,790
‫jumpa di bagian selanjutnya.

