﻿1
00:00:01,270 --> 00:00:04,520
‫Narator: Sekarang sebelum masuk ke beberapa kode NodeJS, mari

2
00:00:04,520 --> 00:00:06,700
‫kita lakukan tinjauan tingkat tinggi

3
00:00:06,700 --> 00:00:08,990
‫tentang apa sebenarnya NodeJS itu, untuk

4
00:00:08,990 --> 00:00:11,800
‫apa kita menggunakannya dan mengapa kita menggunakan

5
00:00:11,800 --> 00:00:13,843
‫Node daripada teknologi lain.

6
00:00:15,410 --> 00:00:17,570
‫Jadi, definisi resminya adalah bahwa

7
00:00:17,570 --> 00:00:19,480
‫NodeJS adalah Runtime

8
00:00:19,480 --> 00:00:23,783
‫JavaScript yang dibangun di atas mesin JavaScript V8 open-source Google.

9
00:00:23,783 --> 00:00:26,279
‫Sekarang, apa sebenarnya artinya?

10
00:00:26,279 --> 00:00:29,289
‫Baiklah, mari kita mulai dengan mencoba

11
00:00:29,289 --> 00:00:31,174
‫memahami apa itu

12
00:00:31,174 --> 00:00:33,913
‫JavaScript Runtime dan mesin V8 sebenarnya.

13
00:00:35,190 --> 00:00:37,914
‫Jadi, Anda mungkin pernah menggunakan

14
00:00:37,914 --> 00:00:42,120
‫JavaScript sebelumnya dan mungkin selalu ada di dalam browser, bukan?

15
00:00:42,120 --> 00:00:45,400
‫Karena browser mana pun secara native memahami

16
00:00:45,400 --> 00:00:49,250
‫HTML, CSS, dan JavaScript dan tidak masalah jika Anda

17
00:00:49,250 --> 00:00:51,760
‫menulis vanilla JavaScript atau beberapa

18
00:00:51,760 --> 00:00:54,713
‫kerangka kerja JavaScript seperti React atau

19
00:00:54,713 --> 00:00:56,370
‫kode Angular, itu

20
00:00:56,370 --> 00:00:59,920
‫semua hanya JavaScript yang dieksekusi langsung di browser.

21
00:00:59,920 --> 00:01:01,500
‫Jadi, dalam hal ini,

22
00:01:01,500 --> 00:01:03,454
‫browser tersebut adalah JavaScript Runtime.

23
00:01:03,454 --> 00:01:06,110
‫Tapi, bagaimana jika kita bisa mengeluarkan

24
00:01:06,110 --> 00:01:08,311
‫JavaScript dari browser dan

25
00:01:08,311 --> 00:01:10,988
‫hanya menjalankan atau kode JavaScript di tempat

26
00:01:10,988 --> 00:01:14,860
‫lain tanpa semua batasan yang kita miliki di browser?

27
00:01:14,860 --> 00:01:17,580
‫Nah, ternyata kita benar-benar bisa.

28
00:01:17,580 --> 00:01:19,955
‫Dan solusi untuk ini,

29
00:01:19,955 --> 00:01:23,425
‫seperti yang bisa Anda tebak, disebut NodeJS dan

30
00:01:23,425 --> 00:01:25,830
‫Node JS hanyalah JavaScript Runtime.

31
00:01:25,830 --> 00:01:29,252
‫Ini seperti wadah, seperti lingkungan, di mana

32
00:01:29,252 --> 00:01:32,010
‫program yang ditulis dalam

33
00:01:32,010 --> 00:01:37,010
‫JavaScript dapat dieksekusi, tetapi di luar browser apa pun.

34
00:01:37,230 --> 00:01:39,850
‫Baiklah, ini sebenarnya sedikit lebih rumit dari

35
00:01:39,850 --> 00:01:42,908
‫ini, tentu saja, tapi untuk saat ini, ini sudah cukup.

36
00:01:42,908 --> 00:01:45,380
‫Sekarang, siapa yang sebenarnya mengeksekusi

37
00:01:45,380 --> 00:01:47,438
‫kode jika bukan browser?

38
00:01:47,438 --> 00:01:50,070
‫Dan di situlah mesin

39
00:01:50,070 --> 00:01:52,770
‫V8 yang dikembangkan oleh Google berperan.

40
00:01:52,770 --> 00:01:55,420
‫Karena di situlah kode

41
00:01:55,420 --> 00:01:59,800
‫JavaScript akan diurai dan dijalankan di NodeJS, oke?

42
00:01:59,800 --> 00:02:02,819
‫Jadi, saya harap sekarang definisi NodeJS menjadi

43
00:02:02,819 --> 00:02:07,116
‫JavaScript Runtime pada mesin JavaScript V8 menjadi lebih masuk akal

44
00:02:07,116 --> 00:02:10,104
‫dan sekali lagi, ini hanyalah gambaran

45
00:02:10,104 --> 00:02:12,742
‫umum tingkat yang sangat tinggi

46
00:02:12,742 --> 00:02:16,060
‫tentang apa itu Node dan cara kerjanya.

47
00:02:16,060 --> 00:02:18,430
‫Kami akan membahas banyak detail tentang

48
00:02:18,430 --> 00:02:20,926
‫bagaimana Node benar-benar bekerja di belakang

49
00:02:20,926 --> 00:02:23,860
‫layar tepat di bagian berikutnya, tetapi pada titik

50
00:02:23,860 --> 00:02:26,152
‫ini, saya hanya ingin Anda

51
00:02:26,152 --> 00:02:28,810
‫mendapatkan gambaran singkat sehingga Anda dapat mulai

52
00:02:28,810 --> 00:02:32,203
‫mempelajari dasar-dasar NodeJS dalam praktik di seluruh bagian ini.

53
00:02:34,000 --> 00:02:36,230
‫Bagaimanapun, sekarang kita memiliki JavaScript

54
00:02:36,230 --> 00:02:38,400
‫di luar browser dalam semacam

55
00:02:38,400 --> 00:02:40,704
‫lingkungan yang berdiri sendiri yang hanya

56
00:02:40,704 --> 00:02:44,058
‫NodeJS, kita dapat melakukan lebih banyak hal dengan

57
00:02:44,058 --> 00:02:46,690
‫JavaScript yang sama sekali tidak mungkin sebelumnya

58
00:02:46,690 --> 00:02:48,254
‫seperti mengakses

59
00:02:48,254 --> 00:02:50,515
‫sistem file, atau kemampuan jaringan

60
00:02:50,515 --> 00:02:53,054
‫yang lebih baik tidak mungkin dilakukan

61
00:02:53,054 --> 00:02:55,630
‫dengan NodeJS dan semua faktor ini

62
00:02:55,630 --> 00:02:59,750
‫bersama-sama memberi kami kondisi sempurna untuk menggunakan NodeJS sebagai server

63
00:02:59,750 --> 00:03:02,327
‫web yang berarti bahwa sekarang kami

64
00:03:02,327 --> 00:03:05,550
‫akhirnya dapat menggunakan JavaScript di sisi server pengembangan

65
00:03:05,550 --> 00:03:08,020
‫web untuk membangun aplikasi jaringan yang

66
00:03:08,020 --> 00:03:10,810
‫cepat dan sangat skalabel untuk mendukung semua

67
00:03:10,810 --> 00:03:13,540
‫back-end untuk situs web atau aplikasi web.

68
00:03:13,540 --> 00:03:15,990
‫Dan ini benar-benar fantastis

69
00:03:15,990 --> 00:03:19,030
‫dan mengubah permainan untuk pengembangan web.

70
00:03:19,030 --> 00:03:22,103
‫Jadi, sekarang mari kita lihat beberapa kasus penggunaan

71
00:03:22,103 --> 00:03:25,703
‫untuk Node dan mengapa ini sangat cocok untuk pengembangan back-end.

72
00:03:27,010 --> 00:03:29,430
‫Dan hal pertama yang perlu

73
00:03:29,430 --> 00:03:31,060
‫kita bicarakan adalah

74
00:03:31,060 --> 00:03:34,603
‫fakta bahwa aplikasi Node sangat cepat dan skalabel

75
00:03:34,603 --> 00:03:36,705
‫karena NodeJS adalah utas

76
00:03:36,705 --> 00:03:40,110
‫tunggal berdasarkan model I/O non-pemblokiran yang digerakkan

77
00:03:40,110 --> 00:03:43,932
‫oleh peristiwa yang membuat NodeJS sangat ringan dan efisien.

78
00:03:43,932 --> 00:03:47,140
‫Nah, itu, tentu saja, terdengar sangat rumit, saya

79
00:03:47,140 --> 00:03:50,040
‫tahu, tetapi sekali lagi kita akan berbicara

80
00:03:50,040 --> 00:03:52,146
‫tentang apa artinya semua ini

81
00:03:52,146 --> 00:03:54,110
‫sedikit terlambat dalam kursus.

82
00:03:54,110 --> 00:03:56,250
‫Namun, untuk saat ini,

83
00:03:56,250 --> 00:03:59,052
‫perlu diingat bahwa Node sempurna untuk membangun

84
00:03:59,052 --> 00:04:02,910
‫aplikasi web intensif data yang super cepat dan skalabel.

85
00:04:02,910 --> 00:04:06,280
‫Dan itu membuat NodeJS sangat cocok untuk membangun

86
00:04:06,280 --> 00:04:08,580
‫semua jenis aplikasi yang

87
00:04:08,580 --> 00:04:11,830
‫berbeda seperti membangun API dengan database di belakangnya

88
00:04:11,830 --> 00:04:16,830
‫dan lebih disukai database NoSQL non-relasional seperti MongoDB dan ini sebenarnya yang

89
00:04:17,090 --> 00:04:20,250
‫akan kita lakukan nanti dalam kursus ini

90
00:04:20,250 --> 00:04:24,568
‫saat kita menyelam lebih dalam dan lebih dalam ke NodeJS.

91
00:04:24,568 --> 00:04:27,350
‫Namun, tentu saja ada semua jenis aplikasi

92
00:04:27,350 --> 00:04:30,007
‫lain yang dapat kita buat seperti aplikasi

93
00:04:30,007 --> 00:04:33,739
‫streaming data seperti YouTube atau Netflix, aplikasi obrolan waktu

94
00:04:33,739 --> 00:04:36,600
‫nyata, atau bahkan aplikasi web sisi server

95
00:04:36,600 --> 00:04:39,430
‫di mana seluruh konten dibuat langsung di

96
00:04:39,430 --> 00:04:42,055
‫komputer. server, jadi seperti yang

97
00:04:42,055 --> 00:04:44,684
‫Anda lihat, kemungkinannya benar-benar tidak terbatas.

98
00:04:44,684 --> 00:04:47,650
‫Namun, sebenarnya ada juga jenis aplikasi yang tidak

99
00:04:47,650 --> 00:04:49,990
‫boleh kita buat dengan Node.js.

100
00:04:49,990 --> 00:04:51,890
‫Dan inilah saat

101
00:04:51,890 --> 00:04:54,380
‫aplikasi kita membutuhkan pemrosesan sisi

102
00:04:54,380 --> 00:04:57,750
‫server yang sangat berat seperti manipulasi gambar,

103
00:04:57,750 --> 00:05:01,270
‫konversi video, kompresi file, atau semacamnya, oke.

104
00:05:01,270 --> 00:05:04,930
‫Dan Anda akan belajar mengapa begitu kita menyelami

105
00:05:04,930 --> 00:05:07,410
‫lebih dalam cara kerja Node.

106
00:05:07,410 --> 00:05:09,500
‫Jadi, dalam hal ini, lebih

107
00:05:09,500 --> 00:05:14,010
‫baik kita menggunakan sesuatu seperti Ruby on Rails, PHP, atau Python.

108
00:05:14,010 --> 00:05:16,460
‫Karena NodeJS tidak dikembangkan untuk

109
00:05:16,460 --> 00:05:19,910
‫kasus penggunaan ini dan meskipun ada solusi untuk

110
00:05:19,910 --> 00:05:22,480
‫mengatasinya, kita harus selalu menggunakan alat

111
00:05:22,480 --> 00:05:25,157
‫yang tepat untuk tugas yang ada.

112
00:05:25,157 --> 00:05:28,361
‫Oke, itulah jenis-jenis aplikasi yang bisa

113
00:05:28,361 --> 00:05:31,977
‫dan tidak bisa kita bangun menggunakan NodeJS.

114
00:05:31,977 --> 00:05:34,780
‫Dan jika Anda memilih untuk menggunakan

115
00:05:34,780 --> 00:05:37,540
‫Node, maka Anda berada

116
00:05:37,540 --> 00:05:41,206
‫di perusahaan yang baik karena banyak perusahaan top

117
00:05:41,206 --> 00:05:45,140
‫seperti Netflix, Uber, PayPal, Ebay dan banyak lagi sudah

118
00:05:45,140 --> 00:05:48,910
‫mulai menggunakan NodeJS yang benar-benar membuktikan bahwa teknologinya

119
00:05:48,910 --> 00:05:52,850
‫cukup stabil saat ini untuk akan digunakan dalam produksi.

120
00:05:52,850 --> 00:05:56,125
‫Sekarang, tentu saja ada lebih banyak alasan untuk menggunakan

121
00:05:56,125 --> 00:05:59,040
‫Node, dan yang terbesar mungkin adalah bahwa

122
00:05:59,040 --> 00:06:01,650
‫menggunakan bahasa yang sama di seluruh tumpukan

123
00:06:01,650 --> 00:06:03,758
‫Anda baik di front-end

124
00:06:03,758 --> 00:06:07,420
‫dan back-end jauh lebih mudah bagi Anda atau tim Anda.

125
00:06:07,420 --> 00:06:09,010
‫Pertama, Anda tidak

126
00:06:09,010 --> 00:06:11,070
‫perlu mempelajari bahasa pemrograman

127
00:06:11,070 --> 00:06:13,580
‫baru untuk membangun back-end Anda dan,

128
00:06:13,580 --> 00:06:15,824
‫juga, Anda tidak harus terus bolak-balik

129
00:06:15,824 --> 00:06:18,450
‫antar bahasa yang akan membuat keseluruhan proses

130
00:06:18,450 --> 00:06:20,533
‫pembangunan lebih cepat dan efisien.

131
00:06:20,533 --> 00:06:23,107
‫Percayalah, sungguh luar biasa

132
00:06:23,107 --> 00:06:26,230
‫bisa menggunakan JavaScript untuk membangun seluruh

133
00:06:26,230 --> 00:06:29,215
‫aplikasi Anda dari awal hingga akhir.

134
00:06:29,215 --> 00:06:31,727
‫Ini benar-benar fantastis.

135
00:06:31,727 --> 00:06:34,150
‫Dan alasan bagus lainnya

136
00:06:34,150 --> 00:06:38,502
‫untuk menggunakan Node adalah karena ada perpustakaan besar paket atau modul

137
00:06:38,502 --> 00:06:41,450
‫sumber terbuka, seperti yang kita sebut juga,

138
00:06:41,450 --> 00:06:43,884
‫tersedia untuk semua orang secara gratis.

139
00:06:43,884 --> 00:06:47,190
‫Ini disebut NPM dan Anda mungkin pernah mendengarnya

140
00:06:47,190 --> 00:06:48,976
‫atau bahkan sudah menggunakannya.

141
00:06:48,976 --> 00:06:51,170
‫Dan, tentu saja, kita juga akan

142
00:06:51,170 --> 00:06:53,563
‫mulai menggunakan paket tepat di bagian ini.

143
00:06:54,430 --> 00:06:56,920
‫Dan, akhirnya, senang juga

144
00:06:56,920 --> 00:06:59,420
‫mengetahui bahwa ada komunitas besar pengembang

145
00:06:59,420 --> 00:07:02,020
‫Node yang aktif di luar sana

146
00:07:02,020 --> 00:07:05,650
‫yang terus meningkatkan NodeJS dan membantu pemula seperti Anda.

147
00:07:05,650 --> 00:07:08,670
‫Dan, sehingga Anda benar-benar dapat mengandalkan

148
00:07:08,670 --> 00:07:11,929
‫teknologi untuk semua proyek Anda di tahun-tahun mendatang.

149
00:07:11,929 --> 00:07:15,343
‫Oke, jadi itu adalah intro

150
00:07:15,343 --> 00:07:20,040
‫dan gambaran singkat tentang NodeJS dan beberapa kasus penggunaannya.

151
00:07:20,040 --> 00:07:21,920
‫Jadi, untuk sisa bagian

152
00:07:21,920 --> 00:07:23,810
‫ini, sekarang kita akan menggunakan

153
00:07:23,810 --> 00:07:25,950
‫Node untuk membuat server web

154
00:07:25,950 --> 00:07:28,750
‫yang sangat sederhana dan membangun API yang

155
00:07:28,750 --> 00:07:30,160
‫sangat sederhana, sehingga

156
00:07:30,160 --> 00:07:32,763
‫Anda dapat mengenal prinsip-prinsip dasar pengembangan Node.

