Topik apa yang akan dibahas dalam kursus ini?
Pengenalan Node.js
Kata Pembuka dan Ikhtisar Kursus:
Kata pembuka.
Apa yang akan dibahas dalam kursus dan pengenalan ke Node.js.
Penekanan pada bekerja dengan repositori kode.
Menulis Server Dasar:
Membangun server pertama yang sederhana.
Penjelasan tentang apa itu server dan penanganan permintaan HTTP serta respons.
Memahami kode status dan mengembalikan JSON vs HTML.
Penanganan Permintaan Dasar:
Pengenalan ke endpoint server API.
Mendefinisikan rute berbeda untuk menangani permintaan.
Penanganan Permintaan Server Lanjutan:
Memahami struktur permintaan HTTP.
Penjelasan kode status dan perilaku server.
Persiapan untuk Menulis Restful API:
Pengenalan ke Restful APIs.
Memahami QueryString dan parameter permintaan.
Bekerja dengan File System
Membaca File di Node.js:
Bekerja dengan modul file system (fs).
Menggunakan fungsi readFile secara asinkron.
Menggunakan fungsi readFileSync secara sinkron.
Pengenalan ke modul fs dan path.
Membuat server dengan beberapa endpoint.
Menyimpan file teks dan JSON.
Menyimpan File di Node.js:
Menggunakan fungsi writeFile secara asinkron untuk menulis file.
Menggunakan fungsi writeFileSync secara sinkron untuk menulis file.
Menangani kesalahan di server.
Menghapus File di Node.js:
Menghapus file menggunakan unlinkSync.
Menggunakan direktori dalam file system.
Fungsi untuk memeriksa apakah file ada dalam file system.
Menangani Permintaan POST:
Arsitektur server dasar.
Menangani permintaan post.
Menggunakan Postman untuk membuat permintaan get dan post.
Menggunakan Validasi di Server:
Menulis server yang bermakna.
Menggunakan validasi dan kesalahan di server.
Membuat server dengan beberapa permintaan (membaca, menulis, menghapus file dari sistem operasi).
Menulis Server dengan Express
Pengenalan Menggunakan Express:
Latar belakang tentang perpustakaan express.
Menggunakan perpustakaan express untuk menulis server.
Menggunakan fungsi send, sendStatus, dan json.
Menangani permintaan get.
Menangani Querystring dan Params:
Menggunakan req.query dengan express.
Menggunakan req.params dengan express.
Menulis server data admin menggunakan file system.
Menangani Permintaan POST di Server:
Menangani permintaan post dengan express.
Penjelasan penggunaan middleware.
Menambahkan validasi nomor di server.
Arsitektur Server:
Arsitektur server dalam express.
Menggunakan express.Router untuk menangani routing server.
Menambahkan dan membangun controller di server.
Menambahkan dan membangun layanan di server.
Menggunakan Middlewares di Express:
Memahami middlewares dalam express.
Menanamkan middlewares dengan tepat dalam controller.
Menulis validasi menggunakan middlewares.
MongoDB
Pengenalan MongoDB:
Pengenalan ke basis data.
Perbedaan antara basis data relasional dan non-relasional.
Pengenalan ke MongoDB dan kasus penggunaan umum.
Menghubungkan server express ke MongoDB.
Pengenalan penggunaan GUI mongo.
Menyimpan dan Mengambil Catatan:
Mendefinisikan skema dan mengulas tipe-tipe umum.
Membuat catatan di MongoDB dengan fungsi save.
Mencari catatan di MongoDB menggunakan fungsi find.
Menggunakan filter umum seperti gte$, $gt, $lte, $lt, dan eq$.
Query Lanjutan di MongoDB:
Memahami pengenal ObjectId.
Penjelasan fungsi toJSON.
Menggunakan query findById di MongoDB.
Memperbarui catatan menggunakan findByIdAndUpdate.
Menggunakan operator inc$.
Menggunakan fungsi count di MongoDB.
Mendefinisikan nilai default untuk skema di MongoDB.
Query Penghapusan dan Operator Dasar:
Menghapus catatan menggunakan findByIdAndDelete.
Menggunakan operator push$.
Menangani permintaan kegagalan server (500).
Agregasi Lanjutan di MongoDB:
Membangun pipeline lanjutan dan menggunakan agregasi.
Menyortir data dalam query MongoDB.
Menggunakan operator umum seperti sum, $max, $min, dan avg$.
Hubungan Lanjutan Antara Koleksi di MongoDB:
Penjelasan tentang menghubungkan koleksi menggunakan ref.
Menggunakan aksi populate di MongoDB.
Penjelasan mendalam tentang membuat id di MongoDB.
Keamanan Server dengan Otentikasi
Pengenalan JWT:
Latar belakang tentang keamanan server.
Pengenalan ke paket jsonwebtoken.
Membuat token pertama.
Menggunakan fungsi verify untuk memeriksa validitas token.
Menulis API yang Aman:
Menambahkan lapisan keamanan ke server.
Membangun Middleware untuk keamanan server.
Menerapkan keamanan dengan JWT di server yang kita tulis.
Menggunakan Perpustakaan Crypto:
Latar belakang tentang menggunakan enkripsi di server.
Penjelasan tentang fungsi hash untuk hashing kata sandi.
Menambahkan garam ke skema untuk keamanan yang ditingkatkan.
Penjelasan tentang serangan yang mungkin terjadi.
Komunikasi Antara Server:
Menggunakan perpustakaan axios untuk komunikasi server.
Mengambil data dari server lain melalui server yang kita tulis.
Menyimpan data di MongoDB untuk data yang diambil dari server eksternal.
Kata Penutup:
Kata penutup untuk merangkum kursus.