‫Narator: Sekarang sebelum masuk ke beberapa kode NodeJS, mari
‫kita lakukan tinjauan tingkat tinggi
‫tentang apa sebenarnya NodeJS itu, untuk
‫apa kita menggunakannya dan mengapa kita menggunakan
‫Node daripada teknologi lain.
‫Jadi, definisi resminya adalah bahwa
‫NodeJS adalah Runtime
‫JavaScript yang dibangun di atas mesin JavaScript V8 open-source Google.
‫Sekarang, apa sebenarnya artinya?
‫Baiklah, mari kita mulai dengan mencoba
‫memahami apa itu
‫JavaScript Runtime dan mesin V8 sebenarnya.
‫Jadi, Anda mungkin pernah menggunakan
‫JavaScript sebelumnya dan mungkin selalu ada di dalam browser, bukan?
‫Karena browser mana pun secara native memahami
‫HTML, CSS, dan JavaScript dan tidak masalah jika Anda
‫menulis vanilla JavaScript atau beberapa
‫kerangka kerja JavaScript seperti React atau
‫kode Angular, itu
‫semua hanya JavaScript yang dieksekusi langsung di browser.
‫Jadi, dalam hal ini,
‫browser tersebut adalah JavaScript Runtime.
‫Tapi, bagaimana jika kita bisa mengeluarkan
‫JavaScript dari browser dan
‫hanya menjalankan atau kode JavaScript di tempat
‫lain tanpa semua batasan yang kita miliki di browser?
‫Nah, ternyata kita benar-benar bisa.
‫Dan solusi untuk ini,
‫seperti yang bisa Anda tebak, disebut NodeJS dan
‫Node JS hanyalah JavaScript Runtime.
‫Ini seperti wadah, seperti lingkungan, di mana
‫program yang ditulis dalam
‫JavaScript dapat dieksekusi, tetapi di luar browser apa pun.
‫Baiklah, ini sebenarnya sedikit lebih rumit dari
‫ini, tentu saja, tapi untuk saat ini, ini sudah cukup.
‫Sekarang, siapa yang sebenarnya mengeksekusi
‫kode jika bukan browser?
‫Dan di situlah mesin
‫V8 yang dikembangkan oleh Google berperan.
‫Karena di situlah kode
‫JavaScript akan diurai dan dijalankan di NodeJS, oke?
‫Jadi, saya harap sekarang definisi NodeJS menjadi
‫JavaScript Runtime pada mesin JavaScript V8 menjadi lebih masuk akal
‫dan sekali lagi, ini hanyalah gambaran
‫umum tingkat yang sangat tinggi
‫tentang apa itu Node dan cara kerjanya.
‫Kami akan membahas banyak detail tentang
‫bagaimana Node benar-benar bekerja di belakang
‫layar tepat di bagian berikutnya, tetapi pada titik
‫ini, saya hanya ingin Anda
‫mendapatkan gambaran singkat sehingga Anda dapat mulai
‫mempelajari dasar-dasar NodeJS dalam praktik di seluruh bagian ini.
‫Bagaimanapun, sekarang kita memiliki JavaScript
‫di luar browser dalam semacam
‫lingkungan yang berdiri sendiri yang hanya
‫NodeJS, kita dapat melakukan lebih banyak hal dengan
‫JavaScript yang sama sekali tidak mungkin sebelumnya
‫seperti mengakses
‫sistem file, atau kemampuan jaringan
‫yang lebih baik tidak mungkin dilakukan
‫dengan NodeJS dan semua faktor ini
‫bersama-sama memberi kami kondisi sempurna untuk menggunakan NodeJS sebagai server
‫web yang berarti bahwa sekarang kami
‫akhirnya dapat menggunakan JavaScript di sisi server pengembangan
‫web untuk membangun aplikasi jaringan yang
‫cepat dan sangat skalabel untuk mendukung semua
‫back-end untuk situs web atau aplikasi web.
‫Dan ini benar-benar fantastis
‫dan mengubah permainan untuk pengembangan web.
‫Jadi, sekarang mari kita lihat beberapa kasus penggunaan
‫untuk Node dan mengapa ini sangat cocok untuk pengembangan back-end.
‫Dan hal pertama yang perlu
‫kita bicarakan adalah
‫fakta bahwa aplikasi Node sangat cepat dan skalabel
‫karena NodeJS adalah utas
‫tunggal berdasarkan model I/O non-pemblokiran yang digerakkan
‫oleh peristiwa yang membuat NodeJS sangat ringan dan efisien.
‫Nah, itu, tentu saja, terdengar sangat rumit, saya
‫tahu, tetapi sekali lagi kita akan berbicara
‫tentang apa artinya semua ini
‫sedikit terlambat dalam kursus.
‫Namun, untuk saat ini,
‫perlu diingat bahwa Node sempurna untuk membangun
‫aplikasi web intensif data yang super cepat dan skalabel.
‫Dan itu membuat NodeJS sangat cocok untuk membangun
‫semua jenis aplikasi yang
‫berbeda seperti membangun API dengan database di belakangnya
‫dan lebih disukai database NoSQL non-relasional seperti MongoDB dan ini sebenarnya yang
‫akan kita lakukan nanti dalam kursus ini
‫saat kita menyelam lebih dalam dan lebih dalam ke NodeJS.
‫Namun, tentu saja ada semua jenis aplikasi
‫lain yang dapat kita buat seperti aplikasi
‫streaming data seperti YouTube atau Netflix, aplikasi obrolan waktu
‫nyata, atau bahkan aplikasi web sisi server
‫di mana seluruh konten dibuat langsung di
‫komputer. server, jadi seperti yang
‫Anda lihat, kemungkinannya benar-benar tidak terbatas.
‫Namun, sebenarnya ada juga jenis aplikasi yang tidak
‫boleh kita buat dengan Node.js.
‫Dan inilah saat
‫aplikasi kita membutuhkan pemrosesan sisi
‫server yang sangat berat seperti manipulasi gambar,
‫konversi video, kompresi file, atau semacamnya, oke.
‫Dan Anda akan belajar mengapa begitu kita menyelami
‫lebih dalam cara kerja Node.
‫Jadi, dalam hal ini, lebih
‫baik kita menggunakan sesuatu seperti Ruby on Rails, PHP, atau Python.
‫Karena NodeJS tidak dikembangkan untuk
‫kasus penggunaan ini dan meskipun ada solusi untuk
‫mengatasinya, kita harus selalu menggunakan alat
‫yang tepat untuk tugas yang ada.
‫Oke, itulah jenis-jenis aplikasi yang bisa
‫dan tidak bisa kita bangun menggunakan NodeJS.
‫Dan jika Anda memilih untuk menggunakan
‫Node, maka Anda berada
‫di perusahaan yang baik karena banyak perusahaan top
‫seperti Netflix, Uber, PayPal, Ebay dan banyak lagi sudah
‫mulai menggunakan NodeJS yang benar-benar membuktikan bahwa teknologinya
‫cukup stabil saat ini untuk akan digunakan dalam produksi.
‫Sekarang, tentu saja ada lebih banyak alasan untuk menggunakan
‫Node, dan yang terbesar mungkin adalah bahwa
‫menggunakan bahasa yang sama di seluruh tumpukan
‫Anda baik di front-end
‫dan back-end jauh lebih mudah bagi Anda atau tim Anda.
‫Pertama, Anda tidak
‫perlu mempelajari bahasa pemrograman
‫baru untuk membangun back-end Anda dan,
‫juga, Anda tidak harus terus bolak-balik
‫antar bahasa yang akan membuat keseluruhan proses
‫pembangunan lebih cepat dan efisien.
‫Percayalah, sungguh luar biasa
‫bisa menggunakan JavaScript untuk membangun seluruh
‫aplikasi Anda dari awal hingga akhir.
‫Ini benar-benar fantastis.
‫Dan alasan bagus lainnya
‫untuk menggunakan Node adalah karena ada perpustakaan besar paket atau modul
‫sumber terbuka, seperti yang kita sebut juga,
‫tersedia untuk semua orang secara gratis.
‫Ini disebut NPM dan Anda mungkin pernah mendengarnya
‫atau bahkan sudah menggunakannya.
‫Dan, tentu saja, kita juga akan
‫mulai menggunakan paket tepat di bagian ini.
‫Dan, akhirnya, senang juga
‫mengetahui bahwa ada komunitas besar pengembang
‫Node yang aktif di luar sana
‫yang terus meningkatkan NodeJS dan membantu pemula seperti Anda.
‫Dan, sehingga Anda benar-benar dapat mengandalkan
‫teknologi untuk semua proyek Anda di tahun-tahun mendatang.
‫Oke, jadi itu adalah intro
‫dan gambaran singkat tentang NodeJS dan beberapa kasus penggunaannya.
‫Jadi, untuk sisa bagian
‫ini, sekarang kita akan menggunakan
‫Node untuk membuat server web
‫yang sangat sederhana dan membangun API yang
‫sangat sederhana, sehingga
‫Anda dapat mengenal prinsip-prinsip dasar pengembangan Node.